Class ScimObjectNode
java.lang.Object
com.fasterxml.jackson.databind.JsonSerializable.Base
com.fasterxml.jackson.databind.JsonNode
com.fasterxml.jackson.databind.node.BaseJsonNode
com.fasterxml.jackson.databind.node.ContainerNode<com.fasterxml.jackson.databind.node.ObjectNode>
com.fasterxml.jackson.databind.node.ObjectNode
de.captaingoldfish.scim.sdk.common.resources.base.ScimObjectNode
- All Implemented Interfaces:
com.fasterxml.jackson.core.TreeNode,com.fasterxml.jackson.databind.JsonSerializable,com.fasterxml.jackson.databind.node.JsonNodeCreator,ScimNode,Serializable,Iterable<com.fasterxml.jackson.databind.JsonNode>
- Direct Known Subclasses:
AbstractSchemasHolder,BulkConfig,BulkRequestOperation,BulkResponseGetOperation,BulkResponseOperation,ChangePasswordConfig,EnterpriseUser,ETagConfig,FilterConfig,Manager,Meta,MultiComplexNode,Name,PatchConfig,PatchRequestOperation,SchemaAttribute,SortConfig
public class ScimObjectNode
extends com.fasterxml.jackson.databind.node.ObjectNode
implements ScimNode
author Pascal Knueppel
created at: 05.10.2019 - 20:10
created at: 05.10.2019 - 20:10
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class com.fasterxml.jackson.databind.JsonNode
com.fasterxml.jackson.databind.JsonNode.OverwriteModeNested classes/interfaces inherited from interface com.fasterxml.jackson.databind.JsonSerializable
com.fasterxml.jackson.databind.JsonSerializable.Base -
Field Summary
Fields inherited from class com.fasterxml.jackson.databind.node.ObjectNode
_childrenFields inherited from class com.fasterxml.jackson.databind.node.ContainerNode
_nodeFactory -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected <T extends com.fasterxml.jackson.databind.JsonNode>
voidaddAttribute(String attributeName, T attributeValue) adds a single entry to the array type attributeprotected <T extends com.fasterxml.jackson.databind.node.ObjectNode>
List<T>getArrayAttribute(String attributeName, Class<T> type) extracts an object type attributeprotected Optional<byte[]>getBinaryAttribute(String attributeName) extracts a string type attributegetBooleanAttribute(String attributeName) extracts a boolean type attributegetDateTimeAttribute(String attributeName) extracts a dateTime type attributegetDoubleAttribute(String attributeName) extracts a double type attributegetIntegerAttribute(String attributeName) extracts an integer type attributegetLongAttribute(String attributeName) extracts a long type attributeprotected <T extends com.fasterxml.jackson.databind.node.ObjectNode>
Optional<T>getObjectAttribute(String attributeName, Class<T> type) extracts an object type attributethe schema definition of this document nodegetSimpleArrayAttribute(String attributeName) extracts a simple attribute typeprotected <T> List<T>getSimpleArrayAttribute(String attributeName, Class<T> type) extracts a simple attribute typegetSimpleArrayAttributeSet(String attributeName) extracts a simple attribute typeprotected <T> Set<T>getSimpleArrayAttributeSet(String attributeName, Class<T> type) extracts a simple attribute typegetStringAttribute(String attributeName) extracts a string type attributeprotected <T extends com.fasterxml.jackson.databind.node.TextNode>
Optional<T>getStringAttribute(String attributeName, Class<T> type) extracts aTextNodetype attributebooleanisEmpty()override method for usage with wildfly 18 that still uses jackson 2.9.xprotected voidsetAttribute(String attributeName, byte[] attributeValue) adds or removes a binary type attributeprotected voidsetAttribute(String attributeName, com.fasterxml.jackson.databind.node.ObjectNode attributeValue) adds or removes an object type attributeprotected voidsetAttribute(String attributeName, Boolean attributeValue) adds or removes a boolean type attributeprotected voidsetAttribute(String attributeName, Double attributeValue) adds or removes a double type attributeprotected voidsetAttribute(String attributeName, Integer attributeValue) adds or removes an integer type attributeprotected voidsetAttribute(String attributeName, Long attributeValue) adds or removes a long type attributeprotected voidsetAttribute(String attributeName, String attributeValue) adds or removes a string type attributeprotected <T extends com.fasterxml.jackson.databind.JsonNode>
voidsetAttribute(String attributeName, List<T> attributeValue) adds or removes an array type attributeprotected <T> voidsetAttributeList(String attributeName, List<T> attributeValue) adds or removes an array type attributeprotected voidsetDateTimeAttribute(String attributeName, Instant attributeValue) adds or removes a dateTime type attribute by default the JSON String representation will keep DEFAULT_FRACTIONALS_TO_KEEP fractionals i.e. 1970-01-01T00:00:00.000Zprotected voidsetDateTimeAttribute(String attributeName, Instant attributeValue, int fractionalDigits) adds or removes a dateTime type attribute including the given fractionalDigits inside the JSON TextNodeprotected voidsetDateTimeAttribute(String attributeName, LocalDateTime attributeValue) adds or removes a dateTime type attributeprotected voidsetDateTimeAttribute(String attributeName, OffsetDateTime attributeValue) adds or removes a dateTime type attributeprotected voidsetStringAttributeList(String attributeName, List<String> attributeValue) adds or removes an array type attributeprotected voidsetStringAttributeList(String attributeName, Set<String> attributeValue) adds or removes an array type attributeoverride method for usage with wildfly 18 that still uses jackson 2.9.xtoString()override method for usage with wildfly 18 that still uses jackson 2.9.xMethods inherited from class com.fasterxml.jackson.databind.node.ObjectNode
_at, _childrenEqual, _put, _withArray, _withArrayAddTailProperty, _withObject, _withObjectAddTailProperty, asToken, deepCopy, elements, equals, equals, fieldNames, fields, findParent, findParents, findValue, findValues, findValuesAsText, get, get, getNodeType, hashCode, isEmpty, isObject, path, path, properties, put, put, put, put, put, put, put, put, put, put, put, put, put, put, put, put, put, putAll, putAll, putArray, putIfAbsent, putNull, putObject, putPOJO, putRawValue, remove, remove, removeAll, replace, required, retain, retain, serialize, serializeFilteredContents, serializeWithType, set, setAll, setAll, size, with, withArray, without, withoutMethods inherited from class com.fasterxml.jackson.databind.node.ContainerNode
arrayNode, arrayNode, asText, binaryNode, binaryNode, booleanNode, missingNode, nullNode, numberNode, numberNode, numberNode, numberNode, numberNode, numberNode, numberNode, numberNode, numberNode, numberNode, numberNode, numberNode, numberNode, numberNode, objectNode, pojoNode, rawValueNode, textNodeMethods inherited from class com.fasterxml.jackson.databind.node.BaseJsonNode
_bigIntFromBigDec, _jsonPointerIfValid, _reportWrongNodeOperation, _reportWrongNodeType, _withXxxMayReplace, _withXxxVerifyReplace, findPath, numberType, required, traverse, traverse, withArray, withObjectMethods inherited from class com.fasterxml.jackson.databind.JsonNode
_reportRequiredViolation, _this, asBoolean, asBoolean, asDouble, asDouble, asInt, asInt, asLong, asLong, asText, at, at, bigIntegerValue, binaryValue, booleanValue, canConvertToExactIntegral, canConvertToInt, canConvertToLong, decimalValue, doubleValue, findParents, findValues, findValuesAsText, floatValue, has, has, hasNonNull, hasNonNull, intValue, isArray, isBigDecimal, isBigInteger, isBinary, isBoolean, isContainerNode, isDouble, isFloat, isFloatingPointNumber, isInt, isIntegralNumber, isLong, isMissingNode, isNull, isNumber, isPojo, isShort, isTextual, isValueNode, iterator, longValue, numberValue, require, requiredAt, requiredAt, requireNonNull, shortValue, textValue, withArray, withArray, withObject, withObject, withObjectMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface java.lang.Iterable
forEach, spliteratorMethods inherited from interface de.captaingoldfish.scim.sdk.common.resources.base.ScimNode
getAttributeDescription, getAttributeName, getCanonicalValues, getMutability, getReferenceTypes, getReturned, getScimNodeName, getUniqueness, getValueType, isCaseExact, isMultiValued, isRequired
-
Constructor Details
-
ScimObjectNode
public ScimObjectNode() -
ScimObjectNode
-
-
Method Details
-
getStringAttribute
extracts a string type attribute -
getBinaryAttribute
extracts a string type attribute -
getBooleanAttribute
extracts a boolean type attribute -
getLongAttribute
extracts a long type attribute -
getIntegerAttribute
extracts an integer type attribute -
getDoubleAttribute
extracts a double type attribute -
getDateTimeAttribute
extracts a dateTime type attribute -
getStringAttribute
protected <T extends com.fasterxml.jackson.databind.node.TextNode> Optional<T> getStringAttribute(String attributeName, Class<T> type) extracts aTextNodetype attribute -
getObjectAttribute
protected <T extends com.fasterxml.jackson.databind.node.ObjectNode> Optional<T> getObjectAttribute(String attributeName, Class<T> type) extracts an object type attribute -
getArrayAttribute
protected <T extends com.fasterxml.jackson.databind.node.ObjectNode> List<T> getArrayAttribute(String attributeName, Class<T> type) extracts an object type attribute -
getSimpleArrayAttribute
extracts a simple attribute type- Parameters:
attributeName- the name of the array attribute
-
getSimpleArrayAttribute
extracts a simple attribute type- Type Parameters:
T- a simple attribute type as Long, Double, String, Boolean or Instant. Other types are not allowed- Parameters:
attributeName- the name of the array attributetype- the type that should be extracted
-
getSimpleArrayAttributeSet
extracts a simple attribute type- Parameters:
attributeName- the name of the array attribute
-
getSimpleArrayAttributeSet
extracts a simple attribute type- Type Parameters:
T- a simple attribute type as Long, Double, String, Boolean or Instant. Other types are not allowed- Parameters:
attributeName- the name of the array attributetype- the type that should be extracted
-
setAttribute
adds or removes a string type attribute -
setAttribute
adds or removes a binary type attribute -
setAttribute
adds or removes a boolean type attribute -
setAttribute
adds or removes a long type attribute -
setAttribute
adds or removes an integer type attribute -
setAttribute
adds or removes a double type attribute -
setDateTimeAttribute
adds or removes a dateTime type attribute by default the JSON String representation will keep DEFAULT_FRACTIONALS_TO_KEEP fractionals i.e. 1970-01-01T00:00:00.000Z -
setDateTimeAttribute
protected void setDateTimeAttribute(String attributeName, Instant attributeValue, int fractionalDigits) adds or removes a dateTime type attribute including the given fractionalDigits inside the JSON TextNode- Parameters:
attributeName- the given attributeName for the related Instant attributeValueattributeValue- the attributeValue might be null to remove the attribute from the JSON documentfractionalDigits- MUST be a positive value between zero and nine i.e 0-9 default is set to 3- See Also:
-
setDateTimeAttribute
adds or removes a dateTime type attribute -
setDateTimeAttribute
adds or removes a dateTime type attribute -
setAttribute
protected void setAttribute(String attributeName, com.fasterxml.jackson.databind.node.ObjectNode attributeValue) adds or removes an object type attribute -
setAttribute
protected <T extends com.fasterxml.jackson.databind.JsonNode> void setAttribute(String attributeName, List<T> attributeValue) adds or removes an array type attribute -
setStringAttributeList
adds or removes an array type attribute -
setStringAttributeList
adds or removes an array type attribute -
setAttributeList
adds or removes an array type attribute -
addAttribute
protected <T extends com.fasterxml.jackson.databind.JsonNode> void addAttribute(String attributeName, T attributeValue) adds a single entry to the array type attribute -
toString
override method for usage with wildfly 18 that still uses jackson 2.9.x- Overrides:
toStringin classcom.fasterxml.jackson.databind.node.BaseJsonNode
-
toPrettyString
override method for usage with wildfly 18 that still uses jackson 2.9.x- Overrides:
toPrettyStringin classcom.fasterxml.jackson.databind.node.BaseJsonNode
-
isEmpty
public boolean isEmpty()override method for usage with wildfly 18 that still uses jackson 2.9.x- Overrides:
isEmptyin classcom.fasterxml.jackson.databind.node.ObjectNode
-
getSchemaAttribute
the schema definition of this document node- Specified by:
getSchemaAttributein interfaceScimNode
-