View Javadoc
1   // =================== DO NOT EDIT THIS FILE ====================
2   // Generated by Modello 2.1.2,
3   // any modifications will be overwritten.
4   // ==============================================================
5   
6   package org.apache.maven.buildcache.xml.config;
7   
8   /**
9    * <p>A file or a directory path to exclude from the checksum
10   * computation. Relative path are relative to each module
11   * basedir.</p>
12   *             When referring to a directory, additional properties
13   * help adjust the scope of the exclusion:
14   *             <ul>
15   *                 <li>glob - only entries matching this <a
16   * href="https://docs.oracle.com/javase/tutorial/essential/io/fileOps.html#glob">glob
17   * pattern</a> are excluded</li>
18   *                 <li>entryType - type of entries excluded from
19   * the scan</li>
20   *                 <li>matcherType - entry property on which the
21   * glob matching is applied</li>
22   *             </ul>
23   *             <p>By default, targeting a directory excludes
24   * everything underneath it.</p>
25   *             Examples :
26   *             <ul>
27   *              
28   * <li><code>&lt;exclude&gt;src/main/doc&lt;/exclude&gt;</code> :
29   * excludes everything under : ${project.basedir}/src/main/doc</li>
30   *              
31   * <li><code>&lt;exclude&gt;src/main/java/package-info.java&lt;/exclude&gt;</code>
32   * : excludes this file :
33   * ${project.basedir}/src/main/java/package-info.java</li>
34   *               <li><code>&lt;exclude
35   * glob="package-info.java"&gt;&lt;/exclude&gt;</code> : excludes
36   * all the files named package-info.java</li>
37   *               <li><code>&lt;exclude
38   * glob="src/main/resources&#x2F;**.txt" entryType="FILE"
39   * matcherType="PATH" &gt;&lt;/exclude&gt;</code> : excludes all
40   * the text files located under the "resources" folder</li>
41   *             </ul>
42   *             <p>
43   *             Exclude elements can also be added per project with
44   * the use of <a
45   * href="parameters.html#project-level-properties">maven
46   * properties.</a>
47   *             </p>
48   *             
49   * 
50   * @version $Revision$ $Date$
51   */
52  @SuppressWarnings( "all" )
53  public class Exclude
54      implements java.io.Serializable
55  {
56  
57        //--------------------------/
58       //- Class/Member Variables -/
59      //--------------------------/
60  
61      /**
62       * An absolute or relative path to a filename or a directory.
63       * In the later case, the exclusion is applied starting from
64       * this directory (can be beneficial in term of performances).
65       * If empty, the glob is applied on every file listed as a
66       * potential part of the checksum.
67       */
68      private String value;
69  
70      /**
71       * Entries are filtered by matching this glob (see matcherType
72       * property).
73       */
74      private String glob = "**";
75  
76      /**
77       * Type of entries filtered. One of FILE, DIRECTORY, ALL.
78       * Excluding a directory excludes its subfiles and
79       * subdirectories.
80       */
81      private String entryType = "ALL";
82  
83      /**
84       * The entry property matched for exclusion. One of FILENAME,
85       * PATH. For a path, if the exclusion value is empty or a
86       * relative path, matching is done relatively to the project
87       * folder.
88       */
89      private String matcherType = "FILENAME";
90  
91  
92        //-----------/
93       //- Methods -/
94      //-----------/
95  
96      /**
97       * Get type of entries filtered. One of FILE, DIRECTORY, ALL.
98       * Excluding a directory excludes its subfiles and
99       * subdirectories.
100      * 
101      * @return String
102      */
103     public String getEntryType()
104     {
105         return this.entryType;
106     } //-- String getEntryType()
107 
108     /**
109      * Get entries are filtered by matching this glob (see
110      * matcherType property).
111      * 
112      * @return String
113      */
114     public String getGlob()
115     {
116         return this.glob;
117     } //-- String getGlob()
118 
119     /**
120      * Get the entry property matched for exclusion. One of
121      * FILENAME, PATH. For a path, if the exclusion value is empty
122      * or a relative path, matching is done relatively to the
123      * project folder.
124      * 
125      * @return String
126      */
127     public String getMatcherType()
128     {
129         return this.matcherType;
130     } //-- String getMatcherType()
131 
132     /**
133      * Get an absolute or relative path to a filename or a
134      * directory. In the later case, the exclusion is applied
135      * starting from this directory (can be beneficial in term of
136      * performances). If empty, the glob is applied on every file
137      * listed as a potential part of the checksum.
138      * 
139      * @return String
140      */
141     public String getValue()
142     {
143         return this.value;
144     } //-- String getValue()
145 
146     /**
147      * Set type of entries filtered. One of FILE, DIRECTORY, ALL.
148      * Excluding a directory excludes its subfiles and
149      * subdirectories.
150      * 
151      * @param entryType a entryType object.
152      */
153     public void setEntryType( String entryType )
154     {
155         this.entryType = entryType;
156     } //-- void setEntryType( String )
157 
158     /**
159      * Set entries are filtered by matching this glob (see
160      * matcherType property).
161      * 
162      * @param glob a glob object.
163      */
164     public void setGlob( String glob )
165     {
166         this.glob = glob;
167     } //-- void setGlob( String )
168 
169     /**
170      * Set the entry property matched for exclusion. One of
171      * FILENAME, PATH. For a path, if the exclusion value is empty
172      * or a relative path, matching is done relatively to the
173      * project folder.
174      * 
175      * @param matcherType a matcherType object.
176      */
177     public void setMatcherType( String matcherType )
178     {
179         this.matcherType = matcherType;
180     } //-- void setMatcherType( String )
181 
182     /**
183      * Set an absolute or relative path to a filename or a
184      * directory. In the later case, the exclusion is applied
185      * starting from this directory (can be beneficial in term of
186      * performances). If empty, the glob is applied on every file
187      * listed as a potential part of the checksum.
188      * 
189      * @param value a value object.
190      */
191     public void setValue( String value )
192     {
193         this.value = value;
194     } //-- void setValue( String )
195 
196 }