View Javadoc
1   // =================== DO NOT EDIT THIS FILE ====================
2   // Generated by Modello 1.9.1,
3   // any modifications will be overwritten.
4   // ==============================================================
5   
6   package org.apache.maven.plugins.assembly.model;
7   
8   /**
9    * 
10   *         A dependencySet allows inclusion and exclusion of
11   * project dependencies
12   *         in the assembly.
13   *       
14   * 
15   * @version $Revision$ $Date$
16   */
17  @SuppressWarnings( "all" )
18  public class DependencySet
19      implements java.io.Serializable
20  {
21  
22        //--------------------------/
23       //- Class/Member Variables -/
24      //--------------------------/
25  
26      /**
27       * 
28       *             Sets the output directory relative to the root
29       *             of the root directory of the assembly. For
30       * example,
31       *             "log" will put the specified files in the log
32       * directory,
33       *             directly beneath the root of the archive.
34       *           
35       */
36      private String outputDirectory;
37  
38      /**
39       * Field includes.
40       */
41      private java.util.List<String> includes;
42  
43      /**
44       * Field excludes.
45       */
46      private java.util.List<String> excludes;
47  
48      /**
49       * 
50       *             
51       *             Similar to a UNIX permission, sets the file mode
52       * of the files included.
53       *             THIS IS AN OCTAL VALUE.
54       *             Format: (User)(Group)(Other) where each
55       * component is a sum of Read = 4,
56       *             Write = 2, and Execute = 1.  For example, the
57       * value 0644
58       *             translates to User read-write, Group and Other
59       * read-only. The default value is 0644.
60       *             <a
61       * href="http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html">(more
62       * on unix-style permissions)</a>
63       *             
64       *           
65       */
66      private String fileMode;
67  
68      /**
69       * 
70       *             
71       *             Similar to a UNIX permission, sets the directory
72       * mode of the directories
73       *             included.
74       *             THIS IS AN OCTAL VALUE.
75       *             Format: (User)(Group)(Other) where each
76       * component is a sum of
77       *             Read = 4, Write = 2, and Execute = 1.  For
78       * example, the value
79       *             0755 translates to User read-write, Group and
80       * Other read-only. The default value is 0755.
81       *             <a
82       * href="http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html">(more
83       * on unix-style permissions)</a>
84       *             
85       *           
86       */
87      private String directoryMode;
88  
89      /**
90       * 
91       *           When specified as true, any include/exclude
92       * patterns which aren't used to filter an actual
93       *           artifact during assembly creation will cause the
94       * build to fail with an error. This is meant
95       *           to highlight obsolete inclusions or exclusions, or
96       * else signal that the assembly descriptor
97       *           is incorrectly configured. (Since 2.2)
98       *           .
99       */
100     private boolean useStrictFiltering = false;
101 
102     /**
103      * 
104      *             Sets the mapping pattern for all dependencies
105      * included in this
106      *             assembly. Default is
107      * ${artifact.artifactId}-${artifact.version}${dashClassifier?}.${artifact.extension}.
108      *             (Since 2.2-beta-2; 2.2-beta-1 uses
109      * ${artifactId}-${version}${dashClassifier?}.${extension}).
110      *             NOTE: If the dependencySet specifies unpack ==
111      * true, outputFileNameMapping WILL NOT BE USED; in these
112      * cases,
113      *             use outputDirectory.
114      *             See the plugin FAQ for more details about
115      * entries usable in the outputFileNameMapping parameter.
116      *           
117      */
118     private String outputFileNameMapping = "${artifact.artifactId}-${artifact.version}${dashClassifier?}.${artifact.extension}";
119 
120     /**
121      * 
122      *             If set to true, this property will unpack all
123      * dependencies
124      *             into the specified output directory. When set to
125      * false,
126      *             dependencies will be included as archives
127      * (jars). Can only unpack
128      *             jar, zip, tar.gz, and tar.bz archives. Default
129      * value is false.
130      *           
131      */
132     private boolean unpack = false;
133 
134     /**
135      * 
136      *           Allows the specification of includes and excludes,
137      * along with filtering options, for items
138      *           unpacked from a dependency artifact. (Since 2.2)
139      *           .
140      */
141     private UnpackOptions unpackOptions;
142 
143     /**
144      * 
145      *             Sets the dependency scope for this
146      * dependencySet.
147      *             Default scope value is "runtime".
148      *           
149      */
150     private String scope = "runtime";
151 
152     /**
153      * 
154      *           Determines whether the artifact produced during
155      * the current project's
156      *           build should be included in this dependency set.
157      * Default value is true,
158      *           for backward compatibility. (Since 2.2)
159      *           .
160      */
161     private boolean useProjectArtifact = true;
162 
163     /**
164      * 
165      *           Determines whether the attached artifacts produced
166      * during the current project's
167      *           build should be included in this dependency set.
168      * Default value is false. (Since 2.2)
169      *           .
170      */
171     private boolean useProjectAttachments = false;
172 
173     /**
174      * 
175      *           Determines whether transitive dependencies will be
176      * included in the processing of
177      *           the current dependency set. If true,
178      * includes/excludes/useTransitiveFiltering
179      *           will apply to transitive dependency artifacts in
180      * addition to the main project
181      *           dependency artifacts. If false,
182      * useTransitiveFiltering is meaningless, and
183      *           includes/excludes only affect the immediate
184      * dependencies of the project.
185      *           By default, this value is true. (Since 2.2)
186      *           .
187      */
188     private boolean useTransitiveDependencies = true;
189 
190     /**
191      * 
192      *           Determines whether the include/exclude patterns in
193      * this dependency set will be applied to
194      *           the transitive path of a given artifact. If true,
195      * and the current artifact is a transitive
196      *           dependency brought in by another artifact which
197      * matches an inclusion or exclusion pattern,
198      *           then the current artifact has the same
199      * inclusion/exclusion logic applied to it as well. By
200      *           default, this value is false, in order to preserve
201      * backward compatibility with version 2.1.
202      *           This means that includes/excludes only apply
203      * directly to the current artifact, and not to
204      *           the transitive set of artifacts which brought it
205      * in. (Since 2.2)
206      *           .
207      */
208     private boolean useTransitiveFiltering = false;
209 
210 
211       //-----------/
212      //- Methods -/
213     //-----------/
214 
215     /**
216      * Method addExclude.
217      * 
218      * @param string
219      */
220     public void addExclude( String string )
221     {
222         getExcludes().add( string );
223     } //-- void addExclude( String )
224 
225     /**
226      * Method addInclude.
227      * 
228      * @param string
229      */
230     public void addInclude( String string )
231     {
232         getIncludes().add( string );
233     } //-- void addInclude( String )
234 
235     /**
236      * Get similar to a UNIX permission, sets the directory mode of
237      * the directories
238      *             included.
239      *             THIS IS AN OCTAL VALUE.
240      *             Format: (User)(Group)(Other) where each
241      * component is a sum of
242      *             Read = 4, Write = 2, and Execute = 1.  For
243      * example, the value
244      *             0755 translates to User read-write, Group and
245      * Other read-only. The default value is 0755.
246      *             <a
247      * href="http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html">(more
248      * on unix-style permissions)</a>
249      * 
250      * @return String
251      */
252     public String getDirectoryMode()
253     {
254         return this.directoryMode;
255     } //-- String getDirectoryMode()
256 
257     /**
258      * Method getExcludes.
259      * 
260      * @return List
261      */
262     public java.util.List<String> getExcludes()
263     {
264         if ( this.excludes == null )
265         {
266             this.excludes = new java.util.ArrayList<String>();
267         }
268 
269         return this.excludes;
270     } //-- java.util.List<String> getExcludes()
271 
272     /**
273      * Get similar to a UNIX permission, sets the file mode of the
274      * files included.
275      *             THIS IS AN OCTAL VALUE.
276      *             Format: (User)(Group)(Other) where each
277      * component is a sum of Read = 4,
278      *             Write = 2, and Execute = 1.  For example, the
279      * value 0644
280      *             translates to User read-write, Group and Other
281      * read-only. The default value is 0644.
282      *             <a
283      * href="http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html">(more
284      * on unix-style permissions)</a>
285      * 
286      * @return String
287      */
288     public String getFileMode()
289     {
290         return this.fileMode;
291     } //-- String getFileMode()
292 
293     /**
294      * Method getIncludes.
295      * 
296      * @return List
297      */
298     public java.util.List<String> getIncludes()
299     {
300         if ( this.includes == null )
301         {
302             this.includes = new java.util.ArrayList<String>();
303         }
304 
305         return this.includes;
306     } //-- java.util.List<String> getIncludes()
307 
308     /**
309      * Get sets the output directory relative to the root
310      *             of the root directory of the assembly. For
311      * example,
312      *             "log" will put the specified files in the log
313      * directory,
314      *             directly beneath the root of the archive.
315      * 
316      * @return String
317      */
318     public String getOutputDirectory()
319     {
320         return this.outputDirectory;
321     } //-- String getOutputDirectory()
322 
323     /**
324      * Get sets the mapping pattern for all dependencies included
325      * in this
326      *             assembly. Default is
327      * ${artifact.artifactId}-${artifact.version}${dashClassifier?}.${artifact.extension}.
328      *             (Since 2.2-beta-2; 2.2-beta-1 uses
329      * ${artifactId}-${version}${dashClassifier?}.${extension}).
330      *             NOTE: If the dependencySet specifies unpack ==
331      * true, outputFileNameMapping WILL NOT BE USED; in these
332      * cases,
333      *             use outputDirectory.
334      *             See the plugin FAQ for more details about
335      * entries usable in the outputFileNameMapping parameter.
336      * 
337      * @return String
338      */
339     public String getOutputFileNameMapping()
340     {
341         return this.outputFileNameMapping;
342     } //-- String getOutputFileNameMapping()
343 
344     /**
345      * Get sets the dependency scope for this dependencySet.
346      *             Default scope value is "runtime".
347      * 
348      * @return String
349      */
350     public String getScope()
351     {
352         return this.scope;
353     } //-- String getScope()
354 
355     /**
356      * Get allows the specification of includes and excludes, along
357      * with filtering options, for items
358      *           unpacked from a dependency artifact. (Since 2.2).
359      * 
360      * @return UnpackOptions
361      */
362     public UnpackOptions getUnpackOptions()
363     {
364         return this.unpackOptions;
365     } //-- UnpackOptions getUnpackOptions()
366 
367     /**
368      * Get if set to true, this property will unpack all
369      * dependencies
370      *             into the specified output directory. When set to
371      * false,
372      *             dependencies will be included as archives
373      * (jars). Can only unpack
374      *             jar, zip, tar.gz, and tar.bz archives. Default
375      * value is false.
376      * 
377      * @return boolean
378      */
379     public boolean isUnpack()
380     {
381         return this.unpack;
382     } //-- boolean isUnpack()
383 
384     /**
385      * Get determines whether the artifact produced during the
386      * current project's
387      *           build should be included in this dependency set.
388      * Default value is true,
389      *           for backward compatibility. (Since 2.2).
390      * 
391      * @return boolean
392      */
393     public boolean isUseProjectArtifact()
394     {
395         return this.useProjectArtifact;
396     } //-- boolean isUseProjectArtifact()
397 
398     /**
399      * Get determines whether the attached artifacts produced
400      * during the current project's
401      *           build should be included in this dependency set.
402      * Default value is false. (Since 2.2).
403      * 
404      * @return boolean
405      */
406     public boolean isUseProjectAttachments()
407     {
408         return this.useProjectAttachments;
409     } //-- boolean isUseProjectAttachments()
410 
411     /**
412      * Get when specified as true, any include/exclude patterns
413      * which aren't used to filter an actual
414      *           artifact during assembly creation will cause the
415      * build to fail with an error. This is meant
416      *           to highlight obsolete inclusions or exclusions, or
417      * else signal that the assembly descriptor
418      *           is incorrectly configured. (Since 2.2).
419      * 
420      * @return boolean
421      */
422     public boolean isUseStrictFiltering()
423     {
424         return this.useStrictFiltering;
425     } //-- boolean isUseStrictFiltering()
426 
427     /**
428      * Get determines whether transitive dependencies will be
429      * included in the processing of
430      *           the current dependency set. If true,
431      * includes/excludes/useTransitiveFiltering
432      *           will apply to transitive dependency artifacts in
433      * addition to the main project
434      *           dependency artifacts. If false,
435      * useTransitiveFiltering is meaningless, and
436      *           includes/excludes only affect the immediate
437      * dependencies of the project.
438      *           By default, this value is true. (Since 2.2).
439      * 
440      * @return boolean
441      */
442     public boolean isUseTransitiveDependencies()
443     {
444         return this.useTransitiveDependencies;
445     } //-- boolean isUseTransitiveDependencies()
446 
447     /**
448      * Get determines whether the include/exclude patterns in this
449      * dependency set will be applied to
450      *           the transitive path of a given artifact. If true,
451      * and the current artifact is a transitive
452      *           dependency brought in by another artifact which
453      * matches an inclusion or exclusion pattern,
454      *           then the current artifact has the same
455      * inclusion/exclusion logic applied to it as well. By
456      *           default, this value is false, in order to preserve
457      * backward compatibility with version 2.1.
458      *           This means that includes/excludes only apply
459      * directly to the current artifact, and not to
460      *           the transitive set of artifacts which brought it
461      * in. (Since 2.2).
462      * 
463      * @return boolean
464      */
465     public boolean isUseTransitiveFiltering()
466     {
467         return this.useTransitiveFiltering;
468     } //-- boolean isUseTransitiveFiltering()
469 
470     /**
471      * Method removeExclude.
472      * 
473      * @param string
474      */
475     public void removeExclude( String string )
476     {
477         getExcludes().remove( string );
478     } //-- void removeExclude( String )
479 
480     /**
481      * Method removeInclude.
482      * 
483      * @param string
484      */
485     public void removeInclude( String string )
486     {
487         getIncludes().remove( string );
488     } //-- void removeInclude( String )
489 
490     /**
491      * Set similar to a UNIX permission, sets the directory mode of
492      * the directories
493      *             included.
494      *             THIS IS AN OCTAL VALUE.
495      *             Format: (User)(Group)(Other) where each
496      * component is a sum of
497      *             Read = 4, Write = 2, and Execute = 1.  For
498      * example, the value
499      *             0755 translates to User read-write, Group and
500      * Other read-only. The default value is 0755.
501      *             <a
502      * href="http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html">(more
503      * on unix-style permissions)</a>
504      * 
505      * @param directoryMode
506      */
507     public void setDirectoryMode( String directoryMode )
508     {
509         this.directoryMode = directoryMode;
510     } //-- void setDirectoryMode( String )
511 
512     /**
513      * Set when &lt;exclude&gt; subelements are present, they
514      * define a set of
515      *             dependency artifact coordinates to exclude. If
516      * none is present, then
517      *             &lt;excludes&gt; represents no exclusions.
518      * 
519      *             Artifact coordinates may be given in simple
520      * groupId:artifactId form,
521      *             or they may be fully qualified in the form
522      * groupId:artifactId:type[:classifier]:version.
523      *             Additionally, wildcards can be used, as in
524      * *:maven-*.
525      * 
526      * @param excludes
527      */
528     public void setExcludes( java.util.List<String> excludes )
529     {
530         this.excludes = excludes;
531     } //-- void setExcludes( java.util.List )
532 
533     /**
534      * Set similar to a UNIX permission, sets the file mode of the
535      * files included.
536      *             THIS IS AN OCTAL VALUE.
537      *             Format: (User)(Group)(Other) where each
538      * component is a sum of Read = 4,
539      *             Write = 2, and Execute = 1.  For example, the
540      * value 0644
541      *             translates to User read-write, Group and Other
542      * read-only. The default value is 0644.
543      *             <a
544      * href="http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html">(more
545      * on unix-style permissions)</a>
546      * 
547      * @param fileMode
548      */
549     public void setFileMode( String fileMode )
550     {
551         this.fileMode = fileMode;
552     } //-- void setFileMode( String )
553 
554     /**
555      * Set when &lt;include&gt; subelements are present, they
556      * define a set of
557      *             artifact coordinates to include. If none is
558      * present, then
559      *             &lt;includes&gt; represents all valid values.
560      * 
561      *             Artifact coordinates may be given in simple
562      * groupId:artifactId form,
563      *             or they may be fully qualified in the form
564      * groupId:artifactId:type[:classifier]:version.
565      *             Additionally, wildcards can be used, as in
566      * *:maven-*.
567      * 
568      * @param includes
569      */
570     public void setIncludes( java.util.List<String> includes )
571     {
572         this.includes = includes;
573     } //-- void setIncludes( java.util.List )
574 
575     /**
576      * Set sets the output directory relative to the root
577      *             of the root directory of the assembly. For
578      * example,
579      *             "log" will put the specified files in the log
580      * directory,
581      *             directly beneath the root of the archive.
582      * 
583      * @param outputDirectory
584      */
585     public void setOutputDirectory( String outputDirectory )
586     {
587         this.outputDirectory = outputDirectory;
588     } //-- void setOutputDirectory( String )
589 
590     /**
591      * Set sets the mapping pattern for all dependencies included
592      * in this
593      *             assembly. Default is
594      * ${artifact.artifactId}-${artifact.version}${dashClassifier?}.${artifact.extension}.
595      *             (Since 2.2-beta-2; 2.2-beta-1 uses
596      * ${artifactId}-${version}${dashClassifier?}.${extension}).
597      *             NOTE: If the dependencySet specifies unpack ==
598      * true, outputFileNameMapping WILL NOT BE USED; in these
599      * cases,
600      *             use outputDirectory.
601      *             See the plugin FAQ for more details about
602      * entries usable in the outputFileNameMapping parameter.
603      * 
604      * @param outputFileNameMapping
605      */
606     public void setOutputFileNameMapping( String outputFileNameMapping )
607     {
608         this.outputFileNameMapping = outputFileNameMapping;
609     } //-- void setOutputFileNameMapping( String )
610 
611     /**
612      * Set sets the dependency scope for this dependencySet.
613      *             Default scope value is "runtime".
614      * 
615      * @param scope
616      */
617     public void setScope( String scope )
618     {
619         this.scope = scope;
620     } //-- void setScope( String )
621 
622     /**
623      * Set if set to true, this property will unpack all
624      * dependencies
625      *             into the specified output directory. When set to
626      * false,
627      *             dependencies will be included as archives
628      * (jars). Can only unpack
629      *             jar, zip, tar.gz, and tar.bz archives. Default
630      * value is false.
631      * 
632      * @param unpack
633      */
634     public void setUnpack( boolean unpack )
635     {
636         this.unpack = unpack;
637     } //-- void setUnpack( boolean )
638 
639     /**
640      * Set allows the specification of includes and excludes, along
641      * with filtering options, for items
642      *           unpacked from a dependency artifact. (Since 2.2).
643      * 
644      * @param unpackOptions
645      */
646     public void setUnpackOptions( UnpackOptions unpackOptions )
647     {
648         this.unpackOptions = unpackOptions;
649     } //-- void setUnpackOptions( UnpackOptions )
650 
651     /**
652      * Set determines whether the artifact produced during the
653      * current project's
654      *           build should be included in this dependency set.
655      * Default value is true,
656      *           for backward compatibility. (Since 2.2).
657      * 
658      * @param useProjectArtifact
659      */
660     public void setUseProjectArtifact( boolean useProjectArtifact )
661     {
662         this.useProjectArtifact = useProjectArtifact;
663     } //-- void setUseProjectArtifact( boolean )
664 
665     /**
666      * Set determines whether the attached artifacts produced
667      * during the current project's
668      *           build should be included in this dependency set.
669      * Default value is false. (Since 2.2).
670      * 
671      * @param useProjectAttachments
672      */
673     public void setUseProjectAttachments( boolean useProjectAttachments )
674     {
675         this.useProjectAttachments = useProjectAttachments;
676     } //-- void setUseProjectAttachments( boolean )
677 
678     /**
679      * Set when specified as true, any include/exclude patterns
680      * which aren't used to filter an actual
681      *           artifact during assembly creation will cause the
682      * build to fail with an error. This is meant
683      *           to highlight obsolete inclusions or exclusions, or
684      * else signal that the assembly descriptor
685      *           is incorrectly configured. (Since 2.2).
686      * 
687      * @param useStrictFiltering
688      */
689     public void setUseStrictFiltering( boolean useStrictFiltering )
690     {
691         this.useStrictFiltering = useStrictFiltering;
692     } //-- void setUseStrictFiltering( boolean )
693 
694     /**
695      * Set determines whether transitive dependencies will be
696      * included in the processing of
697      *           the current dependency set. If true,
698      * includes/excludes/useTransitiveFiltering
699      *           will apply to transitive dependency artifacts in
700      * addition to the main project
701      *           dependency artifacts. If false,
702      * useTransitiveFiltering is meaningless, and
703      *           includes/excludes only affect the immediate
704      * dependencies of the project.
705      *           By default, this value is true. (Since 2.2).
706      * 
707      * @param useTransitiveDependencies
708      */
709     public void setUseTransitiveDependencies( boolean useTransitiveDependencies )
710     {
711         this.useTransitiveDependencies = useTransitiveDependencies;
712     } //-- void setUseTransitiveDependencies( boolean )
713 
714     /**
715      * Set determines whether the include/exclude patterns in this
716      * dependency set will be applied to
717      *           the transitive path of a given artifact. If true,
718      * and the current artifact is a transitive
719      *           dependency brought in by another artifact which
720      * matches an inclusion or exclusion pattern,
721      *           then the current artifact has the same
722      * inclusion/exclusion logic applied to it as well. By
723      *           default, this value is false, in order to preserve
724      * backward compatibility with version 2.1.
725      *           This means that includes/excludes only apply
726      * directly to the current artifact, and not to
727      *           the transitive set of artifacts which brought it
728      * in. (Since 2.2).
729      * 
730      * @param useTransitiveFiltering
731      */
732     public void setUseTransitiveFiltering( boolean useTransitiveFiltering )
733     {
734         this.useTransitiveFiltering = useTransitiveFiltering;
735     } //-- void setUseTransitiveFiltering( boolean )
736 
737 }