Package org.biojava.bio.seq.io.filterxml
Class XMLAnnotationTypeWriter
java.lang.Object
org.biojava.bio.seq.io.filterxml.XMLAnnotationTypeWriter
Main class for writing AnnotationTypes as XML. Knows about all the builtin
classes of AnnotationType. It's possible to plug new ones in by calling
one of the addXMLPropertyConstraintWriter methods.
- Since:
- 1.3
- Author:
- Thomas Down
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interface
Writer for types of CollectionConstraint.static interface
Writer for types of PropertyConstraint. -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final String
XML namespace string used to the AnnotationType representation -
Constructor Summary
ConstructorsConstructorDescriptionConstruct a new AnnotationTypeWriter which knows about the builtin types of PropertyConstraint -
Method Summary
Modifier and TypeMethodDescriptionvoid
addXMLCollectionConstraintWriter
(Class clazz, XMLAnnotationTypeWriter.XMLCollectionConstraintWriter xfw) Register a writer for the specified class of collection constraintvoid
addXMLCollectionConstraintWriter
(CollectionConstraint pc, XMLAnnotationTypeWriter.XMLCollectionConstraintWriter xfw) Register a writer for a singleton property constraint.void
addXMLPropertyConstraintWriter
(Class clazz, XMLAnnotationTypeWriter.XMLPropertyConstraintWriter xfw) Register a writer for the specified class of property constraintvoid
addXMLPropertyConstraintWriter
(PropertyConstraint pc, XMLAnnotationTypeWriter.XMLPropertyConstraintWriter xfw) Register a writer for a singleton property constraint.boolean
isStrict()
Determine if this writer is in strict mode.void
setIsStrict
(boolean b) Selects strict mode.void
Write anAnnotationType
to the specified XMLWriter.
-
Field Details
-
XML_ANNOTATIONTYPE_NS
XML namespace string used to the AnnotationType representation- See Also:
-
-
Constructor Details
-
XMLAnnotationTypeWriter
public XMLAnnotationTypeWriter()Construct a new AnnotationTypeWriter which knows about the builtin types of PropertyConstraint
-
-
Method Details
-
addXMLPropertyConstraintWriter
public void addXMLPropertyConstraintWriter(Class clazz, XMLAnnotationTypeWriter.XMLPropertyConstraintWriter xfw) Register a writer for the specified class of property constraint -
addXMLPropertyConstraintWriter
public void addXMLPropertyConstraintWriter(PropertyConstraint pc, XMLAnnotationTypeWriter.XMLPropertyConstraintWriter xfw) Register a writer for a singleton property constraint. -
addXMLCollectionConstraintWriter
public void addXMLCollectionConstraintWriter(Class clazz, XMLAnnotationTypeWriter.XMLCollectionConstraintWriter xfw) Register a writer for the specified class of collection constraint -
addXMLCollectionConstraintWriter
public void addXMLCollectionConstraintWriter(CollectionConstraint pc, XMLAnnotationTypeWriter.XMLCollectionConstraintWriter xfw) Register a writer for a singleton property constraint. -
isStrict
Determine if this writer is in strict mode. -
setIsStrict
Selects strict mode. In strict mode, the writer will throw anIllegalArgumentException
if it encounters a type ofPropertyConstraint
it doesn't recognize. When not in strict model, unrecognized constraints are silently replaced byPropertyConstraint.ANY
. Default isfalse
. -
writeAnnotationType
public void writeAnnotationType(AnnotationType at, XMLWriter xw) throws IllegalArgumentException, IOException Write anAnnotationType
to the specified XMLWriter.- Throws:
IllegalArgumentException
- if the AnnotationType contains unrecognized constraints, and the writer is in strict mode.IOException
- if an error occurs while outputting XML.
-