|
ModeShape Distribution 3.0.0.Beta4 | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.infinispan.schematic.document.MergeDocument
public class MergeDocument
A Document
implementation that presents the merger of two other documents, where the first document is used before the
second.
Nested Class Summary |
---|
Nested classes/interfaces inherited from interface org.infinispan.schematic.document.Document |
---|
Document.Field, Document.ValueTransformer |
Constructor Summary | |
---|---|
MergeDocument(Document document1,
Document document2)
Create a document that contains all of the fields from the two documents, with the first document taking precedence. |
|
MergeDocument(Document document1,
Document document2,
Document document3)
Create a document that contains all of the fields from the three documents, with the first document taking precedence over the others, and the second taking precedence over the third. |
Method Summary | |
---|---|
MergeDocument |
clone()
Obtain a clone of this document. |
boolean |
containsAll(Document document)
Checks if this object contains all of the fields in the supplied document. |
boolean |
containsField(String name)
Checks if this object contains a field with the given name. |
Iterable<Document.Field> |
fields()
Obtain an iterator over the Document.Field s in this object. |
Object |
get(String name)
Gets the value in this document for the given field name. |
List<?> |
getArray(String name)
Get the array value in this document for the given field name. |
Binary |
getBinary(String name)
Get the Binary value in this document for the given field name. |
Boolean |
getBoolean(String name)
Get the boolean value in this document for the given field name. |
boolean |
getBoolean(String name,
boolean defaultValue)
Get the boolean value in this document for the given field name. |
Code |
getCode(String name)
Get the Code value in this document for the given field name. |
CodeWithScope |
getCodeWithScope(String name)
Get the CodeWithScope value in this document for the given field name. |
Document |
getDocument(String name)
Get the document value in this document for the given field name. |
Double |
getDouble(String name)
Get the double value in this document for the given field name. |
double |
getDouble(String name,
double defaultValue)
Get the double value in this document for the given field name. |
Integer |
getInteger(String name)
Get the integer value in this document for the given field name. |
int |
getInteger(String name,
int defaultValue)
Get the integer value in this document for the given field name. |
Long |
getLong(String name)
Get the integer value in this document for the given field name. |
long |
getLong(String name,
long defaultValue)
Get the long value in this document for the given field name. |
MaxKey |
getMaxKey(String name)
Get the MaxKey value in this document for the given field name. |
MinKey |
getMinKey(String name)
Get the MinKey value in this document for the given field name. |
Number |
getNumber(String name)
Get the number value in this document for the given field name. |
Number |
getNumber(String name,
Number defaultValue)
Get the number value in this document for the given field name. |
ObjectId |
getObjectId(String name)
Get the ObjectId value in this document for the given field name. |
Pattern |
getPattern(String name)
Get the Pattern value in this document for the given field name. |
String |
getString(String name)
Get the string value in this document for the given field name. |
String |
getString(String name,
String defaultValue)
Get the string value in this document for the given field name. |
Symbol |
getSymbol(String name)
Get the Symbol value in this document for the given field name. |
int |
getType(String name)
Get the Bson.Type constant that describes the type of value for the given field name. |
UUID |
getUuid(String name)
Get the UUID value in this document for the given field name. |
UUID |
getUuid(String name,
UUID defaultValue)
Get the UUID value in this document for the given field name. |
boolean |
isEmpty()
Return whether this document contains no fields and is therefore empty. |
boolean |
isNull(String name)
Determine whether this object has a pair with the given the name and the value is null. |
boolean |
isNullOrMissing(String name)
Determine whether this object has a pair with the given the name and the value is null, or if this object has no field with the given name. |
Set<String> |
keySet()
Returns this object's fields' names |
int |
size()
Return the number of name-value pairs in this object. |
Map<String,? extends Object> |
toMap()
Returns a map representing this BSONObject. |
Document |
with(Document.ValueTransformer transformer)
Obtain a clone of this document, but with the field values transformed using the supplied Document.ValueTransformer . |
MergeDocument |
with(Map<String,Object> changedFields)
Obtain a clone of this document, but with the supplied fields replaced. |
Document |
withVariablesReplaced(Properties properties)
Obtain a clone of this document, but with all variables in string field values replaced with the referenced values from the supplied properties. |
Document |
withVariablesReplacedWithSystemProperties()
Obtain a clone of this document, but with all variables in string field values replaced with the referenced values from the System properties. |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public MergeDocument(Document document1, Document document2)
document1
- the first (preceding) document; may not be nulldocument2
- the second document; may not be nullpublic MergeDocument(Document document1, Document document2, Document document3)
document1
- the first (preceding) document; may not be nulldocument2
- the second document; may not be nulldocument3
- the third document; may not be nullMethod Detail |
---|
public MergeDocument clone()
Document
clone
in interface Document
clone
in class Object
public MergeDocument with(Map<String,Object> changedFields)
Document
with
in interface Document
changedFields
- the fields that should be changed; may be null
public Document with(Document.ValueTransformer transformer)
Document
Document.ValueTransformer
.
with
in interface Document
transformer
- the transformer that should be used to transform each field value; may not be null
public Document withVariablesReplaced(Properties properties)
Document
Variables may appear anywhere within a string value, and multiple variables can be used within the same value. Variables take the form:
variable := '${' variableNames [ ':' defaultValue ] '}' variableNames := variableName [ ',' variableNames ] variableName := /* any characters except ',' and ':' and '}' defaultValue := /* any characters exceptNote that variableName is the name used to look up the
Properties
property.
Notice that the syntax supports multiple variables. The logic will process the variables from let to right,
until an existing System property is found. And at that point, it will stop and will not attempt to find values for the
other variables.
withVariablesReplaced
in interface Document
properties
- the properties keyed by variable name
Document.withVariablesReplacedWithSystemProperties()
,
Document.with(ValueTransformer)
,
SchemaLibrary.convertValues(Document, String)
public Document withVariablesReplacedWithSystemProperties()
Document
Variables may appear anywhere within a string value, and multiple variables can be used within the same value. Variables take the form:
variable := '${' variableNames [ ':' defaultValue ] '}' variableNames := variableName [ ',' variableNames ] variableName := /* any characters except ',' and ':' and '}' defaultValue := /* any characters exceptNote that variableName is the name used to look up a System property via
System.getProperty(String)
.
Notice that the syntax supports multiple variables. The logic will process the variables from let to right,
until an existing System property is found. And at that point, it will stop and will not attempt to find values for the
other variables.
Because only string values can contain variables, the resulting values are left as strings. This may not be valid according
to the document's JSON Schema, so see SchemaLibrary.convertValues(Document, String)
to convert the string values
after variable substitution into the expected non-string types.
withVariablesReplacedWithSystemProperties
in interface Document
Document.withVariablesReplaced(Properties)
,
Document.with(ValueTransformer)
,
SchemaLibrary.convertValues(Document, String)
public Object get(String name)
Document
get
in interface Document
name
- The name of the pair
public Boolean getBoolean(String name)
Document
getBoolean
in interface Document
name
- The name of the pair
public boolean getBoolean(String name, boolean defaultValue)
Document
getBoolean
in interface Document
name
- The name of the pairdefaultValue
- the default value to return if there is no such pair or if the value is not a boolean
defaultValue
if there is no such pair or if the value is not a
booleanpublic Integer getInteger(String name)
Document
getInteger
in interface Document
name
- The name of the pair
public int getInteger(String name, int defaultValue)
Document
getInteger
in interface Document
name
- The name of the pairdefaultValue
- the default value to return if there is no such pair or if the value is not a integer
defaultValue
if there is no such pair or if the value is not a
integerpublic Long getLong(String name)
Document
getLong
in interface Document
name
- The name of the pair
public long getLong(String name, long defaultValue)
Document
getLong
in interface Document
name
- The name of the pairdefaultValue
- the default value to return if there is no such pair or if the value is not a long value
defaultValue
if there is no such pair or if the value is not a long
valuepublic Double getDouble(String name)
Document
getDouble
in interface Document
name
- The name of the pair
public double getDouble(String name, double defaultValue)
Document
getDouble
in interface Document
name
- The name of the pairdefaultValue
- the default value to return if there is no such pair or if the value is not a double
defaultValue
if there is no such pair or if the value is not a
doublepublic Number getNumber(String name)
Document
getNumber
in interface Document
name
- The name of the pair
public Number getNumber(String name, Number defaultValue)
Document
getNumber
in interface Document
name
- The name of the pairdefaultValue
- the default value to return if there is no such pair or if the value is not a number
defaultValue
if there is no such pair or if the value is not a
numberpublic String getString(String name)
Document
Symbol
.
getString
in interface Document
name
- The name of the pair
public String getString(String name, String defaultValue)
Document
Symbol
.
getString
in interface Document
name
- The name of the pairdefaultValue
- the default value to return if there is no such pair or if the value is not a string
defaultValue
if there is no such pair or if the value is not a
stringpublic List<?> getArray(String name)
Document
getArray
in interface Document
name
- The name of the pair
public Document getDocument(String name)
Document
getDocument
in interface Document
name
- The name of the pair
public boolean isNull(String name)
Document
this.get(name) instanceof Null;
isNull
in interface Document
name
- The name of the pair
true
if the field has been set to a Null
value, or false otherwiseDocument.isNullOrMissing(String)
public boolean isNullOrMissing(String name)
Document
Null.matches(this.get(name));
isNullOrMissing
in interface Document
name
- The name of the pair
true
if the field value for the name is null or if there is no such field.Document.isNull(String)
public MaxKey getMaxKey(String name)
Document
MaxKey
value in this document for the given field name.
getMaxKey
in interface Document
name
- The name of the pair
MaxKey
field value, if found, or null if there is no such pair or if the value is not a MaxKey
public MinKey getMinKey(String name)
Document
MinKey
value in this document for the given field name.
getMinKey
in interface Document
name
- The name of the pair
MinKey
field value, if found, or null if there is no such pair or if the value is not a MinKey
public Code getCode(String name)
Document
Code
value in this document for the given field name.
getCode
in interface Document
name
- The name of the pair
Code
field value, if found, or null if there is no such pair or if the value is not a Code
public CodeWithScope getCodeWithScope(String name)
Document
CodeWithScope
value in this document for the given field name.
getCodeWithScope
in interface Document
name
- The name of the pair
CodeWithScope
field value, if found, or null if there is no such pair or if the value is not a
CodeWithScope
public ObjectId getObjectId(String name)
Document
ObjectId
value in this document for the given field name.
getObjectId
in interface Document
name
- The name of the pair
ObjectId
field value, if found, or null if there is no such pair or if the value is not a
ObjectId
public Binary getBinary(String name)
Document
Binary
value in this document for the given field name.
getBinary
in interface Document
name
- The name of the pair
Binary
field value, if found, or null if there is no such pair or if the value is not a Binary
public Symbol getSymbol(String name)
Document
Symbol
value in this document for the given field name.
getSymbol
in interface Document
name
- The name of the pair
Symbol
field value, if found, or null if there is no such pair or if the value is not a Symbol
public Pattern getPattern(String name)
Document
Pattern
value in this document for the given field name.
getPattern
in interface Document
name
- The name of the pair
Pattern
field value, if found, or null if there is no such pair or if the value is not a
Pattern
public UUID getUuid(String name)
Document
UUID
value in this document for the given field name.
getUuid
in interface Document
name
- The name of the pair
UUID
field value, if found, or null if there is no such pair or if the value is not a UUID
public UUID getUuid(String name, UUID defaultValue)
Document
UUID
value in this document for the given field name.
getUuid
in interface Document
name
- The name of the pairdefaultValue
- the default value to return if there is no such pair or if the value is not a string
UUID
field value if found, or defaultValue
if there is no such pair or if the value is not
a UUID (or a string that is convertable from a UUID)public int getType(String name)
Document
Bson.Type
constant that describes the type of value for the given field name.
getType
in interface Document
name
- The name of the pair
Bson.Type
constant describing the value, or -1 if there is no field with the supplied namepublic Map<String,? extends Object> toMap()
Document
toMap
in interface Document
public Iterable<Document.Field> fields()
Document
Document.Field
s in this object.
fields
in interface Document
public boolean containsField(String name)
Document
containsField
in interface Document
name
- The name of the pair for which to check
public boolean containsAll(Document document)
Document
containsAll
in interface Document
document
- The document with the fields that should be in this document
public Set<String> keySet()
Document
keySet
in interface Document
public int size()
Document
size
in interface Document
public boolean isEmpty()
Document
isEmpty
in interface Document
|
ModeShape Distribution 3.0.0.Beta4 | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |