View Javadoc
1   /*
2    Licensed to the Apache Software Foundation (ASF) under one
3    or more contributor license agreements.  See the NOTICE file
4    distributed with this work for additional information
5    regarding copyright ownership.  The ASF licenses this file
6    to you under the Apache License, Version 2.0 (the
7    "License"); you may not use this file except in compliance
8    with the License.  You may obtain a copy of the License at
9    
10       http://www.apache.org/licenses/LICENSE-2.0
11   
12   Unless required by applicable law or agreed to in writing,
13   software distributed under the License is distributed on an
14   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15   KIND, either express or implied.  See the License for the
16   specific language governing permissions and limitations
17   under the License.
18   =================== DO NOT EDIT THIS FILE ====================
19   Generated by Modello 2.5.1,
20   any modifications will be overwritten.
21   ==============================================================
22   */
23  
24  package org.apache.maven.plugins.assembly.model;
25  
26  /**
27   * 
28   *         Contains configuration options for including the binary
29   * files of a
30   *         project module in an assembly.
31   *       
32   * 
33   * @version $Revision$ $Date$
34   */
35  @SuppressWarnings( "all" )
36  public class ModuleBinaries
37      implements java.io.Serializable
38  {
39  
40        //--------------------------/
41       //- Class/Member Variables -/
42      //--------------------------/
43  
44      /**
45       * 
46       *             Sets the output directory relative to the root
47       *             of the root directory of the assembly. For
48       * example,
49       *             "log" will put the specified files in the log
50       * directory,
51       *             directly beneath the root of the archive.
52       *           
53       */
54      private String outputDirectory;
55  
56      /**
57       * Field includes.
58       */
59      private java.util.List<String> includes;
60  
61      /**
62       * Field excludes.
63       */
64      private java.util.List<String> excludes;
65  
66      /**
67       * 
68       *             
69       *             Similar to a UNIX permission, sets the file mode
70       * of the files included.
71       *             THIS IS AN OCTAL VALUE.
72       *             Format: (User)(Group)(Other) where each
73       * component is a sum of Read = 4,
74       *             Write = 2, and Execute = 1.  For example, the
75       * value 0644
76       *             translates to User read-write, Group and Other
77       * read-only. The default value is 0644.
78       *             <a
79       * href="http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html">(more
80       * on unix-style permissions)</a>
81       *             
82       *           
83       */
84      private String fileMode;
85  
86      /**
87       * 
88       *             
89       *             Similar to a UNIX permission, sets the directory
90       * mode of the directories
91       *             included.
92       *             THIS IS AN OCTAL VALUE.
93       *             Format: (User)(Group)(Other) where each
94       * component is a sum of
95       *             Read = 4, Write = 2, and Execute = 1.  For
96       * example, the value
97       *             0755 translates to User read-write, Group and
98       * Other read-only. The default value is 0755.
99       *             <a
100      * href="http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html">(more
101      * on unix-style permissions)</a>
102      *             
103      *           
104      */
105     private String directoryMode;
106 
107     /**
108      * 
109      *           When specified, the attachmentClassifier will
110      * cause the assembler to look at artifacts
111      *           attached to the module instead of the main project
112      * artifact. If it can find an attached
113      *           artifact matching the specified classifier, it
114      * will use it; otherwise, it will throw an
115      *           exception. (Since 2.2)
116      *           .
117      */
118     private String attachmentClassifier;
119 
120     /**
121      * 
122      *           If set to true, the plugin will include the direct
123      * and transitive dependencies of
124      *           of the project modules included here.  Otherwise,
125      * it will only include the module
126      *           packages only. Default value is true.
127      *           
128      */
129     private boolean includeDependencies = true;
130 
131     /**
132      * Field dependencySets.
133      */
134     private java.util.List<DependencySet> dependencySets;
135 
136     /**
137      * 
138      *             If set to true, this property will unpack all
139      * module packages
140      *             into the specified output directory. When set to
141      * false
142      *             module packages will be included as archives
143      * (jars).
144      *             Default value is true.
145      *           
146      */
147     private boolean unpack = true;
148 
149     /**
150      * 
151      *           Allows the specification of includes and excludes,
152      * along with filtering options, for items
153      *           unpacked from a module artifact. (Since 2.2)
154      *           .
155      */
156     private UnpackOptions unpackOptions;
157 
158     /**
159      * 
160      *             Sets the mapping pattern for all NON-UNPACKED
161      * dependencies included
162      *             in this assembly.
163      *             Default is
164      * ${module.artifactId}-${module.version}${dashClassifier?}.${module.extension}.
165      *             (Since 2.2-beta-2; 2.2-beta-1 uses
166      * ${artifactId}-${version}${dashClassifier?}.${extension})
167      * NOTE: If the
168      *             dependencySet specifies unpack == true,
169      * outputFileNameMapping WILL NOT BE USED; in these cases, use
170      * outputDirectory.
171      *             See the plugin FAQ for more details about
172      * entries usable in the outputFileNameMapping parameter.
173      *           
174      */
175     private String outputFileNameMapping = "${module.artifactId}-${module.version}${dashClassifier?}.${module.extension}";
176 
177 
178       //-----------/
179      //- Methods -/
180     //-----------/
181 
182     /**
183      * Method addDependencySet.
184      * 
185      * @param dependencySet a dependencySet object.
186      */
187     public void addDependencySet( DependencySet dependencySet )
188     {
189         getDependencySets().add( dependencySet );
190     } //-- void addDependencySet( DependencySet )
191 
192     /**
193      * Method addExclude.
194      * 
195      * @param string a string object.
196      */
197     public void addExclude( String string )
198     {
199         getExcludes().add( string );
200     } //-- void addExclude( String )
201 
202     /**
203      * Method addInclude.
204      * 
205      * @param string a string object.
206      */
207     public void addInclude( String string )
208     {
209         getIncludes().add( string );
210     } //-- void addInclude( String )
211 
212     /**
213      * Get when specified, the attachmentClassifier will cause the
214      * assembler to look at artifacts
215      *           attached to the module instead of the main project
216      * artifact. If it can find an attached
217      *           artifact matching the specified classifier, it
218      * will use it; otherwise, it will throw an
219      *           exception. (Since 2.2).
220      * 
221      * @return String
222      */
223     public String getAttachmentClassifier()
224     {
225         return this.attachmentClassifier;
226     } //-- String getAttachmentClassifier()
227 
228     /**
229      * Method getDependencySets.
230      * 
231      * @return List
232      */
233     public java.util.List<DependencySet> getDependencySets()
234     {
235         if ( this.dependencySets == null )
236         {
237             this.dependencySets = new java.util.ArrayList<DependencySet>();
238         }
239 
240         return this.dependencySets;
241     } //-- java.util.List<DependencySet> getDependencySets()
242 
243     /**
244      * Get similar to a UNIX permission, sets the directory mode of
245      * the directories
246      *             included.
247      *             THIS IS AN OCTAL VALUE.
248      *             Format: (User)(Group)(Other) where each
249      * component is a sum of
250      *             Read = 4, Write = 2, and Execute = 1.  For
251      * example, the value
252      *             0755 translates to User read-write, Group and
253      * Other read-only. The default value is 0755.
254      *             <a
255      * href="http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html">(more
256      * on unix-style permissions)</a>
257      * 
258      * @return String
259      */
260     public String getDirectoryMode()
261     {
262         return this.directoryMode;
263     } //-- String getDirectoryMode()
264 
265     /**
266      * Method getExcludes.
267      * 
268      * @return List
269      */
270     public java.util.List<String> getExcludes()
271     {
272         if ( this.excludes == null )
273         {
274             this.excludes = new java.util.ArrayList<String>();
275         }
276 
277         return this.excludes;
278     } //-- java.util.List<String> getExcludes()
279 
280     /**
281      * Get similar to a UNIX permission, sets the file mode of the
282      * files included.
283      *             THIS IS AN OCTAL VALUE.
284      *             Format: (User)(Group)(Other) where each
285      * component is a sum of Read = 4,
286      *             Write = 2, and Execute = 1.  For example, the
287      * value 0644
288      *             translates to User read-write, Group and Other
289      * read-only. The default value is 0644.
290      *             <a
291      * href="http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html">(more
292      * on unix-style permissions)</a>
293      * 
294      * @return String
295      */
296     public String getFileMode()
297     {
298         return this.fileMode;
299     } //-- String getFileMode()
300 
301     /**
302      * Method getIncludes.
303      * 
304      * @return List
305      */
306     public java.util.List<String> getIncludes()
307     {
308         if ( this.includes == null )
309         {
310             this.includes = new java.util.ArrayList<String>();
311         }
312 
313         return this.includes;
314     } //-- java.util.List<String> getIncludes()
315 
316     /**
317      * Get sets the output directory relative to the root
318      *             of the root directory of the assembly. For
319      * example,
320      *             "log" will put the specified files in the log
321      * directory,
322      *             directly beneath the root of the archive.
323      * 
324      * @return String
325      */
326     public String getOutputDirectory()
327     {
328         return this.outputDirectory;
329     } //-- String getOutputDirectory()
330 
331     /**
332      * Get sets the mapping pattern for all NON-UNPACKED
333      * dependencies included
334      *             in this assembly.
335      *             Default is
336      * ${module.artifactId}-${module.version}${dashClassifier?}.${module.extension}.
337      *             (Since 2.2-beta-2; 2.2-beta-1 uses
338      * ${artifactId}-${version}${dashClassifier?}.${extension})
339      * NOTE: If the
340      *             dependencySet specifies unpack == true,
341      * outputFileNameMapping WILL NOT BE USED; in these cases, use
342      * outputDirectory.
343      *             See the plugin FAQ for more details about
344      * entries usable in the outputFileNameMapping parameter.
345      * 
346      * @return String
347      */
348     public String getOutputFileNameMapping()
349     {
350         return this.outputFileNameMapping;
351     } //-- String getOutputFileNameMapping()
352 
353     /**
354      * Get allows the specification of includes and excludes, along
355      * with filtering options, for items
356      *           unpacked from a module artifact. (Since 2.2).
357      * 
358      * @return UnpackOptions
359      */
360     public UnpackOptions getUnpackOptions()
361     {
362         return this.unpackOptions;
363     } //-- UnpackOptions getUnpackOptions()
364 
365     /**
366      * Get if set to true, the plugin will include the direct and
367      * transitive dependencies of
368      *           of the project modules included here.  Otherwise,
369      * it will only include the module
370      *           packages only. Default value is true.
371      * 
372      * @return boolean
373      */
374     public boolean isIncludeDependencies()
375     {
376         return this.includeDependencies;
377     } //-- boolean isIncludeDependencies()
378 
379     /**
380      * Get if set to true, this property will unpack all module
381      * packages
382      *             into the specified output directory. When set to
383      * false
384      *             module packages will be included as archives
385      * (jars).
386      *             Default value is true.
387      * 
388      * @return boolean
389      */
390     public boolean isUnpack()
391     {
392         return this.unpack;
393     } //-- boolean isUnpack()
394 
395     /**
396      * Method removeDependencySet.
397      * 
398      * @param dependencySet a dependencySet object.
399      */
400     public void removeDependencySet( DependencySet dependencySet )
401     {
402         getDependencySets().remove( dependencySet );
403     } //-- void removeDependencySet( DependencySet )
404 
405     /**
406      * Method removeExclude.
407      * 
408      * @param string a string object.
409      */
410     public void removeExclude( String string )
411     {
412         getExcludes().remove( string );
413     } //-- void removeExclude( String )
414 
415     /**
416      * Method removeInclude.
417      * 
418      * @param string a string object.
419      */
420     public void removeInclude( String string )
421     {
422         getIncludes().remove( string );
423     } //-- void removeInclude( String )
424 
425     /**
426      * Set when specified, the attachmentClassifier will cause the
427      * assembler to look at artifacts
428      *           attached to the module instead of the main project
429      * artifact. If it can find an attached
430      *           artifact matching the specified classifier, it
431      * will use it; otherwise, it will throw an
432      *           exception. (Since 2.2).
433      * 
434      * @param attachmentClassifier a attachmentClassifier object.
435      */
436     public void setAttachmentClassifier( String attachmentClassifier )
437     {
438         this.attachmentClassifier = attachmentClassifier;
439     } //-- void setAttachmentClassifier( String )
440 
441     /**
442      * Set specifies which dependencies of the module to include in
443      * the assembly. A
444      *             dependencySet is specified by providing one or
445      * more of
446      *             &lt;dependencySet&gt; subelements. (Since 2.2).
447      * 
448      * @param dependencySets a dependencySets object.
449      */
450     public void setDependencySets( java.util.List<DependencySet> dependencySets )
451     {
452         this.dependencySets = dependencySets;
453     } //-- void setDependencySets( java.util.List )
454 
455     /**
456      * Set similar to a UNIX permission, sets the directory mode of
457      * the directories
458      *             included.
459      *             THIS IS AN OCTAL VALUE.
460      *             Format: (User)(Group)(Other) where each
461      * component is a sum of
462      *             Read = 4, Write = 2, and Execute = 1.  For
463      * example, the value
464      *             0755 translates to User read-write, Group and
465      * Other read-only. The default value is 0755.
466      *             <a
467      * href="http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html">(more
468      * on unix-style permissions)</a>
469      * 
470      * @param directoryMode a directoryMode object.
471      */
472     public void setDirectoryMode( String directoryMode )
473     {
474         this.directoryMode = directoryMode;
475     } //-- void setDirectoryMode( String )
476 
477     /**
478      * Set when &lt;exclude&gt; subelements are present, they
479      * define a set of
480      *             dependency artifact coordinates to exclude. If
481      * none is present, then
482      *             &lt;excludes&gt; represents no exclusions.
483      * 
484      *             Artifact coordinates may be given in simple
485      * groupId:artifactId form,
486      *             or they may be fully qualified in the form
487      * groupId:artifactId:type[:classifier]:version.
488      *             Additionally, wildcards can be used, as in
489      * *:maven-*.
490      * 
491      * @param excludes a excludes object.
492      */
493     public void setExcludes( java.util.List<String> excludes )
494     {
495         this.excludes = excludes;
496     } //-- void setExcludes( java.util.List )
497 
498     /**
499      * Set similar to a UNIX permission, sets the file mode of the
500      * files included.
501      *             THIS IS AN OCTAL VALUE.
502      *             Format: (User)(Group)(Other) where each
503      * component is a sum of Read = 4,
504      *             Write = 2, and Execute = 1.  For example, the
505      * value 0644
506      *             translates to User read-write, Group and Other
507      * read-only. The default value is 0644.
508      *             <a
509      * href="http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html">(more
510      * on unix-style permissions)</a>
511      * 
512      * @param fileMode a fileMode object.
513      */
514     public void setFileMode( String fileMode )
515     {
516         this.fileMode = fileMode;
517     } //-- void setFileMode( String )
518 
519     /**
520      * Set if set to true, the plugin will include the direct and
521      * transitive dependencies of
522      *           of the project modules included here.  Otherwise,
523      * it will only include the module
524      *           packages only. Default value is true.
525      * 
526      * @param includeDependencies a includeDependencies object.
527      */
528     public void setIncludeDependencies( boolean includeDependencies )
529     {
530         this.includeDependencies = includeDependencies;
531     } //-- void setIncludeDependencies( boolean )
532 
533     /**
534      * Set when &lt;include&gt; subelements are present, they
535      * define a set of
536      *             artifact coordinates to include. If none is
537      * present, then
538      *             &lt;includes&gt; represents all valid values.
539      * 
540      *             Artifact coordinates may be given in simple
541      * groupId:artifactId form,
542      *             or they may be fully qualified in the form
543      * groupId:artifactId:type[:classifier]:version.
544      *             Additionally, wildcards can be used, as in
545      * *:maven-*.
546      * 
547      * @param includes a includes object.
548      */
549     public void setIncludes( java.util.List<String> includes )
550     {
551         this.includes = includes;
552     } //-- void setIncludes( java.util.List )
553 
554     /**
555      * Set sets the output directory relative to the root
556      *             of the root directory of the assembly. For
557      * example,
558      *             "log" will put the specified files in the log
559      * directory,
560      *             directly beneath the root of the archive.
561      * 
562      * @param outputDirectory a outputDirectory object.
563      */
564     public void setOutputDirectory( String outputDirectory )
565     {
566         this.outputDirectory = outputDirectory;
567     } //-- void setOutputDirectory( String )
568 
569     /**
570      * Set sets the mapping pattern for all NON-UNPACKED
571      * dependencies included
572      *             in this assembly.
573      *             Default is
574      * ${module.artifactId}-${module.version}${dashClassifier?}.${module.extension}.
575      *             (Since 2.2-beta-2; 2.2-beta-1 uses
576      * ${artifactId}-${version}${dashClassifier?}.${extension})
577      * NOTE: If the
578      *             dependencySet specifies unpack == true,
579      * outputFileNameMapping WILL NOT BE USED; in these cases, use
580      * outputDirectory.
581      *             See the plugin FAQ for more details about
582      * entries usable in the outputFileNameMapping parameter.
583      * 
584      * @param outputFileNameMapping a outputFileNameMapping object.
585      */
586     public void setOutputFileNameMapping( String outputFileNameMapping )
587     {
588         this.outputFileNameMapping = outputFileNameMapping;
589     } //-- void setOutputFileNameMapping( String )
590 
591     /**
592      * Set if set to true, this property will unpack all module
593      * packages
594      *             into the specified output directory. When set to
595      * false
596      *             module packages will be included as archives
597      * (jars).
598      *             Default value is true.
599      * 
600      * @param unpack a unpack object.
601      */
602     public void setUnpack( boolean unpack )
603     {
604         this.unpack = unpack;
605     } //-- void setUnpack( boolean )
606 
607     /**
608      * Set allows the specification of includes and excludes, along
609      * with filtering options, for items
610      *           unpacked from a module artifact. (Since 2.2).
611      * 
612      * @param unpackOptions a unpackOptions object.
613      */
614     public void setUnpackOptions( UnpackOptions unpackOptions )
615     {
616         this.unpackOptions = unpackOptions;
617     } //-- void setUnpackOptions( UnpackOptions )
618 
619 }