1
2
3
4
5
6
7
8 package org.apache.maven.model;
9
10
11
12
13
14
15 @SuppressWarnings( "all" )
16 public class PluginContainer
17 implements java.io.Serializable, java.lang.Cloneable, org.apache.maven.model.InputLocationTracker
18 {
19
20
21
22
23
24
25
26
27 private java.util.List<Plugin> plugins;
28
29
30
31
32 private java.util.Map<Object, InputLocation> locations;
33
34
35
36
37
38
39
40
41
42
43
44 public void addPlugin( Plugin plugin )
45 {
46 getPlugins().add( plugin );
47 }
48
49
50
51
52
53
54 public PluginContainer clone()
55 {
56 try
57 {
58 PluginContainer copy = (PluginContainer) super.clone();
59
60 if ( this.plugins != null )
61 {
62 copy.plugins = new java.util.ArrayList<Plugin>();
63 for ( Plugin item : this.plugins )
64 {
65 copy.plugins.add( ( (Plugin) item).clone() );
66 }
67 }
68
69 if ( copy.locations != null )
70 {
71 copy.locations = new java.util.LinkedHashMap( copy.locations );
72 }
73
74 return copy;
75 }
76 catch ( java.lang.Exception ex )
77 {
78 throw (java.lang.RuntimeException) new java.lang.UnsupportedOperationException( getClass().getName()
79 + " does not support clone()" ).initCause( ex );
80 }
81 }
82
83
84
85
86
87
88
89 public InputLocation getLocation( Object key )
90 {
91 return ( locations != null ) ? locations.get( key ) : null;
92 }
93
94
95
96
97
98
99 public java.util.List<Plugin> getPlugins()
100 {
101 if ( this.plugins == null )
102 {
103 this.plugins = new java.util.ArrayList<Plugin>();
104 }
105
106 return this.plugins;
107 }
108
109
110
111
112
113
114 public void removePlugin( Plugin plugin )
115 {
116 getPlugins().remove( plugin );
117 }
118
119
120
121
122
123
124
125 public void setLocation( Object key, InputLocation location )
126 {
127 if ( location != null )
128 {
129 if ( this.locations == null )
130 {
131 this.locations = new java.util.LinkedHashMap<Object, InputLocation>();
132 }
133 this.locations.put( key, location );
134 }
135 }
136
137
138
139
140
141
142 public void setPlugins( java.util.List<Plugin> plugins )
143 {
144 this.plugins = plugins;
145 }
146
147
148
149 java.util.Map<String, Plugin> pluginMap;
150
151
152
153
154 public synchronized void flushPluginMap()
155 {
156 this.pluginMap = null;
157 }
158
159
160
161
162
163 public synchronized java.util.Map<String, Plugin> getPluginsAsMap()
164 {
165 if ( pluginMap == null )
166 {
167 pluginMap = new java.util.LinkedHashMap<String, Plugin>();
168 if ( plugins != null )
169 {
170 for ( java.util.Iterator<Plugin> it = plugins.iterator(); it.hasNext(); )
171 {
172 Plugin plugin = (Plugin) it.next();
173 pluginMap.put( plugin.getKey(), plugin );
174 }
175 }
176 }
177
178 return pluginMap;
179 }
180
181
182 }