1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.internal.impl;
20
21 import java.util.List;
22 import java.util.Map;
23 import javax.inject.Inject;
24 import javax.inject.Named;
25 import javax.inject.Singleton;
26 import org.apache.maven.api.services.Lookup;
27 import org.apache.maven.api.services.LookupException;
28 import org.codehaus.plexus.PlexusContainer;
29 import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
30
31 @Named
32 @Singleton
33 public class DefaultLookup implements Lookup {
34
35 private final PlexusContainer container;
36
37 @Inject
38 public DefaultLookup(PlexusContainer container) {
39 this.container = container;
40 }
41
42 @Override
43 public <T> T lookup(Class<T> type) {
44 try {
45 return container.lookup(type);
46 } catch (ComponentLookupException e) {
47 throw new LookupException(e);
48 }
49 }
50
51 @Override
52 public <T> T lookup(Class<T> type, String name) {
53 try {
54 return container.lookup(type, name);
55 } catch (ComponentLookupException e) {
56 throw new LookupException(e);
57 }
58 }
59
60 @Override
61 public <T> List<T> lookupList(Class<T> type) {
62 try {
63 return container.lookupList(type);
64 } catch (ComponentLookupException e) {
65 throw new LookupException(e);
66 }
67 }
68
69 @Override
70 public <T> Map<String, T> lookupMap(Class<T> type) {
71 try {
72 return container.lookupMap(type);
73 } catch (ComponentLookupException e) {
74 throw new LookupException(e);
75 }
76 }
77 }