Class ObjectWriter
java.lang.Object
de.uni_trier.wi2.procake.utils.composition.FactoryObjectImplementation
de.uni_trier.wi2.procake.data.io.IOImpl
de.uni_trier.wi2.procake.data.io.xml.xerces_writerImpl.AbstractXMLWriter
de.uni_trier.wi2.procake.data.io.xml.xerces_writerImpl.ObjectWriter
- All Implemented Interfaces:
ObjectTags
,IO
,ProCAKEWriter
- Direct Known Subclasses:
NESTGraphWriter
ObjectWriter class.
- Author:
- kmaximi
-
Field Summary
Fields inherited from class de.uni_trier.wi2.procake.data.io.xml.xerces_writerImpl.AbstractXMLWriter
filename, outputStream
Fields inherited from interface de.uni_trier.wi2.procake.utils.io.IO
DEFAULT_ENCODING, LOG_FILE_NOT_FOUND, LOG_IO_EXCEPTION, LOG_READER_NOT_FOUND, LOG_SAX_EXCEPTION, LOG_UNKNOWN_PARAMETER, LOG_WRONG_PARAMATER_TYPE, RESOURCE_XML
Fields inherited from interface de.uni_trier.wi2.procake.data.io.xml.ObjectTags
ATT_CLASS, ATT_ID, ATT_NAME, ATT_VALUE, PREFIX_CDOL, SCHEMA_LOCATION_CDOL, TAG_AGGREGATE, TAG_ATOMIC, TAG_ATOMIC_ATTRIBUTE, TAG_ATTRIBUTE, TAG_ATTRIBUTEPATH, TAG_BYTE_ARRAY, TAG_BYTE_ARRAY_CONTENT, TAG_COLLECTION, TAG_INTERVAL, TAG_INTERVAL_LOWER_BOUND, TAG_INTERVAL_UPPER_BOUND, TAG_OBJECT_ATTRIBUTE, TAG_PROPERTY, TAG_QUERY, TAG_VOID, TAG_VOID_ATTRIBUTE, URI_CDOL
Fields inherited from interface de.uni_trier.wi2.procake.utils.io.ProCAKEWriter
LOG_CANNOT_WRITE
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptioncopy()
overwritten copy-method from Object; use it to copy a complete operatorgetName()
Each io component must have a name that is used inIOFactory.newIO(String)
.void
Adds the namespace-imports of this handler to the given xmlWriter.boolean
isHandlerFor
(Class value) Checks if the io component is capable to perform the operation for objects of this class.boolean
boolean
void
preInit
(AbstractParameter[] parameter) Called directly after creating the implementation.void
setWriteAtomicObjectId
(boolean writeAtomicObjectId) void
setWriteVoidObjectId
(boolean writeVoidObjectId) void
store
(Object value, GenericXMLSchemaBasedWriter writer) To embed xml writers into another one it must be possible to specify the parentGenericXMLSchemaBasedWriter
as well as a prefix that should be probably used.protected void
write
(DataObject object, DataClass attributeType, GenericXMLSchemaBasedWriter writer) write.protected void
writeAggregateContent
(AggregateObject object, GenericXMLSchemaBasedWriter writer) writeAggregateContent.protected void
writeId
(DataObject object, GenericXMLSchemaBasedWriter writer) writeId.protected void
writeProperties
(DataObject object, GenericXMLSchemaBasedWriter writer) writeProperties.protected void
writeVoid
(VoidObject object, DataClass attributeType, GenericXMLSchemaBasedWriter writer) writeVoid.Methods inherited from class de.uni_trier.wi2.procake.data.io.xml.xerces_writerImpl.AbstractXMLWriter
createXMLWriter, setFilename, setOutputStream, store, storeWithFamiliarWriter
Methods inherited from class de.uni_trier.wi2.procake.utils.composition.FactoryObjectImplementation
getParameter, initParametersBasedOn
-
Field Details
-
WRITER_NAME
Constant value is "ObjectSaxWriter".- See Also:
-
-
Constructor Details
-
ObjectWriter
public ObjectWriter()
-
-
Method Details
-
getName
Each io component must have a name that is used inIOFactory.newIO(String)
. The name must be unique thus it is usefull to use a short description or to the class name (this.getClass().getName()
). -
isHandlerFor
Checks if the io component is capable to perform the operation for objects of this class.A typical implementation looks like:
public boolean isHandlerFor(Class value) { if (DataObject.class.isAssignableFrom(value)) return true; return false; }
- Specified by:
isHandlerFor
in interfaceIO
- Parameters:
value
- The class that has to be checked.- Returns:
- Results
true
if the class can oeprate with the given class.
-
copy
overwritten copy-method from Object; use it to copy a complete operator -
insertNamespace
Adds the namespace-imports of this handler to the given xmlWriter.- Specified by:
insertNamespace
in classAbstractXMLWriter
- Parameters:
writer
- aGenericXMLSchemaBasedWriter
object
-
store
To embed xml writers into another one it must be possible to specify the parentGenericXMLSchemaBasedWriter
as well as a prefix that should be probably used. If a parent writer is specified, no header will be written.If the writer does not support XML writing, the writer should throw an
UnsupportedOperationException
.public void store(Object value, String prefix, XMLWriter writer) throws CakeIOException { throw new UnsupportedOperationException(); }
- Specified by:
store
in classAbstractXMLWriter
- Parameters:
value
- aObject
objectwriter
- A parent writer that is used.- Throws:
CAKEIOException
- if any.
-
writeAggregateContent
protected void writeAggregateContent(AggregateObject object, GenericXMLSchemaBasedWriter writer) throws InvalidNativeValueException, IOException, CAKEIOException writeAggregateContent.
- Parameters:
object
- aAggregateObject
objectwriter
- aGenericXMLSchemaBasedWriter
object- Throws:
InvalidNativeValueException
- if any.IOException
- if any.CAKEIOException
- if any.
-
write
protected void write(DataObject object, DataClass attributeType, GenericXMLSchemaBasedWriter writer) throws InvalidNativeValueException, IOException, CAKEIOException write.
- Parameters:
object
- aDataObject
objectattributeType
- aDataClass
objectwriter
- aGenericXMLSchemaBasedWriter
object- Throws:
InvalidNativeValueException
- if any.IOException
- if any.CAKEIOException
- if any.
-
writeVoid
protected void writeVoid(VoidObject object, DataClass attributeType, GenericXMLSchemaBasedWriter writer) throws IOException writeVoid.
- Parameters:
object
- aVoidObject
objectattributeType
- aDataClass
objectwriter
- aGenericXMLSchemaBasedWriter
object- Throws:
IOException
- if any.
-
writeProperties
protected void writeProperties(DataObject object, GenericXMLSchemaBasedWriter writer) throws IOException writeProperties.
- Parameters:
object
- aDataObject
objectwriter
- aGenericXMLSchemaBasedWriter
object- Throws:
IOException
- if any.
-
writeId
writeId.
- Parameters:
object
- aDataObject
objectwriter
- aGenericXMLSchemaBasedWriter
object- Throws:
IOException
- if any.
-
preInit
Description copied from class:IOImpl
Called directly after creating the implementation. -
getParameters
Description copied from class:IOImpl
- Overrides:
getParameters
in classIOImpl
- Returns:
- Returns a list of available parameters in the implementation. This method can be called
without initialization and is never
null
.
-
isWriteAtomicObjectId
public boolean isWriteAtomicObjectId() -
setWriteAtomicObjectId
public void setWriteAtomicObjectId(boolean writeAtomicObjectId) -
isWriteVoidObjectId
public boolean isWriteVoidObjectId() -
setWriteVoidObjectId
public void setWriteVoidObjectId(boolean writeVoidObjectId)
-