View Javadoc
1   /*
2     Copyright (C) 2020 - 2022 Alexander Kapitman
3   
4     Licensed under the Apache License, Version 2.0 (the "License");
5     you may not use this file except in compliance with the License.
6     You may obtain a copy of the License at
7   
8       http://www.apache.org/licenses/LICENSE-2.0
9   
10    Unless required by applicable law or agreed to in writing, software
11    distributed under the License is distributed on an "AS IS" BASIS,
12    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13    See the License for the specific language governing permissions and
14    limitations under the License.
15  */
16  
17  package ru.akman.maven.plugins.jlink;
18  
19  import java.util.List;
20  
21  /**
22   * Set of dependencies.
23   */
24  public class DependencySet {
25  
26    /**
27     * Should output directory be included into dependencyset.
28     *
29     * <p>Default value: false</p>
30     */
31    private boolean includeoutput;
32  
33    /**
34     * Should automatic modules be excluded from dependencyset.
35     *
36     * <p>Default value: false</p>
37     */
38    private boolean excludeautomatic;
39  
40    /**
41     * List of included dependencies (filename patterns).
42     */
43    private List<String> includes;
44  
45    /**
46     * List of included dependencies (module name patterns).
47     */
48    private List<String> includenames;
49  
50    /**
51     * List of excluded dependencies (filename patterns).
52     */
53    private List<String> excludes;
54  
55    /**
56     * List of excluded dependencies (module name patterns).
57     */
58    private List<String> excludenames;
59  
60    /**
61     * Should output directory be included into dependencyset.
62     *
63     * @return true if output directory be included into dependencyset
64     */
65    public boolean isOutputIncluded() {
66      return this.includeoutput;
67    }
68  
69    /**
70     * Setter for includeoutput.
71     *
72     * @param includeoutput should output directory be included
73     */
74    public void setOutputIncluded(final boolean includeoutput) {
75      this.includeoutput = includeoutput;
76    }
77  
78    /**
79     * Should automatic modules be excluded from dependencyset.
80     *
81     * @return true if automatic modules be excluded from dependencyset
82     */
83    public boolean isAutomaticExcluded() {
84      return this.excludeautomatic;
85    }
86  
87    /**
88     * Setter for excludeautomatic.
89     *
90     * @param excludeautomatic should automatic modules be excluded
91     */
92    public void setAutomaticExcluded(final boolean excludeautomatic) {
93      this.excludeautomatic = excludeautomatic;
94    }
95  
96    /**
97     * Get list of included dependencies by filename.
98     *
99     * @return the list of included dependency filenames (patterns)
100    */
101   public List<String> getIncludes() {
102     return this.includes;
103   }
104 
105   /**
106    * Set the list of included dependencies by filename.
107    *
108    * @param includes included dependency filenames list (patterns)
109    */
110   public void setIncludes(final List<String> includes) {
111     this.includes = includes;
112   }
113 
114   /**
115    * Get list of excluded dependencies by filename.
116    *
117    * @return the list of excluded dependency filenames (patterns)
118    */
119   public List<String> getExcludes() {
120     return this.excludes;
121   }
122 
123   /**
124    * Set the list of excluded dependencies by filename.
125    *
126    * @param excludes excluded dependency filenames list (patterns)
127    */
128   public void setExcludes(final List<String> excludes) {
129     this.excludes = excludes;
130   }
131 
132   /**
133    * Get list of included dependencies by name.
134    *
135    * @return the list of included dependency names (patterns)
136    */
137   public List<String> getIncludeNames() {
138     return this.includenames;
139   }
140 
141   /**
142    * Set the list of included dependencies by name.
143    *
144    * @param includenames included dependency names list (patterns)
145    */
146   public void setIncludeNames(final List<String> includenames) {
147     this.includenames = includenames;
148   }
149 
150   /**
151    * Get list of excluded dependencies by name.
152    *
153    * @return the list of excluded dependency names (patterns)
154    */
155   public List<String> getExcludeNames() {
156     return this.excludenames;
157   }
158 
159   /**
160    * Set the list of excluded dependencies by name.
161    *
162    * @param excludenames excluded dependency names list (patterns)
163    */
164   public void setExcludeNames(final List<String> excludenames) {
165     this.excludenames = excludenames;
166   }
167 
168 }