View Javadoc
1   /*
2    * #%L
3    * wcm.io
4    * %%
5    * Copyright (C) 2017 wcm.io
6    * %%
7    * Licensed under the Apache License, Version 2.0 (the "License");
8    * you may not use this file except in compliance with the License.
9    * You may obtain a copy of the License at
10   *
11   *      http://www.apache.org/licenses/LICENSE-2.0
12   *
13   * Unless required by applicable law or agreed to in writing, software
14   * distributed under the License is distributed on an "AS IS" BASIS,
15   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16   * See the License for the specific language governing permissions and
17   * limitations under the License.
18   * #L%
19   */
20  package io.wcm.tooling.commons.packmgr.unpack;
21  
22  /**
23   * Configuration properties for {@link ContentUnpacker}.
24   */
25  public final class ContentUnpackerProperties {
26  
27    private String[] excludeFiles;
28    private String[] excludeNodes;
29    private String[] excludeProperties;
30    private String[] excludeMixins;
31    private boolean markReplicationActivated;
32    private String[] markReplicationActivatedIncludeNodes;
33    private String dateLastReplicated;
34  
35    /**
36     * Exclude files
37     * @return Name patterns
38     */
39    public String[] getExcludeFiles() {
40      return this.excludeFiles;
41    }
42  
43    public void setExcludeFiles(String[] excludeFiles) {
44      this.excludeFiles = excludeFiles;
45    }
46  
47    /**
48     * Exclude nodes
49     * @return Name patterns
50     */
51    public String[] getExcludeNodes() {
52      return this.excludeNodes;
53    }
54  
55    public void setExcludeNodes(String[] excludeNodes) {
56      this.excludeNodes = excludeNodes;
57    }
58  
59    /**
60     * Exclude properties
61     * @return Name patterns
62     */
63    public String[] getExcludeProperties() {
64      return this.excludeProperties;
65    }
66  
67    public void setExcludeProperties(String[] excludeProperties) {
68      this.excludeProperties = excludeProperties;
69    }
70  
71    /**
72     * Exclude mixins
73     * @return Name patterns
74     */
75    public String[] getExcludeMixins() {
76      return this.excludeMixins;
77    }
78  
79    public void setExcludeMixins(String[] excludeMixins) {
80      this.excludeMixins = excludeMixins;
81    }
82  
83    /**
84     * Set replication status to "activated" for all cq:Page and cq:Template nodes.
85     * @return Set replication status
86     */
87    public boolean isMarkReplicationActivated() {
88      return this.markReplicationActivated;
89    }
90  
91    public void setMarkReplicationActivated(boolean markReplicationActivated) {
92      this.markReplicationActivated = markReplicationActivated;
93    }
94  
95    /**
96     * Node path filter expressions to apply "activated" status on.
97     * @return Path patterns
98     */
99    public String[] getMarkReplicationActivatedIncludeNodes() {
100     return this.markReplicationActivatedIncludeNodes;
101   }
102 
103   public void setMarkReplicationActivatedIncludeNodes(String[] markReplicationActivatedIncludeNodes) {
104     this.markReplicationActivatedIncludeNodes = markReplicationActivatedIncludeNodes;
105   }
106 
107   /**
108    * Sets a fixed date to be used for the "lastReplicated" property when setting replication status to "activated".
109    * If not set the current date is used.
110    * @return Date in ISO8601 format. Example: <code>2020-01-01T00:00:00.000+02:00</code>.
111    */
112   public String getDateLastReplicated() {
113     return this.dateLastReplicated;
114   }
115 
116   public void setDateLastReplicated(String dateLastReplicated) {
117     this.dateLastReplicated = dateLastReplicated;
118   }
119 
120 }