Class Document
java.lang.Object
com.datastax.astra.client.collections.definition.documents.Document
- All Implemented Interfaces:
Serializable
Represents a document without schema constraints as a Map<String, Object>.(key/value)
- See Also:
-
Field Summary
Modifier and TypeFieldDescriptionData to be used in the document.protected static final DataAPISerializer
Serializer -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionPut the given key/value pair into this Document and return this.appendIfNotNull
(String key, Object value) Put the given key/value pair into this Document and return this only if the value is not nullvoid
clear()
Removes all mappings from this document.boolean
containsKey
(Object key) Evaluation if a key is present in the documentstatic Document
create()
Create a document with no attributes.static Document
Create a document with an id.entrySet()
Returns a set view of the mappings contained in this document.boolean
Compares this document to another object for equality.<T> T
Gets the value of the given key, casting it to the givenClass<T>
.Retrieves the value associated with the specified key from the document.<K> K[]
Return an Array of items.getBoolean
(String key) Gets the value of the given key as a Boolean.Access element from the mapAccess element from the mapAccess element from the mapGets the value of the given key as a Date.Access element from the mapGetter for the document map.Gets the value of the given key as a Double.Access element from the map<T> T
Access the document identifiergetInstant
(String k) Access element from the mapgetInteger
(String key) Gets the value of the given key as an Integer.<T> List
<T> Gets the list value of the given key, casting the list elements to the givenClass<T>
.Gets the value of the given key as a Long.Access element from the mapAccess element from the mapGet value for similarity.Gets the value of the given key as a String.Access element from the mapGet value for vector.Access attribute with vectorize name if any.int
hashCode()
Returns the hash code value for this document.<T> Document
id
(T id) Set value for the identifier.<T> T
Marshall as a document if needed.static Document
Parses a string in MongoDB Extended JSON format to aDocument
Associates the specified value with the specified key in the document.void
Copies all mappings from the specifiedDocument
to this document.void
Copies all mappings from the specified map to this document.Removes the mapping for a key from the document if it is present.void
setProperty
(String key, Object value) Setter for a property in the document maptoJson()
Serialization with Jackson.toString()
Serialization with Jackson.values()
Returns a collection view of the values contained in this document.vector
(float[] vector) Set the vector value.vector
(DataAPIVector vector) Set the vector value.Add a vectorize attribute to the document.
-
Field Details
-
SERIALIZER
Serializer -
documentMap
Data to be used in the document.
-
-
Constructor Details
-
Document
public Document()Default Constructor. -
Document
Default Constructor.- Parameters:
id
- provide the unique identifier.
-
Document
Creates a Document instance initialized with the given map.- Parameters:
map
- initial map
-
-
Method Details
-
getDocumentMap
Getter for the document map.- Returns:
- document map
-
setProperty
Setter for a property in the document map- Parameters:
key
- property namevalue
- property value
-
create
Create a document with an id.- Parameters:
id
- document identifier- Returns:
- instance of document
-
create
Create a document with no attributes.- Returns:
- instance of document
-
map
Marshall as a document if needed.- Type Parameters:
T
- current type- Parameters:
clazz
- target class- Returns:
- instance of pojo
-
parse
Parses a string in MongoDB Extended JSON format to aDocument
- Parameters:
json
- the JSON string- Returns:
- the document
-
append
Put the given key/value pair into this Document and return this. Useful for chaining puts in a single expression, e.g.doc.append("a", 1).append("b", 2)}
- Parameters:
key
- keyvalue
- value- Returns:
- this
-
appendIfNotNull
Put the given key/value pair into this Document and return this only if the value is not nulldoc.append("a", 1).append("b", 2)}
- Parameters:
key
- keyvalue
- value- Returns:
- this
-
get
Gets the value of the given key, casting it to the givenClass<T>
. This is useful to avoid having casts in client code, though the effect is the same. So to get the value of a key that is of type String, you would writeString name = doc.get("name", String.class)
instead ofString name = (String) doc.get("x")
.- Type Parameters:
T
- the type of the class- Parameters:
key
- the keyclazz
- the non-null class to cast the value to- Returns:
- the value of the given key, or null if the instance does not contain this key.
- Throws:
ClassCastException
- if the value of the given key is not of type T
-
getId
Access the document identifier- Type Parameters:
T
- type of id- Parameters:
clazz
- can be different type- Returns:
- value for object
-
id
Set value for the identifier.- Type Parameters:
T
- type of id- Parameters:
id
- id value- Returns:
- self reference
-
vectorize
Add a vectorize attribute to the document.- Parameters:
text
- value for the vectorize attribute- Returns:
- self reference
-
getVectorize
Access attribute with vectorize name if any.- Returns:
- value for vectorize
-
getVector
Get value for vector.- Returns:
- vector list
-
vector
Set the vector value.- Parameters:
vector
- vector value- Returns:
- self reference
-
vector
Set the vector value.- Parameters:
vector
- vector value- Returns:
- self reference
-
getSimilarity
Get value for similarity.- Returns:
- vector list
-
getInteger
Gets the value of the given key as an Integer.- Parameters:
key
- the key- Returns:
- the value as an integer, which may be null
- Throws:
ClassCastException
- if the value is not an integer
-
getLong
Gets the value of the given key as a Long.- Parameters:
key
- the key- Returns:
- the value as a long, which may be null
- Throws:
ClassCastException
- if the value is not a long
-
getDouble
Gets the value of the given key as a Double.- Parameters:
key
- the key- Returns:
- the value as a double, which may be null
- Throws:
ClassCastException
- if the value is not a double
-
getString
Gets the value of the given key as a String.- Parameters:
key
- the key- Returns:
- the value as a String, which may be null
- Throws:
ClassCastException
- if the value is not a String
-
getBoolean
Gets the value of the given key as a Boolean.- Parameters:
key
- the key- Returns:
- the value as a Boolean, which may be null
- Throws:
ClassCastException
- if the value is not a boolean
-
getDate
Gets the value of the given key as a Date.- Parameters:
key
- the key- Returns:
- the value as a Date, which may be null
- Throws:
ClassCastException
- if the value is not a Date
-
getArray
Return an Array of items.- Type Parameters:
K
- type of item- Parameters:
k
- keyitemClass
- expected class- Returns:
- list of items
-
getObjectId
Access element from the map- Parameters:
k
- current configuration key- Returns:
- configuration value
-
getUUID
Access element from the map- Parameters:
k
- current configuration key- Returns:
- configuration value
-
getFloat
Access element from the map- Parameters:
k
- current configuration key- Returns:
- configuration value
-
getShort
Access element from the map- Parameters:
k
- current configuration key- Returns:
- configuration value
-
getByte
Access element from the map- Parameters:
k
- current configuration key- Returns:
- configuration value
-
getCharacter
Access element from the map- Parameters:
k
- current configuration key- Returns:
- configuration value
-
getDate
Access element from the map- Parameters:
k
- current configuration key- Returns:
- configuration value
-
getCalendar
Access element from the map- Parameters:
k
- current configuration key- Returns:
- configuration value
-
getInstant
Access element from the map- Parameters:
k
- current configuration key- Returns:
- configuration value
-
getList
Gets the list value of the given key, casting the list elements to the givenClass<T>
. This is useful to avoid having casts in client code, though the effect is the same.- Type Parameters:
T
- the type of the class- Parameters:
key
- the keyclazz
- the non-null class to cast the list value to- Returns:
- the list value of the given key, or null if the instance does not contain this key.
- Throws:
ClassCastException
- if the elements in the list value of the given key is not of type T or the value is not a list- Since:
- 3.10
-
toString
Serialization with Jackson. -
toJson
Serialization with Jackson.- Returns:
- json string
-
containsKey
Evaluation if a key is present in the document- Parameters:
key
- key to evaluate- Returns:
- true if the key is present
-
get
Retrieves the value associated with the specified key from the document.- Parameters:
key
- the key whose associated value is to be returned- Returns:
- the value associated with the specified key, or
null
if the key is not found
-
put
Associates the specified value with the specified key in the document. If the key already has a value, the old value is replaced.- Parameters:
key
- the key with which the specified value is to be associatedvalue
- the value to be associated with the specified key- Returns:
- the previous value associated with the key, or
null
if there was no mapping for the key
-
remove
Removes the mapping for a key from the document if it is present.- Parameters:
key
- the key whose mapping is to be removed- Returns:
- the value that was associated with the key, or
null
if the key was not mapped
-
putAll
Copies all mappings from the specified map to this document. Existing mappings will be replaced with mappings from the provided map.- Parameters:
map
- the map containing mappings to be copied to this document
-
putAll
Copies all mappings from the specifiedDocument
to this document. Existing mappings will be replaced with mappings from the provided document.- Parameters:
doc
- the document whose mappings are to be copied to this document
-
clear
public void clear()Removes all mappings from this document. The document will be empty after this operation. -
values
Returns a collection view of the values contained in this document.- Returns:
- a collection view of the values contained in this document
-
entrySet
Returns a set view of the mappings contained in this document. Each entry in the set is a key-value pair.- Returns:
- a set view of the mappings contained in this document
-
equals
Compares this document to another object for equality. Two documents are considered equal if their underlying maps are equal. -
hashCode
public int hashCode()Returns the hash code value for this document. The hash code is computed based on the underlying map.
-