org.fcrepo.server.storage.translation
Class FOXMLDOSerializer

java.lang.Object
  extended by org.fcrepo.server.storage.translation.FOXMLDOSerializer
All Implemented Interfaces:
Constants, DOSerializer
Direct Known Subclasses:
FOXML1_0DOSerializer, FOXML1_1DOSerializer

public class FOXMLDOSerializer
extends Object
implements DOSerializer, Constants

Serializes objects in the constructor-provided version of FOXML.

Author:
Sandy Payette, Chris Wilper

Nested Class Summary
 
Nested classes/interfaces inherited from interface org.fcrepo.common.Constants
Constants.FedoraHome
 
Field Summary
static XMLFormat DEFAULT_FORMAT
          The format this serializer will write if unspecified at construction.
 
Fields inherited from interface org.fcrepo.common.Constants
ACCESS, ACTION, API, ATOM_APIM1_0, ATOM_ZIP1_1, ATOM1_1, AUDIT, AUDIT1_0, BATCH_MODIFY, BATCH_MODIFY1_1, BE_SECURITY, BE_SECURITY1_0, BINDING_SPEC, DATASTREAM, DC, DISSEMINATOR, DS_COMPOSITE_MODEL, DS_COMPOSITE_MODEL1_0, DS_INPUT_SPEC1_0, DS_INPUT_SPEC1_1, ENVIRONMENT, FCFG, FEDORA, FEDORA_APP_CONTEXT_NAME, FEDORA_DEFAULT_APP_CONTEXT, FEDORA_HOME, FOXML, FOXML1_0, FOXML1_0_LEGACY, FOXML1_1, HTTP_REQUEST, MANAGEMENT, METHOD_MAP, METS, METS_EXT, METS_EXT1_0, METS_EXT1_0_LEGACY, METS_EXT1_1, MODEL, MULGARA, OAI_DC, OAI_DC2_0, OAI_FRIENDS, OAI_FRIENDS2_0, OAI_IDENTIFIER, OAI_IDENTIFIER2_0, OAI_PMH, OAI_PMH2_0, OAI_PROV, OAI_PROV2_0, OBJ_DATASTREAMS1_0, OBJ_HISTORY1_0, OBJ_ITEMS1_0, OBJ_METHODS1_0, OBJ_PROFILE1_0, OBJ_VALIDATION1_0, OBJECT, OLD_XLINK, PID_LIST1_0, RDF, RDF_XSD, RECOVERY, RELS_EXT, RELS_EXT1_0, RELS_INT1_0, REPO_DESC1_0, RESOURCE, SDEF, SDEF_METHOD_MAP1_0, SDEP, SDEP_METHOD_MAP1_0, SDEP_METHOD_MAP1_1, SERVICE_PROFILE, SOAP, SOAP_ENC, SUBJECT, TYPES, VIEW, WSDL, WSDL_HTTP, WSDL_MIME, XACML_POLICY, XACML_POLICY1_0, XLINK, XML_XSD, XMLNS, XSI
 
Constructor Summary
FOXMLDOSerializer()
          Creates a serializer that writes the default FOXML format.
FOXMLDOSerializer(XMLFormat format)
          Creates a serializer that writes the given FOXML format.
 
Method Summary
 DOSerializer getInstance()
          Creates a new serializer that writes the same format as this one.
 void serialize(DigitalObject obj, OutputStream out, String encoding, int transContext)
          Serializes the given object.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEFAULT_FORMAT

public static final XMLFormat DEFAULT_FORMAT
The format this serializer will write if unspecified at construction. This defaults to the latest FOXML format.

Constructor Detail

FOXMLDOSerializer

public FOXMLDOSerializer()
Creates a serializer that writes the default FOXML format.


FOXMLDOSerializer

public FOXMLDOSerializer(XMLFormat format)
Creates a serializer that writes the given FOXML format.

Parameters:
format - the version-specific FOXML format.
Throws:
IllegalArgumentException - if format is not a known FOXML format.
Method Detail

getInstance

public DOSerializer getInstance()
Creates a new serializer that writes the same format as this one.

Specified by:
getInstance in interface DOSerializer

serialize

public void serialize(DigitalObject obj,
                      OutputStream out,
                      String encoding,
                      int transContext)
               throws ObjectIntegrityException,
                      StreamIOException,
                      UnsupportedEncodingException
Serializes the given object.

Specified by:
serialize in interface DOSerializer
Parameters:
obj - the object to serialize.
out - where to send the output to (auto-closed when finished).
encoding - the character encoding if the format is text-based.
transContext - the translation context.
Throws:
ObjectIntegrityException - if the given object is in such a state that serialization can't be performed.
StreamIOException - if there is an error writing to the stream.
UnsupportedEncodingException - if the encoding is not supported by the JVM.
See Also:
DOTranslationUtility.SERIALIZE_EXPORT_ARCHIVE, DOTranslationUtility.SERIALIZE_EXPORT_PUBLIC, DOTranslationUtility.SERIALIZE_EXPORT_MIGRATE, DOTranslationUtility.SERIALIZE_STORAGE_INTERNAL


Copyright © 2011 DuraSpace. All Rights Reserved.