|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object
org.identityconnectors.framework.common.objects.filter.FilterBuilder
public final class FilterBuilder
FilterBuilder creates a filter that will match any ConnectorObject
or EmbeddedObject
that satisfies all of the selection criteria that were specified using this builder.
Constructor Summary | |
---|---|
FilterBuilder() |
Method Summary | |
---|---|
static Filter |
and(Filter leftHandSide, Filter rightHandSide) Logically "ANDs" together the two specified instances of Filter . |
static Filter |
contains(Attribute attr) Select only an input ConnectorObject or EmbeddedObject with a value for the specified Attribute that contains as any substring the value of the specified Attribute . |
static Filter |
containsAllValues(Attribute attr) Select only an input ConnectorObject with a value for the or EmbeddedObject specified Attribute that contains all the values from the specified Attribute . |
static Filter |
containsIgnoreCase(Attribute attr) Select only an input ConnectorObject or EmbeddedObject with a value for the specified Attribute that contains as any substring (ignoring case) the value of the specified Attribute . |
static Filter |
embeddedObject(java.lang.String attributeName, Filter filter) Applies the specified instance of Filter to each of the EmbeddedObject s that constitute the value of the specified attribute name of a ConnectorObject or EmbeddedObject . |
static Filter |
endsWith(Attribute attr) Select only an input ConnectorObject or EmbeddedObject with a value for the specified Attribute that contains as a final substring the value of the specified Attribute . |
static Filter |
endsWithIgnoreCase(Attribute attr) Select only an input ConnectorObject or EmbeddedObject with a value for the specified Attribute that contains as a final substring (ignoring case) the value of the specified Attribute . |
static Filter |
equalTo(Attribute attr) Select only an input ConnectorObject or EmbeddedObject with a value for the specified Attribute that is lexically equal to the value of the specified Attribute . |
static Filter |
equalToIgnoreCase(Attribute attr) Select only an input ConnectorObject or EmbeddedObject with a value for the specified Attribute that is lexically equal to the value of the specified Attribute . |
static Filter |
greaterThan(Attribute attr) Select only an input ConnectorObject or EmbeddedObject with a value for the specified Attribute that is lexically greater than the value of the specified Attribute . |
static Filter |
greaterThanOrEqualTo(Attribute attr) Select only an input ConnectorObject or EmbeddedObject with a value for the specified Attribute that is lexically greater than or equal to the value of the specified Attribute . |
static Filter |
lessThan(Attribute attr) Select only an input ConnectorObject or EmbeddedObject with a value for the specified Attribute that is lexically less than the value of the specified Attribute . |
static Filter |
lessThanOrEqualTo(Attribute attr) Select only an input ConnectorObject or EmbeddedObject with a value for the specified Attribute that is lexically less than or equal to the value of the specified Attribute . |
static Filter |
not(Filter filter) Logically negate the specified Filter . |
static Filter |
or(Filter leftHandSide, Filter rightHandSide) Logically "OR" together the two specified instances of Filter . |
static Filter |
startsWith(Attribute attr) Select only an input ConnectorObject or EmbeddedObject with a value for the specified Attribute that contains as an initial substring the value of the specified Attribute . |
static Filter |
startsWithIgnoreCase(Attribute attr) Select only an input ConnectorObject or EmbeddedObject with a value for the specified Attribute that contains as an initial substring (ignoring case) the value of the specified Attribute . |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public FilterBuilder()
Method Detail |
---|
public static Filter endsWith(Attribute attr)
ConnectorObject
or EmbeddedObject
with a value for the specified Attribute
that contains as a final substring the value of the specified Attribute
.
For example, if the specified Attribute
were {"hairColor": "d"}
,
this would match any ConnectorObject
with a value such as
{"hairColor": "red"}
or
{"hairColor": "blond"}
but would not match any ConnectorObject
that contains only values such as
{"hairColor": "blonde"}
or
{"hairColor": "auburn"}
.
This also would not match any ConnectorObject
that contains only {"hairColor": null}
or that lacks the attribute "hairColor"
.
attr
- Attribute
containing exactly one value to test against each value of the corresponding ConnectorObject
or EmbeddedObject
attribute.Filter
whose accept()
method will return true
if at least one value of the corresponding attribute of the ConnectorObject
or EmbeddedObject
contains as its last part the value of the specified Attribute
; otherwise false
.public static Filter endsWithIgnoreCase(Attribute attr)
ConnectorObject
or EmbeddedObject
with a value for the specified Attribute
that contains as a final substring (ignoring case) the value of the specified Attribute
.
For example, if the specified Attribute
were {"hairColor": "D"}
,
this would match any ConnectorObject
with a value such as
{"hairColor": "red"}
or
{"hairColor": "blond"}
but would not match any ConnectorObject
that contains only values such as
{"hairColor": "blonde"}
or
{"hairColor": "auburn"}
.
This also would not match any ConnectorObject
that contains only {"hairColor": null}
or that lacks the attribute "hairColor"
.
attr
- Attribute
containing exactly one value to test against each value of the corresponding ConnectorObject
or EmbeddedObject
attribute.Filter
whose accept()
method will return true
if at least one value of the corresponding attribute of the ConnectorObject
or EmbeddedObject
contains as its last part the value of the specified Attribute
; otherwise false
.public static Filter startsWith(Attribute attr)
ConnectorObject
or EmbeddedObject
with a value for the specified Attribute
that contains as an initial substring the value of the specified Attribute
.
For example, if the specified Attribute
were {"hairColor": "b"}
,
this would match any ConnectorObject
with a value such as
{"hairColor": "brown"}
or
{"hairColor": "blond"}
but would not match any ConnectorObject
that contains only values such as
{"hairColor": "red"}
or
{"hairColor": "auburn"}
.
This also would not match any ConnectorObject
that contains only {"hairColor": null}
or that lacks the attribute "hairColor"
.
attr
- Attribute
containing exactly one value to test against each value of the corresponding ConnectorObject
or EmbeddedObject
attribute.Filter
whose accept()
method will return true
if at least one value of the corresponding attribute of the ConnectorObject
or EmbeddedObject
contains as its first part the value of the specified Attribute
; otherwise false
.public static Filter startsWithIgnoreCase(Attribute attr)
ConnectorObject
or EmbeddedObject
with a value for the specified Attribute
that contains as an initial substring (ignoring case) the value of the specified Attribute
.
For example, if the specified Attribute
were {"hairColor": "B"}
,
this would match any ConnectorObject
with a value such as
{"hairColor": "brown"}
or
{"hairColor": "blond"}
but would not match any ConnectorObject
that contains only values such as
{"hairColor": "red"}
or
{"hairColor": "auburn"}
.
This also would not match any ConnectorObject
that contains only {"hairColor": null}
or that lacks the attribute "hairColor"
.
attr
- Attribute
containing exactly one value to test against each value of the corresponding ConnectorObject
or EmbeddedObject
attribute.Filter
whose accept()
method will return true
if at least one value of the corresponding attribute of the ConnectorObject
or EmbeddedObject
contains as its first part the value of the specified Attribute
; otherwise false
.public static Filter contains(Attribute attr)
ConnectorObject
or EmbeddedObject
with a value for the specified Attribute
that contains as any substring the value of the specified Attribute
.
For example, if the specified Attribute
were {"hairColor": "a"}
,
this would match any ConnectorObject
with a value such as
{"hairColor": "auburn"}
or
{"hairColor": "gray"}
but would not match any ConnectorObject
that contains only
{"hairColor": "red"}
or
{"hairColor": "grey"}
.
This also would not match any ConnectorObject
that contains only {"hairColor": null}
or that lacks the attribute "hairColor"
.
attr
- Attribute
containing exactly one value to test against each value of the corresponding ConnectorObject
or EmbeddedObject
attribute.Filter
whose accept()
method will return true
if at least one value of the corresponding attribute of the ConnectorObject
or EmbeddedObject
contains anywhere within it the value of the specified Attribute
; otherwise false
.public static Filter containsIgnoreCase(Attribute attr)
ConnectorObject
or EmbeddedObject
with a value for the specified Attribute
that contains as any substring (ignoring case) the value of the specified Attribute
.
For example, if the specified Attribute
were {"hairColor": "A"}
,
this would match any ConnectorObject
with a value such as
{"hairColor": "auburn"}
or
{"hairColor": "gray"}
but would not match any ConnectorObject
that contains only
{"hairColor": "red"}
or
{"hairColor": "grey"}
.
This also would not match any ConnectorObject
that contains only {"hairColor": null}
or that lacks the attribute "hairColor"
.
attr
- Attribute
containing exactly one value to test against each value of the corresponding ConnectorObject
or EmbeddedObject
attribute.Filter
whose accept()
method will return true
if at least one value of the corresponding attribute of the ConnectorObject
or EmbeddedObject
contains anywhere within it the value of the specified Attribute
; otherwise false
.public static Filter equalTo(Attribute attr)
ConnectorObject
or EmbeddedObject
with a value for the specified Attribute
that is lexically equal to the value of the specified Attribute
.
NOTE: The comparison is case-sensitive
For example, if the specified Attribute
were {"hairColor": "brown"}
,
this would match any ConnectorObject
with a value such as
{"hairColor": "brown"}
or
{"hairColor": "BROWN"}
but would not match any ConnectorObject
that contains only
{"hairColor": "brownish-gray"}
or
{"hairColor": "auburn"}
.
This also would not match any ConnectorObject
that contains only {"hairColor": null}
or that lacks the attribute "hairColor"
.
NOTE: Lexical comparison of two string values compares the characters of each value, even if the string values could be interpreted as numeric. The values "01"
and "1"
are unequal lexically, although they would be equivalent arithmetically.
Two attributes with binary syntax are equal if and only if their constituent bytes match.
attr
- Attribute
containing exactly one value to test against each value of the corresponding ConnectorObject
or EmbeddedObject
attribute.Filter
whose accept()
method will return true
if at least one value of the corresponding attribute of the ConnectorObject
or EmbeddedObject
matches lexically the value of the specified Attribute
; otherwise false
.public static Filter equalToIgnoreCase(Attribute attr)
ConnectorObject
or EmbeddedObject
with a value for the specified Attribute
that is lexically equal to the value of the specified Attribute
.
NOTE: The comparison is NOT case-sensitive
For example, if the specified Attribute
were {"hairColor": "brown"}
,
this would match any ConnectorObject
with a value such as
{"hairColor": "brown"}
or
{"hairColor": "BROWN"}
but would not match any ConnectorObject
that contains only
{"hairColor": "brownish-gray"}
or
{"hairColor": "auburn"}
.
This also would not match any ConnectorObject
that contains only {"hairColor": null}
or that lacks the attribute "hairColor"
.
NOTE: Lexical comparison of two string values compares the characters of each value, even if the string values could be interpreted as numeric. The values "01"
and "1"
are unequal lexically, although they would be equivalent arithmetically.
Two attributes with binary syntax are equal if and only if their constituent bytes match.
attr
- Attribute
containing exactly one value to test against each value of the corresponding ConnectorObject
or EmbeddedObject
attribute.Filter
whose accept()
method will return true
if at least one value of the corresponding attribute of the ConnectorObject
or EmbeddedObject
matches lexically the value of the specified Attribute
; otherwise false
.public static Filter greaterThanOrEqualTo(Attribute attr)
ConnectorObject
or EmbeddedObject
with a value for the specified Attribute
that is lexically greater than or equal to the value of the specified Attribute
.
NOTE: Is comparison case-sensitive?
For example, if the specified Attribute
were {"hairColor": "brown"}
,
this would match any ConnectorObject
with a value such as
{"hairColor": "brown"}
or
{"hairColor": "brownish-gray"}
or
{"hairColor": "red"}
but would not match any ConnectorObject
that contains only
{"hairColor": "black"}
or
{"hairColor": "blond"}
or
{"hairColor": "auburn"}
.
This also would not match any ConnectorObject
that contains only {"hairColor": null}
or that lacks the attribute "hairColor"
.
NOTE: Lexical comparison of two string values compares the characters of each value, even if the string values could be interpreted as numeric.
When compared lexically, "99"
is greater than "123"
.
When compared arithmetically, 99
is less than 123
.
attr
- Attribute
containing exactly one value to test against each value of the corresponding ConnectorObject
or EmbeddedObject
attribute.Filter
whose accept()
method will return true
if at least one value of the corresponding attribute of the ConnectorObject
or EmbeddedObject
matches or sorts alphabetically after the value of the specified Attribute
; otherwise false
.public static Filter lessThanOrEqualTo(Attribute attr)
ConnectorObject
or EmbeddedObject
with a value for the specified Attribute
that is lexically less than or equal to the value of the specified Attribute
.
NOTE: Is comparison case-sensitive?
For example, if the specified Attribute
were {"hairColor": "brown"}
,
this would match any ConnectorObject
with a value such as
{"hairColor": "brown"}
or
{"hairColor": "black"}
or
{"hairColor": "blond"}
or
{"hairColor": "auburn"}
but would not match any ConnectorObject
that contains only
{"hairColor": "brownish-gray"}
or
{"hairColor": "red"}
This also would not match any ConnectorObject
that contains only {"hairColor": null}
or that lacks the attribute "hairColor"
.
NOTE: Lexical comparison of two string values compares the characters of each value, even if the string values could be interpreted as numeric.
When compared lexically, "99"
is greater than "123"
.
When compared arithmetically, 99
is less than 123
.
attr
- Attribute
containing exactly one value to test against each value of the corresponding ConnectorObject
or EmbeddedObject
attribute.Filter
whose accept()
method will return true
if at least one value of the corresponding attribute of the ConnectorObject
or EmbeddedObject
matches or sorts alphabetically before the value of the specified Attribute
; otherwise false
.public static Filter lessThan(Attribute attr)
ConnectorObject
or EmbeddedObject
with a value for the specified Attribute
that is lexically less than the value of the specified Attribute
.
NOTE: Is comparison case-sensitive?
For example, if the specified Attribute
were {"hairColor": "brown"}
,
this would match any ConnectorObject
with a value such as
{"hairColor": "black"}
or
{"hairColor": "blond"}
or
{"hairColor": "auburn"}
but would not match any ConnectorObject
that contains only
{"hairColor": "brown"}
or
{"hairColor": "brownish-gray"}
or
{"hairColor": "red"}
This also would not match any ConnectorObject
that contains only {"hairColor": null}
or that lacks the attribute "hairColor"
.
NOTE: Lexical comparison of two string values compares the characters of each value, even if the string values could be interpreted as numeric.
When compared lexically, "99"
is greater than "123"
.
When compared arithmetically, 99
is less than 123
.
attr
- Attribute
containing exactly one value to test against each value of the corresponding ConnectorObject
or EmbeddedObject
attribute.Filter
whose accept()
method will return true
if at least one value of the corresponding attribute of the ConnectorObject
or EmbeddedObject
sorts alphabetically before the value of the specified Attribute
; otherwise false
.public static Filter greaterThan(Attribute attr)
ConnectorObject
or EmbeddedObject
with a value for the specified Attribute
that is lexically greater than the value of the specified Attribute
.
NOTE: Is comparison case-sensitive?
For example, if the specified Attribute
were {"hairColor": "brown"}
,
this would match any ConnectorObject
with a value such as
{"hairColor": "brownish-gray"}
or
{"hairColor": "red"}
but would not match any ConnectorObject
that contains only
{"hairColor": "brown"}
or
{"hairColor": "black"}
or
{"hairColor": "blond"}
or
{"hairColor": "auburn"}
.
This also would not match any ConnectorObject
that contains only {"hairColor": null}
or that lacks the attribute "hairColor"
.
NOTE: Lexical comparison of two string values compares the characters of each value, even if the string values could be interpreted as numeric.
When compared lexically, "99"
is greater than "123"
.
When compared arithmetically, 99
is less than 123
.
attr
- Attribute
containing exactly one value to test against each value of the corresponding ConnectorObject
or EmbeddedObject
attribute.Filter
whose accept()
method will return true
if at least one value of the corresponding attribute of the ConnectorObject
or EmbeddedObject
sorts alphabetically after the value of the specified Attribute
; otherwise false
.public static Filter and(Filter leftHandSide, Filter rightHandSide)
Filter
. The resulting conjunct Filter
is true if and only if both of the specified filters are true.leftHandSide
- left-hand-side filter.rightHandSide
- right-hand-side filter.(leftHandSide && rightHandSide)
public static Filter or(Filter leftHandSide, Filter rightHandSide)
Filter
. The resulting disjunct Filter
is true if and only if at least one of the specified filters is true.leftHandSide
- left-hand-side filter.rightHandSide
- right-hand-side filter.(leftHandSide || rightHandSide)
public static Filter not(Filter filter)
Filter
. The resulting Filter
is true if and only if the specified filter is false.filter
- the Filter
to negate.(!filter)
.public static Filter embeddedObject(java.lang.String attributeName, Filter filter)
Filter
to each of the EmbeddedObject
s that constitute the value of the specified attribute name of a ConnectorObject
or EmbeddedObject
.attributeName
- the name of the attribute holding EmbeddedObject
s.filter
- the filter to apply to the EmbeddedObject
s that are values of the attributeName
attribute.Filter
whose accept()
method will return true if and only if the Filter
specified in the filter
parameter is true for at least one of the EmbeddedObject
s that are values of the attributeName
attribute.public static Filter containsAllValues(Attribute attr)
ConnectorObject
with a value for the or EmbeddedObject
specified Attribute
that contains all the values from the specified Attribute
.
For example, if the specified Attribute
were {"hairColor": "brown", "red"}
,
this would match any ConnectorObject
with values such as
{"hairColor": "black", "brown", "red"}
{"hairColor": "blond", "brown", "red"}
{"hairColor": "auburn", "brown", "red"}
ConnectorObject
that contains only
{"hairColor": "brown"}
{"hairColor": "brownish-gray"}
{"hairColor": "red"}
ConnectorObject
that contains only {"hairColor": null}
"hairColor"
.
NOTE: Lexical comparison of two string values compares the characters of each value, even if the string values could be interpreted as numeric.
attr
- Attribute
containing exactly one value to test against each value of the corresponding ConnectorObject
or EmbeddedObject
attribute.Filter
whose accept()
method will return true
if at least one value of the corresponding attribute of the ConnectorObject
or EmbeddedObject
sorts alphabetically before the value of the specified Attribute
; otherwise false
.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |