Package org.forgerock.opendj.ldap
Class AttributeParser
java.lang.Object
org.forgerock.opendj.ldap.AttributeParser
A fluent API for parsing attributes as different types of object. An
attribute parser is obtained from an entry using the method
Entry.parseAttribute(org.forgerock.opendj.ldap.AttributeDescription) or from an attribute using
Attribute.parse().
Methods throw an IllegalArgumentException when a value cannot be
parsed (e.g. because its syntax is invalid). Methods which return a
Set always return a modifiable non-null result, even if the
attribute is null or empty.
Examples:
Entry entry = ...;
Calendar timestamp = entry.parseAttribute("createTimestamp").asCalendar();
boolean isEnabled = entry.parseAttribute("enabled").asBoolean(false);
Entry group = ...;
Schema schema = ...;
Set<DN> members = group.parseAttribute("member").usingSchema(schema).asSetOfDN();
-
Method Summary
Modifier and TypeMethodDescription<T,E extends Exception>
Tas(Function<ByteString, ? extends T, E> f) Returns the first value decoded as aTusing the providedFunction, ornullif the attribute does not contain any values.<T,E extends Exception>
Tas(Function<ByteString, ? extends T, E> f, T defaultValue) Returns the first value decoded as aTusing the providedFunction, ordefaultValueif the attribute does not contain any values.Returns the first value decoded as anAttributeDescriptionusing the schema associated with this parser, ornullif the attribute does not contain any values.asAttributeDescription(String defaultValue) Returns the first value decoded as anAttributeDescriptionusing the schema associated with this parser, ordefaultValueif the attribute does not contain any values.asAttributeDescription(AttributeDescription defaultValue) Returns the first value decoded as anAttributeDescriptionusing the schema associated with this parser, ordefaultValueif the attribute does not contain any values.Returns the first value decoded as a boolean, ornullif the attribute does not contain any values.booleanasBoolean(boolean defaultValue) Returns the first value decoded as anBoolean, ordefaultValueif the attribute does not contain any values.Returns the first value, ornullif the attribute does not contain any values.asByteString(ByteString defaultValue) Returns the first value, ordefaultValueif the attribute does not contain any values.Returns the first value decoded as aX509Certificate, ornullif the attribute does not contain any values.asCertificate(X509Certificate defaultValue) Returns the first value decoded as aX509Certificate, ordefaultValueif the attribute does not contain any values.asDn()Returns the first value decoded as aDNusing the schema associated with this parser, ornullif the attribute does not contain any values.Returns the first value decoded as aDNusing the schema associated with this parser, ordefaultValueif the attribute does not contain any values.Returns the first value decoded as aDNusing the schema associated with this parser, ordefaultValueif the attribute does not contain any values.asDuration(Duration defaultValue) Returns the first value decoded as aDurationordefaultValueif the attribute does not contain any values.Returns the first value decoded as aGeneralizedTimeusing the generalized time syntax, ornullif the attribute does not contain any values.asGeneralizedTime(GeneralizedTime defaultValue) Returns the first value decoded as anGeneralizedTimeusing the generalized time syntax, ordefaultValueif the attribute does not contain any values.Returns the first value decoded as anInteger, ornullif the attribute does not contain any values.intasInteger(int defaultValue) Returns the first value decoded as anInteger, ordefaultValueif the attribute does not contain any values.asLong()Returns the first value decoded as aLong, ornullif the attribute does not contain any values.longasLong(long defaultValue) Returns the first value decoded as aLong, ordefaultValueif the attribute does not contain any values.asPath()Returns the first value decoded as aPath, ornullif the attribute does not contain any values.Returns the first value decoded as aPath, or defaultValue if the attribute does not contain any values.asSetOf(Function<ByteString, ? extends T, E> f, Collection<? extends T> defaultValues) Returns the values decoded as a set ofTs using the providedFunction, ordefaultValuesif the attribute does not contain any values.asSetOf(Function<ByteString, ? extends T, E> f, T... defaultValues) Returns the values decoded as a set ofTs using the providedFunction, ordefaultValuesif the attribute does not contain any values.Returns the values decoded as a set ofAttributeDescriptions using the schema associated with this parser, or an empty set if the attribute does not contain any values.asSetOfAttributeDescription(String... defaultValues) Returns the values decoded as a set ofAttributeDescriptions using the schema associated with this parser, ordefaultValuesif the attribute does not contain any values.asSetOfAttributeDescription(Collection<AttributeDescription> defaultValues) Returns the values decoded as a set ofAttributeDescriptions using the schema associated with this parser, ordefaultValuesif the attribute does not contain any values.asSetOfAttributeDescription(AttributeDescription... defaultValues) Returns the values decoded as a set ofAttributeDescriptions using the schema associated with this parser, ordefaultValuesif the attribute does not contain any values.asSetOfBoolean(Boolean... defaultValues) Returns the values decoded as a set ofBooleans, ordefaultValuesif the attribute does not contain any values.asSetOfBoolean(Collection<Boolean> defaultValues) Returns the values decoded as a set ofBooleans, ordefaultValuesif the attribute does not contain any values.asSetOfByteString(Collection<ByteString> defaultValues) Returns the values contained in the attribute, ordefaultValuesif the attribute does not contain any values.asSetOfByteString(ByteString... defaultValues) Returns the values contained in the attribute, ordefaultValuesif the attribute does not contain any values.Returns the values decoded as a set ofX509Certificates, or an empty set if the attribute does not contain any values.Returns the values decoded as a set ofDNs using the schema associated with this parser, or an empty set if the attribute does not contain any values.Returns the values decoded as a set ofDNs using the schema associated with this parser, ordefaultValuesif the attribute does not contain any values.asSetOfDn(Collection<Dn> defaultValues) Returns the values decoded as a set ofDNs using the schema associated with this parser, ordefaultValuesif the attribute does not contain any values.Returns the values decoded as a set ofDNs using the schema associated with this parser, ordefaultValuesif the attribute does not contain any values.asSetOfGeneralizedTime(Collection<GeneralizedTime> defaultValues) Returns the values decoded as a set ofGeneralizedTimes using the generalized time syntax, ordefaultValuesif the attribute does not contain any values.asSetOfGeneralizedTime(GeneralizedTime... defaultValues) Returns the values decoded as a set ofGeneralizedTimes using the generalized time syntax, ordefaultValuesif the attribute does not contain any values.asSetOfInteger(Integer... defaultValues) Returns the values decoded as a set ofIntegers, ordefaultValuesif the attribute does not contain any values.asSetOfInteger(Collection<Integer> defaultValues) Returns the values decoded as a set ofIntegers, ordefaultValuesif the attribute does not contain any values.asSetOfLong(Long... defaultValues) Returns the values decoded as a set ofLongs, ordefaultValuesif the attribute does not contain any values.asSetOfLong(Collection<Long> defaultValues) Returns the values decoded as a set ofLongs, ordefaultValuesif the attribute does not contain any values.asSetOfString(String... defaultValues) Returns the values decoded as a set ofStrings, ordefaultValuesif the attribute does not contain any values.asSetOfString(Collection<String> defaultValues) Returns the values decoded as a set ofStrings, ordefaultValuesif the attribute does not contain any values.asSetOfString(Function<String, ? extends T, E> f, Collection<? extends T> defaultValues) Returns the values decoded as a set ofTs from their string representations using the providedFunction, ordefaultValuesif the attribute does not contain any values.asSetOfString(Function<String, ? extends T, E> f, T... defaultValues) Returns the values decoded as a set ofTs from their string representations using the providedFunction, ordefaultValuesif the attribute does not contain any values.asStream()Returns the values as a stream ofByteString.asString()Returns the first value decoded as aString, ornullif the attribute does not contain any values.Returns the first value decoded as aString, ordefaultValueif the attribute does not contain any values.<T,E extends Exception>
TReturns the first value decoded as aTfrom its string representation using the providedFunction, ornullif the attribute does not contain any values.<T,E extends Exception>
TReturns the first value decoded as aTfrom its string representation using the providedFunction, or thedefaultValueif the attribute does not contain any values.static AttributeParserparseAttribute(Attribute attribute) Returns an attribute parser for the provided attribute.Throws aLocalizedIllegalArgumentExceptionif the attribute referenced by this parser isnullor empty.usingSchema(Schema schema) Sets theSchemawhich will be used when parsing schema sensitive values such as DNs and attribute descriptions.
-
Method Details
-
parseAttribute
Returns an attribute parser for the provided attribute.- Parameters:
attribute- The attribute to be parsed, which must not benull.- Returns:
- The attribute parser.
- Throws:
NullPointerException- ifattributeisnull.
-
asString
Returns the first value decoded as aTfrom its string representation using the providedFunction, ornullif the attribute does not contain any values.- Type Parameters:
T- The type of the value to be decoded.E- The type of exception thrown by the function.- Parameters:
f- The function which should be used to decode the value from aString.- Returns:
- The first value decoded as a
T, ornullif there is no value. - Throws:
E- If an error occurred when parsing the attribute.
-
asString
public <T,E extends Exception> T asString(Function<String, ? extends T, throws EE> f, T defaultValue) Returns the first value decoded as aTfrom its string representation using the providedFunction, or thedefaultValueif the attribute does not contain any values.- Type Parameters:
T- The type of the value to be decoded.E- The type of exception thrown by the function.- Parameters:
f- The function which should be used to decode the value from aString.defaultValue- The default value to return if the attribute is empty.- Returns:
- The first value decoded as a
T, ordefaultValueif there is no value. - Throws:
E- If an error occurred when parsing the attribute.
-
as
Returns the first value decoded as aTusing the providedFunction, ornullif the attribute does not contain any values.- Type Parameters:
T- The type of the value to be decoded.E- The type of exception thrown by the function.- Parameters:
f- The function which should be used to decode the value.- Returns:
- The first value decoded as a
T. - Throws:
E- If an error occurred when parsing the attribute.
-
as
Returns the first value decoded as aTusing the providedFunction, ordefaultValueif the attribute does not contain any values.- Type Parameters:
T- The type of the value to be decoded.E- The type of exception thrown by the function.- Parameters:
f- The function which should be used to decode the value.defaultValue- The default value to return if the attribute is empty.- Returns:
- The first value decoded as a
T. - Throws:
E- If an error occurred when parsing the attribute.
-
asAttributeDescription
Returns the first value decoded as anAttributeDescriptionusing the schema associated with this parser, ornullif the attribute does not contain any values.- Returns:
- The first value decoded as an
AttributeDescription.
-
asAttributeDescription
Returns the first value decoded as anAttributeDescriptionusing the schema associated with this parser, ordefaultValueif the attribute does not contain any values.- Parameters:
defaultValue- The default value to return if the attribute is empty.- Returns:
- The first value decoded as an
AttributeDescription.
-
asAttributeDescription
Returns the first value decoded as anAttributeDescriptionusing the schema associated with this parser, ordefaultValueif the attribute does not contain any values.- Parameters:
defaultValue- The default value to return if the attribute is empty.- Returns:
- The first value decoded as an
AttributeDescription.
-
asBoolean
Returns the first value decoded as a boolean, ornullif the attribute does not contain any values.- Returns:
- The first value decoded as a boolean.
-
asBoolean
public boolean asBoolean(boolean defaultValue) Returns the first value decoded as anBoolean, ordefaultValueif the attribute does not contain any values.- Parameters:
defaultValue- The default value to return if the attribute is empty.- Returns:
- The first value decoded as an
Boolean.
-
asByteString
Returns the first value, ornullif the attribute does not contain any values.- Returns:
- The first value.
-
asByteString
Returns the first value, ordefaultValueif the attribute does not contain any values.- Parameters:
defaultValue- The default value to return if the attribute is empty.- Returns:
- The first value.
-
asCertificate
Returns the first value decoded as aX509Certificate, ornullif the attribute does not contain any values.- Returns:
- The first value decoded as a
X509Certificate.
-
asCertificate
Returns the first value decoded as aX509Certificate, ordefaultValueif the attribute does not contain any values.- Parameters:
defaultValue- The default value to return if the attribute is empty.- Returns:
- The first value decoded as a
X509Certificate.
-
asDn
Returns the first value decoded as aDNusing the schema associated with this parser, ornullif the attribute does not contain any values.- Returns:
- The first value decoded as a
DN.
-
asDn
Returns the first value decoded as aDNusing the schema associated with this parser, ordefaultValueif the attribute does not contain any values.- Parameters:
defaultValue- The default value to return if the attribute is empty.- Returns:
- The first value decoded as a
DN.
-
asDn
Returns the first value decoded as aDNusing the schema associated with this parser, ordefaultValueif the attribute does not contain any values.- Parameters:
defaultValue- The default value to return if the attribute is empty.- Returns:
- The first value decoded as a
DN.
-
asDuration
Returns the first value decoded as aDurationordefaultValueif the attribute does not contain any values.- Parameters:
defaultValue- The default value to return if the attribute is empty.- Returns:
- The first value decoded as a
Duration.
-
asGeneralizedTime
Returns the first value decoded as aGeneralizedTimeusing the generalized time syntax, ornullif the attribute does not contain any values.- Returns:
- The first value decoded as a
GeneralizedTime.
-
asGeneralizedTime
Returns the first value decoded as anGeneralizedTimeusing the generalized time syntax, ordefaultValueif the attribute does not contain any values.- Parameters:
defaultValue- The default value to return if the attribute is empty.- Returns:
- The first value decoded as an
GeneralizedTime.
-
asInteger
Returns the first value decoded as anInteger, ornullif the attribute does not contain any values.- Returns:
- The first value decoded as an
Integer.
-
asInteger
public int asInteger(int defaultValue) Returns the first value decoded as anInteger, ordefaultValueif the attribute does not contain any values.- Parameters:
defaultValue- The default value to return if the attribute is empty.- Returns:
- The first value decoded as an
Integer.
-
asLong
Returns the first value decoded as aLong, ornullif the attribute does not contain any values.- Returns:
- The first value decoded as a
Long.
-
asLong
public long asLong(long defaultValue) Returns the first value decoded as aLong, ordefaultValueif the attribute does not contain any values.- Parameters:
defaultValue- The default value to return if the attribute is empty.- Returns:
- The first value decoded as a
Long.
-
asPath
Returns the first value decoded as aPath, ornullif the attribute does not contain any values.- Returns:
- The first value decoded as a
Path. - Throws:
LocalizedIllegalArgumentException- If an invalid value is provided.
-
asPath
Returns the first value decoded as aPath, or defaultValue if the attribute does not contain any values.- Parameters:
defaultValue- The default value to return if the attribute is empty.- Returns:
- The first value decoded as a
Path. - Throws:
LocalizedIllegalArgumentException- If an invalid value is provided.
-
asSetOfString
@SafeVarargs public final <T,E extends Exception> Set<T> asSetOfString(Function<String, ? extends T, throws EE> f, T... defaultValues) Returns the values decoded as a set ofTs from their string representations using the providedFunction, ordefaultValuesif the attribute does not contain any values.- Type Parameters:
T- The type of the values to be decoded.E- The type of exception thrown by the function.- Parameters:
f- The function which should be used to decode values fromStrings.defaultValues- The default values to return if the attribute is empty.- Returns:
- The values decoded as a set of
Ts. - Throws:
E- If an error occurred when parsing the attribute.
-
asSetOfString
public <T,E extends Exception> Set<T> asSetOfString(Function<String, ? extends T, throws EE> f, Collection<? extends T> defaultValues) Returns the values decoded as a set ofTs from their string representations using the providedFunction, ordefaultValuesif the attribute does not contain any values.- Type Parameters:
T- The type of the values to be decoded.E- The type of exception thrown by the function.- Parameters:
f- The function which should be used to decode values fromStringsdefaultValues- The default values to return if the attribute is empty.- Returns:
- The values decoded as a set of
Ts. - Throws:
E- If an error occurred when parsing the attribute.
-
asSetOf
@SafeVarargs public final <T,E extends Exception> Set<T> asSetOf(Function<ByteString, ? extends T, throws EE> f, T... defaultValues) Returns the values decoded as a set ofTs using the providedFunction, ordefaultValuesif the attribute does not contain any values.- Type Parameters:
T- The type of the values to be decoded.E- The type of exception thrown by the function.- Parameters:
f- The function which should be used to decode values.defaultValues- The default values to return if the attribute is empty.- Returns:
- The values decoded as a set of
Ts. - Throws:
E- If an error occurred when parsing the attribute.
-
asSetOf
public <T,E extends Exception> Set<T> asSetOf(Function<ByteString, ? extends T, throws EE> f, Collection<? extends T> defaultValues) Returns the values decoded as a set ofTs using the providedFunction, ordefaultValuesif the attribute does not contain any values.- Type Parameters:
T- The type of the values to be decoded.E- The type of exception thrown by the function.- Parameters:
f- The function which should be used to decode values.defaultValues- The default values to return if the attribute is empty.- Returns:
- The values decoded as a set of
Ts. - Throws:
E- If an error occurred when parsing the attribute.
-
asStream
Returns the values as a stream ofByteString. If the attribute is empty, this method will return an empty stream.- Returns:
- The values as a stream of
ByteString.
-
asSetOfAttributeDescription
Returns the values decoded as a set ofAttributeDescriptions using the schema associated with this parser, or an empty set if the attribute does not contain any values.- Returns:
- The values decoded as a set of
AttributeDescriptions.
-
asSetOfAttributeDescription
Returns the values decoded as a set ofAttributeDescriptions using the schema associated with this parser, ordefaultValuesif the attribute does not contain any values.- Parameters:
defaultValues- The default values to return if the attribute is empty.- Returns:
- The values decoded as a set of
AttributeDescriptions.
-
asSetOfAttributeDescription
public Set<AttributeDescription> asSetOfAttributeDescription(Collection<AttributeDescription> defaultValues) Returns the values decoded as a set ofAttributeDescriptions using the schema associated with this parser, ordefaultValuesif the attribute does not contain any values.- Parameters:
defaultValues- The default values to return if the attribute is empty.- Returns:
- The values decoded as a set of
AttributeDescriptions.
-
asSetOfAttributeDescription
Returns the values decoded as a set ofAttributeDescriptions using the schema associated with this parser, ordefaultValuesif the attribute does not contain any values.- Parameters:
defaultValues- The default values to return if the attribute is empty.- Returns:
- The values decoded as a set of
AttributeDescriptions.
-
asSetOfBoolean
Returns the values decoded as a set ofBooleans, ordefaultValuesif the attribute does not contain any values.- Parameters:
defaultValues- The default values to return if the attribute is empty.- Returns:
- The values decoded as a set of
Booleans.
-
asSetOfBoolean
Returns the values decoded as a set ofBooleans, ordefaultValuesif the attribute does not contain any values.- Parameters:
defaultValues- The default values to return if the attribute is empty.- Returns:
- The values decoded as a set of
Booleans.
-
asSetOfByteString
Returns the values contained in the attribute, ordefaultValuesif the attribute does not contain any values.- Parameters:
defaultValues- The default values to return if the attribute is empty.- Returns:
- The values contained in the attribute.
-
asSetOfByteString
Returns the values contained in the attribute, ordefaultValuesif the attribute does not contain any values.- Parameters:
defaultValues- The default values to return if the attribute is empty.- Returns:
- The values contained in the attribute.
-
asSetOfCertificate
Returns the values decoded as a set ofX509Certificates, or an empty set if the attribute does not contain any values.- Returns:
- The values decoded as a set of
X509Certificates.
-
asSetOfDn
Returns the values decoded as a set ofDNs using the schema associated with this parser, or an empty set if the attribute does not contain any values.- Returns:
- The values decoded as a set of
DNs.
-
asSetOfDn
Returns the values decoded as a set ofDNs using the schema associated with this parser, ordefaultValuesif the attribute does not contain any values.- Parameters:
defaultValues- The default values to return if the attribute is empty.- Returns:
- The values decoded as a set of
DNs.
-
asSetOfDn
Returns the values decoded as a set ofDNs using the schema associated with this parser, ordefaultValuesif the attribute does not contain any values.- Parameters:
defaultValues- The default values to return if the attribute is empty.- Returns:
- The values decoded as a set of
DNs.
-
asSetOfDn
Returns the values decoded as a set ofDNs using the schema associated with this parser, ordefaultValuesif the attribute does not contain any values.- Parameters:
defaultValues- The default values to return if the attribute is empty.- Returns:
- The values decoded as a set of
DNs.
-
asSetOfGeneralizedTime
Returns the values decoded as a set ofGeneralizedTimes using the generalized time syntax, ordefaultValuesif the attribute does not contain any values.- Parameters:
defaultValues- The default values to return if the attribute is empty.- Returns:
- The values decoded as a set of
GeneralizedTimes.
-
asSetOfGeneralizedTime
Returns the values decoded as a set ofGeneralizedTimes using the generalized time syntax, ordefaultValuesif the attribute does not contain any values.- Parameters:
defaultValues- The default values to return if the attribute is empty.- Returns:
- The values decoded as a set of
GeneralizedTimes.
-
asSetOfInteger
Returns the values decoded as a set ofIntegers, ordefaultValuesif the attribute does not contain any values.- Parameters:
defaultValues- The default values to return if the attribute is empty.- Returns:
- The values decoded as a set of
Integers.
-
asSetOfInteger
Returns the values decoded as a set ofIntegers, ordefaultValuesif the attribute does not contain any values.- Parameters:
defaultValues- The default values to return if the attribute is empty.- Returns:
- The values decoded as a set of
Integers.
-
asSetOfLong
Returns the values decoded as a set ofLongs, ordefaultValuesif the attribute does not contain any values.- Parameters:
defaultValues- The default values to return if the attribute is empty.- Returns:
- The values decoded as a set of
Longs.
-
asSetOfLong
Returns the values decoded as a set ofLongs, ordefaultValuesif the attribute does not contain any values.- Parameters:
defaultValues- The default values to return if the attribute is empty.- Returns:
- The values decoded as a set of
Longs.
-
asSetOfString
Returns the values decoded as a set ofStrings, ordefaultValuesif the attribute does not contain any values.- Parameters:
defaultValues- The default values to return if the attribute is empty.- Returns:
- The values decoded as a set of
Strings.
-
asSetOfString
Returns the values decoded as a set ofStrings, ordefaultValuesif the attribute does not contain any values.- Parameters:
defaultValues- The default values to return if the attribute is empty.- Returns:
- The values decoded as a set of
Strings.
-
asString
Returns the first value decoded as aString, ornullif the attribute does not contain any values.- Returns:
- The first value decoded as a
String.
-
asString
Returns the first value decoded as aString, ordefaultValueif the attribute does not contain any values.- Parameters:
defaultValue- The default value to return if the attribute is empty.- Returns:
- The first value decoded as a
String.
-
requireValue
Throws aLocalizedIllegalArgumentExceptionif the attribute referenced by this parser isnullor empty.- Returns:
- A reference to this attribute parser.
- Throws:
LocalizedIllegalArgumentException- If the attribute referenced by this parser isnullor empty.
-
usingSchema
Sets theSchemawhich will be used when parsing schema sensitive values such as DNs and attribute descriptions.- Parameters:
schema- TheSchemawhich will be used when parsing schema sensitive values.- Returns:
- This attribute parser.
-