public class FederatedSchematicEntry extends Object implements SchematicEntry
SchematicEntry
implementation which is used by the FederatedDocumentStore
to wrap editable documents.SchematicEntry.FieldName
Constructor and Description |
---|
FederatedSchematicEntry(EditableDocument document) |
Modifier and Type | Method and Description |
---|---|
Document |
asDocument()
|
EditableDocument |
editDocumentContent()
Get an
editable document , when the content is a document . |
EditableDocument |
editMetadata()
Get an
editable metadata document . |
Object |
getContent()
Return this value's content.
|
Binary |
getContentAsBinary()
Get this value's content, if it is a Binary object.
|
Document |
getContentAsDocument()
Get this value's content, if it is a Document object.
|
String |
getContentType()
Get the media type describing the content.
|
Document |
getMetadata()
Get the metadata associated with this value.
|
boolean |
hasBinaryContent()
Return
true if the SchematicEntry.getContent() method would return a Binary (or SchematicEntry.getContentAsBinary() would
return a non-null value). |
boolean |
hasDocumentContent()
Return
true if the SchematicEntry.getContent() method would return a Document (or SchematicEntry.getContentAsDocument()
would return a non-null value). |
void |
setContent(Binary content,
Document metadata,
String defaultContentType)
Set the content for this value to be the supplied
Binary data described by the supplied content type. |
void |
setContent(Document content,
Document metadata,
String defaultContentType)
Set the content for this value to be the supplied Document and set the content type to be "
application/json ". |
public FederatedSchematicEntry(EditableDocument document)
public Document getMetadata()
SchematicEntry
getMetadata
in interface SchematicEntry
public String getContentType()
SchematicEntry
getContentType
in interface SchematicEntry
public Object getContent()
SchematicEntry
Document
or Binary
.
Note that this method will return a non-null value only if the SchematicEntry.hasDocumentContent()
method
returns true
.getContent
in interface SchematicEntry
Document
object, or null if there is no contentpublic Document getContentAsDocument()
SchematicEntry
SchematicEntry.hasDocumentContent()
returns true
, and is therefore equivalent to the following:
return hasDocumentContent() ? (Document)getContent() : null;
getContentAsDocument
in interface SchematicEntry
Document
content, or null if there is no content or the content is a Binary
valuepublic Binary getContentAsBinary()
SchematicEntry
SchematicEntry.hasDocumentContent()
returns false
, and is therefore equivalent to the following:
return hasDocumentContent() ? (Binary)getContent() : null;
getContentAsBinary
in interface SchematicEntry
Binary
content, or null if there is no content or if the content is a Document
public boolean hasDocumentContent()
SchematicEntry
true
if the SchematicEntry.getContent()
method would return a Document (or SchematicEntry.getContentAsDocument()
would return a non-null value).
This is equivalent to the following:
return getContent() instanceof Document;
hasDocumentContent
in interface SchematicEntry
true
if the content is a Document, or false
otherwisepublic boolean hasBinaryContent()
SchematicEntry
true
if the SchematicEntry.getContent()
method would return a Binary (or SchematicEntry.getContentAsBinary()
would
return a non-null value).
This is equivalent to the following:
return getContent() instanceof Binary;
hasBinaryContent
in interface SchematicEntry
true
if the content is a Binary value, or false
otherwisepublic void setContent(Document content, Document metadata, String defaultContentType)
SchematicEntry
application/json
".setContent
in interface SchematicEntry
content
- the Document representing the JSON content; may not be nullmetadata
- the Document representing the metadata; may be nulldefaultContentType
- the value for the MIME type describing the content that should be used if the metadata does not
already contain a "contentType" field, and typically Schematic.ContentTypes.JSON
, Schematic.ContentTypes.JSON_SCHEMA
,
or Schematic.ContentTypes.BSON
; may not be nullpublic void setContent(Binary content, Document metadata, String defaultContentType)
SchematicEntry
Binary
data described by the supplied content type.setContent
in interface SchematicEntry
content
- the Binary representation of the content; may not be nullmetadata
- the Document representing the metadata; may be nulldefaultContentType
- the value for the MIME type describing the content that should be used if the metadata does not
already contain a "contentType" field, and typically Schematic.ContentTypes.JSON
, Schematic.ContentTypes.JSON_SCHEMA
,
or Schematic.ContentTypes.BSON
; may not be nullpublic EditableDocument editDocumentContent()
SchematicEntry
editable document
, when the content is a document
. The client
is expected to make these edits within the context of a transaction, and the edits will be saved when the transaction is
committed.editDocumentContent
in interface SchematicEntry
SchematicEntry.editMetadata()
public EditableDocument editMetadata()
SchematicEntry
editable metadata document
. The client is expected to make these edits within the context
of a transaction, and the edits will be saved when the transaction is committed.editMetadata
in interface SchematicEntry
SchematicEntry.editDocumentContent()
public Document asDocument()
SchematicEntry
metadata
and content
as nested documents.asDocument
in interface SchematicEntry
Copyright © 2008-2014 JBoss, a division of Red Hat. All Rights Reserved.