001//
002// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.7 
003// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
004// Any modifications to this file will be lost upon recompilation of the source schema. 
005// Generated on: 2015.08.26 at 05:38:23 AM CEST 
006//
007
008
009package org.opends.dsml.protocol;
010
011import javax.xml.bind.annotation.XmlAccessType;
012import javax.xml.bind.annotation.XmlAccessorType;
013import javax.xml.bind.annotation.XmlElement;
014import javax.xml.bind.annotation.XmlType;
015
016
017/**
018 * <p>Java class for Filter complex type.
019 * 
020 * <p>The following schema fragment specifies the expected content contained within this class.
021 * 
022 * <pre>
023 * &lt;complexType name="Filter">
024 *   &lt;complexContent>
025 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
026 *       &lt;group ref="{urn:oasis:names:tc:DSML:2:0:core}FilterGroup"/>
027 *     &lt;/restriction>
028 *   &lt;/complexContent>
029 * &lt;/complexType>
030 * </pre>
031 * 
032 * 
033 */
034@XmlAccessorType(XmlAccessType.FIELD)
035@XmlType(name = "Filter", namespace = "urn:oasis:names:tc:DSML:2:0:core", propOrder = {
036    "and",
037    "or",
038    "not",
039    "equalityMatch",
040    "substrings",
041    "greaterOrEqual",
042    "lessOrEqual",
043    "present",
044    "approxMatch",
045    "extensibleMatch"
046})
047public class Filter {
048
049    @XmlElement(namespace = "urn:oasis:names:tc:DSML:2:0:core")
050    protected FilterSet and;
051    @XmlElement(namespace = "urn:oasis:names:tc:DSML:2:0:core")
052    protected FilterSet or;
053    @XmlElement(namespace = "urn:oasis:names:tc:DSML:2:0:core")
054    protected Filter not;
055    @XmlElement(namespace = "urn:oasis:names:tc:DSML:2:0:core")
056    protected AttributeValueAssertion equalityMatch;
057    @XmlElement(namespace = "urn:oasis:names:tc:DSML:2:0:core")
058    protected SubstringFilter substrings;
059    @XmlElement(namespace = "urn:oasis:names:tc:DSML:2:0:core")
060    protected AttributeValueAssertion greaterOrEqual;
061    @XmlElement(namespace = "urn:oasis:names:tc:DSML:2:0:core")
062    protected AttributeValueAssertion lessOrEqual;
063    @XmlElement(namespace = "urn:oasis:names:tc:DSML:2:0:core")
064    protected AttributeDescription present;
065    @XmlElement(namespace = "urn:oasis:names:tc:DSML:2:0:core")
066    protected AttributeValueAssertion approxMatch;
067    @XmlElement(namespace = "urn:oasis:names:tc:DSML:2:0:core")
068    protected MatchingRuleAssertion extensibleMatch;
069
070    /**
071     * Gets the value of the and property.
072     * 
073     * @return
074     *     possible object is
075     *     {@link FilterSet }
076     *     
077     */
078    public FilterSet getAnd() {
079        return and;
080    }
081
082    /**
083     * Sets the value of the and property.
084     * 
085     * @param value
086     *     allowed object is
087     *     {@link FilterSet }
088     *     
089     */
090    public void setAnd(FilterSet value) {
091        this.and = value;
092    }
093
094    /**
095     * Gets the value of the or property.
096     * 
097     * @return
098     *     possible object is
099     *     {@link FilterSet }
100     *     
101     */
102    public FilterSet getOr() {
103        return or;
104    }
105
106    /**
107     * Sets the value of the or property.
108     * 
109     * @param value
110     *     allowed object is
111     *     {@link FilterSet }
112     *     
113     */
114    public void setOr(FilterSet value) {
115        this.or = value;
116    }
117
118    /**
119     * Gets the value of the not property.
120     * 
121     * @return
122     *     possible object is
123     *     {@link Filter }
124     *     
125     */
126    public Filter getNot() {
127        return not;
128    }
129
130    /**
131     * Sets the value of the not property.
132     * 
133     * @param value
134     *     allowed object is
135     *     {@link Filter }
136     *     
137     */
138    public void setNot(Filter value) {
139        this.not = value;
140    }
141
142    /**
143     * Gets the value of the equalityMatch property.
144     * 
145     * @return
146     *     possible object is
147     *     {@link AttributeValueAssertion }
148     *     
149     */
150    public AttributeValueAssertion getEqualityMatch() {
151        return equalityMatch;
152    }
153
154    /**
155     * Sets the value of the equalityMatch property.
156     * 
157     * @param value
158     *     allowed object is
159     *     {@link AttributeValueAssertion }
160     *     
161     */
162    public void setEqualityMatch(AttributeValueAssertion value) {
163        this.equalityMatch = value;
164    }
165
166    /**
167     * Gets the value of the substrings property.
168     * 
169     * @return
170     *     possible object is
171     *     {@link SubstringFilter }
172     *     
173     */
174    public SubstringFilter getSubstrings() {
175        return substrings;
176    }
177
178    /**
179     * Sets the value of the substrings property.
180     * 
181     * @param value
182     *     allowed object is
183     *     {@link SubstringFilter }
184     *     
185     */
186    public void setSubstrings(SubstringFilter value) {
187        this.substrings = value;
188    }
189
190    /**
191     * Gets the value of the greaterOrEqual property.
192     * 
193     * @return
194     *     possible object is
195     *     {@link AttributeValueAssertion }
196     *     
197     */
198    public AttributeValueAssertion getGreaterOrEqual() {
199        return greaterOrEqual;
200    }
201
202    /**
203     * Sets the value of the greaterOrEqual property.
204     * 
205     * @param value
206     *     allowed object is
207     *     {@link AttributeValueAssertion }
208     *     
209     */
210    public void setGreaterOrEqual(AttributeValueAssertion value) {
211        this.greaterOrEqual = value;
212    }
213
214    /**
215     * Gets the value of the lessOrEqual property.
216     * 
217     * @return
218     *     possible object is
219     *     {@link AttributeValueAssertion }
220     *     
221     */
222    public AttributeValueAssertion getLessOrEqual() {
223        return lessOrEqual;
224    }
225
226    /**
227     * Sets the value of the lessOrEqual property.
228     * 
229     * @param value
230     *     allowed object is
231     *     {@link AttributeValueAssertion }
232     *     
233     */
234    public void setLessOrEqual(AttributeValueAssertion value) {
235        this.lessOrEqual = value;
236    }
237
238    /**
239     * Gets the value of the present property.
240     * 
241     * @return
242     *     possible object is
243     *     {@link AttributeDescription }
244     *     
245     */
246    public AttributeDescription getPresent() {
247        return present;
248    }
249
250    /**
251     * Sets the value of the present property.
252     * 
253     * @param value
254     *     allowed object is
255     *     {@link AttributeDescription }
256     *     
257     */
258    public void setPresent(AttributeDescription value) {
259        this.present = value;
260    }
261
262    /**
263     * Gets the value of the approxMatch property.
264     * 
265     * @return
266     *     possible object is
267     *     {@link AttributeValueAssertion }
268     *     
269     */
270    public AttributeValueAssertion getApproxMatch() {
271        return approxMatch;
272    }
273
274    /**
275     * Sets the value of the approxMatch property.
276     * 
277     * @param value
278     *     allowed object is
279     *     {@link AttributeValueAssertion }
280     *     
281     */
282    public void setApproxMatch(AttributeValueAssertion value) {
283        this.approxMatch = value;
284    }
285
286    /**
287     * Gets the value of the extensibleMatch property.
288     * 
289     * @return
290     *     possible object is
291     *     {@link MatchingRuleAssertion }
292     *     
293     */
294    public MatchingRuleAssertion getExtensibleMatch() {
295        return extensibleMatch;
296    }
297
298    /**
299     * Sets the value of the extensibleMatch property.
300     * 
301     * @param value
302     *     allowed object is
303     *     {@link MatchingRuleAssertion }
304     *     
305     */
306    public void setExtensibleMatch(MatchingRuleAssertion value) {
307        this.extensibleMatch = value;
308    }
309
310}