Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.openjpa.persistence
Class AnnotationPersistenceMetaDataSerializer

    java.lang.Object
      org.apache.openjpa.persistence.AnnotationPersistenceMetaDataSerializer

All Implemented Interfaces:
  MetaDataSerializer, AbstractCFMetaDataFactory.Serializer

Direct Known Subclasses:
  AnnotationPersistenceMappingSerializer

    public class AnnotationPersistenceMetaDataSerializer

extends Object
implements AbstractCFMetaDataFactory.Serializer

Serializes persistence metadata as annotations. This class processes all object level tags that are store-agnostic. However, it provides hooks for the subclasses to include store-specific tags to be serialized both at <entity-mappings> and <entity> level.

Since:
  1.0.0
Author:
  Steve Kim, Gokhan Ergul

Nested Class Summary
`protected class` | `AnnotationPersistenceMetaDataSerializer.SerializationComparator` Compares clases, sequences, and queries to order them for serialization.

Field Summary
`protected static int` | `TYPE_CLASS_QUERIES`
`protected static int` | `TYPE_CLASS_SEQS`
`protected static int` | `TYPE_META`
`protected static int` | `TYPE_QUERY`
`protected static int` | `TYPE_SEQ`

Fields inherited from interface org.apache.openjpa.lib.meta.MetaDataSerializer
`APPEND, COMPACT, PRETTY, VERBOSE`

Constructor Summary
`AnnotationPersistenceMetaDataSerializer(OpenJPAConfiguration conf)` Constructor.

Method Summary
`void` | `addAll(MetaDataRepository repos)` Add all components in the given repository to the set to be serialized.
`protected void` | `addAnnotation(AnnotationBuilder ab, ClassMetaData meta)` Add an annotation builder to list of builders for the specified class metadata.
`protected void` | `addAnnotation(AnnotationBuilder ab, FieldMetaData meta)` Add an annotation builder to list of builders for the specified field metadata.
`protected void` | `addAnnotation(AnnotationBuilder ab, Object meta)`
`protected void` | `addAnnotation(AnnotationBuilder ab, QueryMetaData meta)` Add an annotation builder to list of builders for the specified query metadata.
`protected void` | `addAnnotation(AnnotationBuilder ab, SequenceMetaData meta)` Add an annotation builder to list of builders for the specified sequence metadata.
`protected AnnotationBuilder` | `addAnnotation(Class<? extends Annotation> annType, ClassMetaData meta)` Creates an an annotation builder for the specified class metadata and adds it to list of builders.
`protected AnnotationBuilder` | `addAnnotation(Class<? extends Annotation> annType, FieldMetaData meta)` Creates an an annotation builder for the specified class metadata and adds it to list of builders.
`protected AnnotationBuilder` | `addAnnotation(Class<? extends Annotation> annType, QueryMetaData meta)` Creates an an annotation builder for the specified class metadata and adds it to list of builders.
`protected AnnotationBuilder` | `addAnnotation(Class<? extends Annotation> annType, SequenceMetaData meta)` Creates an an annotation builder for the specified class metadata and adds it to list of builders.
`protected void` | `addClassMappingAnnotations(ClassMetaData mapping)` Add mapping attributes for the given class.
`protected void` | `addFieldMappingAttributes(FieldMetaData fmd, FieldMetaData orig, AnnotationBuilder ab)` Add mapping attributes for the given field.
`void` | `addMetaData(ClassMetaData meta)` Add a class meta data to the set to be serialized.
`void` | `addQueryMetaData(QueryMetaData meta)` Add a query meta data to the set to be serialized.
`void` | `addSequenceMetaData(SequenceMetaData meta)` Add a sequence meta data to the set to be serialized.
`protected void` | `addStrategyMappingAttributes(FieldMetaData fmd, AnnotationBuilder ab)` Set mapping attributes for strategy.
`protected void` | `addSystemMappingElements(Collection toSerialize)` Add system-level mapping elements to be serialized.
`void` | `clear()` Clear the set of metadatas to be serialized.
`OpenJPAConfiguration` | `getConfiguration()` Configuration.
`Log` | `getLog()` The log to write to.
`int` | `getMode()` The serialization mode according to the expected document type.
`protected Collection` | `getObjects()`
`protected PersistenceStrategy` | `getStrategy(FieldMetaData fmd)` Return the serialized strategy name.
`protected boolean` | `isMappingMode()` Convenience method for interpreting `getMode()`.
`protected boolean` | `isMappingMode(ClassMetaData meta)` Convenience method for interpreting `getMode()`.
`protected boolean` | `isMappingMode(ValueMetaData vmd)` Convenience method for interpreting `getMode()`.
`protected boolean` | `isMetaDataMode()` Convenience method for interpreting `getMode()`.
`protected boolean` | `isQueryMode()` Convenience method for interpreting `getMode()`.
`protected AnnotationBuilder` | `newAnnotationBuilder(Class<? extends Annotation> annType)` Creates a new annotation builder for the specified annotation type.
`protected AnnotationPersistenceMetaDataSerializer.SerializationComparator` | `newSerializationComparator()` Create a new comparator for ordering objects that are to be serialized.
`boolean` | `removeAll(MetaDataRepository repos)` Remove all the components in the given repository from the set to be serialized.
`boolean` | `removeMetaData(ClassMetaData meta)` Remove a metadata from the set to be serialized.
`boolean` | `removeQueryMetaData(QueryMetaData meta)` Remove a query metadata from the set to be serialized.
`boolean` | `removeSequenceMetaData(SequenceMetaData meta)` Remove a sequence metadata from the set to be serialized.
`protected void` | `serialize(Collection objects)`
`void` | `serialize(File file, int flags)` Serialize the current set of objects to the given file.
`void` | `serialize(int flags)` Serialize the current set of objects to the files from which they were parsed.
`void` | `serialize(Map output, int flags)` Serialize the current set of objects to the files from which they were parsed.
`void` | `serialize(Writer out, int flags)` Serialize the current set of objects to the given stream.
`protected boolean` | `serializeAttributeOverride(FieldMetaData fmd, FieldMetaData orig)` Always returns false by default.
`protected void` | `serializeAttributeOverrideMappingContent(FieldMetaData fmd, FieldMetaData orig, AnnotationBuilder ab)` Serialize attribute override mapping content.
`protected void` | `serializeClass(ClassMetaData meta)` Serialize class metadata.
`protected void` | `serializeClassMappingContent(ClassMetaData mapping)` Serialize class mapping content.
`protected void` | `serializeFieldMappingContent(FieldMetaData fmd, PersistenceStrategy strategy, AnnotationBuilder ab)` Serialize field mapping content; this will be called before `#serializeValueMappingContent`.
`protected void` | `serializeInheritanceContent(ClassMetaData mapping)` Serialize inheritance content.
`protected void` | `serializeQueryMappings(ClassMetaData meta)` Serialize query mappings.
`protected void` | `serializeSequence(SequenceMetaData meta)` Serialize sequence metadata.
`protected void` | `serializeSystemMappingElement(Object obj)` Serialize unknown mapping element at system level.
`void` | `setLog(Log log)` The log to write to.
`void` | `setMode(int mode)` The serialization mode according to the expected document type.
`void` | `setMode(int mode, boolean on)` The serialization mode according to the expected document type.
`protected int` | `type(Object o)` Return the type constant for the given object based on its runtime class.
`protected void` | `writeAnnotations(Object meta, List<AnnotationBuilder> builders, Map output)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### TYPE_SEQ

    protected static final int TYPE_SEQ

See Also:
  Constant Field Values

### TYPE_QUERY

    protected static final int TYPE_QUERY

See Also:
  Constant Field Values

### TYPE_META

    protected static final int TYPE_META

See Also:
  Constant Field Values

### TYPE_CLASS_SEQS

    protected static final int TYPE_CLASS_SEQS

See Also:
  Constant Field Values

### TYPE_CLASS_QUERIES

    protected static final int TYPE_CLASS_QUERIES

See Also:
  Constant Field Values

Constructor Detail

### AnnotationPersistenceMetaDataSerializer

    public AnnotationPersistenceMetaDataSerializer(OpenJPAConfiguration conf)

  Constructor. Supply configuration.

Method Detail

### getConfiguration

    public OpenJPAConfiguration getConfiguration()

  Configuration.

### getLog

    public Log getLog()

  The log to write to.

### setLog

    public void setLog(Log log)

  The log to write to.

### getMode

    public int getMode()

  The serialization mode according to the expected document type. The mode constants act as bit flags, and therefore can be combined.

### setMode

    public void setMode(int mode)

  The serialization mode according to the expected document type. The mode constants act as bit flags, and therefore can be combined.

  Specified by:
    `setMode` in interface `AbstractCFMetaDataFactory.Serializer`

### setMode

    public void setMode(int mode,
                        boolean on)

  The serialization mode according to the expected document type.

### isMetaDataMode

    protected boolean isMetaDataMode()

  Convenience method for interpreting `getMode()`.

### isQueryMode

    protected boolean isQueryMode()

  Convenience method for interpreting `getMode()`.

### isMappingMode

    protected boolean isMappingMode()

  Convenience method for interpreting `getMode()`.

### isMappingMode

    protected boolean isMappingMode(ClassMetaData meta)

  Convenience method for interpreting `getMode()`. Takes into account whether mapping information is loaded for the given instance. OPENJPA-1360 - Allow @Column attributes when meta.isEmbeddedOnly()

### isMappingMode

    protected boolean isMappingMode(ValueMetaData vmd)

  Convenience method for interpreting `getMode()`. Takes into account whether mapping information is loaded for the given instance.

### addMetaData

    public void addMetaData(ClassMetaData meta)

  Add a class meta data to the set to be serialized.

  Specified by:
    `addMetaData` in interface `AbstractCFMetaDataFactory.Serializer`

### addSequenceMetaData

    public void addSequenceMetaData(SequenceMetaData meta)

  Add a sequence meta data to the set to be serialized.

  Specified by:
    `addSequenceMetaData` in interface `AbstractCFMetaDataFactory.Serializer`

### addQueryMetaData

    public void addQueryMetaData(QueryMetaData meta)

  Add a query meta data to the set to be serialized.

  Specified by:
    `addQueryMetaData` in interface `AbstractCFMetaDataFactory.Serializer`

### addAll

    public void addAll(MetaDataRepository repos)

  Add all components in the given repository to the set to be serialized.

  Specified by:
    `addAll` in interface `AbstractCFMetaDataFactory.Serializer`

### removeMetaData

    public boolean removeMetaData(ClassMetaData meta)

  Remove a metadata from the set to be serialized.

  Specified by:
    `removeMetaData` in interface `AbstractCFMetaDataFactory.Serializer`
  Returns:
    true if removed, false if not in set

### removeSequenceMetaData

    public boolean removeSequenceMetaData(SequenceMetaData meta)

  Remove a sequence metadata from the set to be serialized.

  Returns:
    true if removed, false if not in set

### removeQueryMetaData

    public boolean removeQueryMetaData(QueryMetaData meta)

  Remove a query metadata from the set to be serialized.

  Returns:
    true if removed, false if not in set

### removeAll

    public boolean removeAll(MetaDataRepository repos)

  Remove all the components in the given repository from the set to be serialized.

  Returns:
    true if any components removed, false if none in set

### clear

    public void clear()

  Clear the set of metadatas to be serialized.

### addSystemMappingElements

    protected void addSystemMappingElements(Collection toSerialize)

  Add system-level mapping elements to be serialized. Does nothing by default.

### newSerializationComparator

    protected AnnotationPersistenceMetaDataSerializer.SerializationComparator newSerializationComparator()

  Create a new comparator for ordering objects that are to be serialized.

### newAnnotationBuilder

    protected AnnotationBuilder newAnnotationBuilder(Class<? extends Annotation> annType)

  Creates a new annotation builder for the specified annotation type.

  Returns:

### addAnnotation

    protected void addAnnotation(AnnotationBuilder ab,
                                 Object meta)

### addAnnotation

    protected void addAnnotation(AnnotationBuilder ab,
                                 ClassMetaData meta)

  Add an annotation builder to list of builders for the specified class metadata.

### addAnnotation

    protected void addAnnotation(AnnotationBuilder ab,
                                 FieldMetaData meta)

  Add an annotation builder to list of builders for the specified field metadata.

### addAnnotation

    protected void addAnnotation(AnnotationBuilder ab,
                                 SequenceMetaData meta)

  Add an annotation builder to list of builders for the specified sequence metadata.

### addAnnotation

    protected void addAnnotation(AnnotationBuilder ab,
                                 QueryMetaData meta)

  Add an annotation builder to list of builders for the specified query metadata.

### addAnnotation

    protected AnnotationBuilder addAnnotation(Class<? extends Annotation> annType,
                                              ClassMetaData meta)

  Creates an an annotation builder for the specified class metadata and adds it to list of builders.

### addAnnotation

    protected AnnotationBuilder addAnnotation(Class<? extends Annotation> annType,
                                              FieldMetaData meta)

  Creates an an annotation builder for the specified class metadata and adds it to list of builders.

### addAnnotation

    protected AnnotationBuilder addAnnotation(Class<? extends Annotation> annType,
                                              SequenceMetaData meta)

  Creates an an annotation builder for the specified class metadata and adds it to list of builders.

### addAnnotation

    protected AnnotationBuilder addAnnotation(Class<? extends Annotation> annType,
                                              QueryMetaData meta)

  Creates an an annotation builder for the specified class metadata and adds it to list of builders.

### serialize

    protected void serialize(Collection objects)

### type

    protected int type(Object o)

  Return the type constant for the given object based on its runtime class. If the runtime class does not correspond to any of the known types then returns -1. This can happen for tags that are not handled at this store-agnostic level.

### serializeSystemMappingElement

    protected void serializeSystemMappingElement(Object obj)

  Serialize unknown mapping element at system level.

### serializeSequence

    protected void serializeSequence(SequenceMetaData meta)

  Serialize sequence metadata.

### serializeClass

    protected void serializeClass(ClassMetaData meta)

  Serialize class metadata.

### addClassMappingAnnotations

    protected void addClassMappingAnnotations(ClassMetaData mapping)

  Add mapping attributes for the given class. Does nothing by default

### serializeClassMappingContent

    protected void serializeClassMappingContent(ClassMetaData mapping)

  Serialize class mapping content. Does nothing by default.

### serializeInheritanceContent

    protected void serializeInheritanceContent(ClassMetaData mapping)

  Serialize inheritance content. Does nothing by default.

### serializeQueryMappings

    protected void serializeQueryMappings(ClassMetaData meta)

  Serialize query mappings. Does nothing by default.

### addFieldMappingAttributes

    protected void addFieldMappingAttributes(FieldMetaData fmd,
                                             FieldMetaData orig,
                                             AnnotationBuilder ab)

  Add mapping attributes for the given field. Does nothing by default.

### serializeAttributeOverride

    protected boolean serializeAttributeOverride(FieldMetaData fmd,
                                                 FieldMetaData orig)

  Always returns false by default.

### serializeAttributeOverrideMappingContent

    protected void serializeAttributeOverrideMappingContent(FieldMetaData fmd,
                                                            FieldMetaData orig,
                                                            AnnotationBuilder ab)

  Serialize attribute override mapping content. Does nothing by default,

### getStrategy

    protected PersistenceStrategy getStrategy(FieldMetaData fmd)

  Return the serialized strategy name.

### serializeFieldMappingContent

    protected void serializeFieldMappingContent(FieldMetaData fmd,
                                                PersistenceStrategy strategy,
                                                AnnotationBuilder ab)

  Serialize field mapping content; this will be called before `#serializeValueMappingContent`. Does nothing by default.

### addStrategyMappingAttributes

    protected void addStrategyMappingAttributes(FieldMetaData fmd,
                                                AnnotationBuilder ab)

  Set mapping attributes for strategy. Sets mapped-by by default.

### getObjects

    protected Collection getObjects()

### writeAnnotations

    protected void writeAnnotations(Object meta,
                                    List<AnnotationBuilder> builders,
                                    Map output)

### serialize

    public void serialize(Map output,
                          int flags)
                   throws IOException

  Description copied from interface: `MetaDataSerializer`
  Serialize the current set of objects to the files from which they were parsed. The objects must implement the `SourceTracker` interface.

  Specified by:
    `serialize` in interface `MetaDataSerializer`
  Parameters:
    `output` - if null, then serialize directly to the file system; otherwise, populate the specified `Map` with keys that are the `File` instances, and values that are the `String` contents of the MetaData
    `flags` - bit flags specifying the output flags; e.g. `MetaDataSerializer.PRETTY`
  Throws:
    `IOException`

### serialize

    public void serialize(File file,
                          int flags)
                   throws IOException

  Description copied from interface: `MetaDataSerializer`
  Serialize the current set of objects to the given file.

  Specified by:
    `serialize` in interface `MetaDataSerializer`
    `flags` - bit flags specifying the output flags; e.g. `MetaDataSerializer.PRETTY` | `MetaDataSerializer.APPEND`
  Throws:
    `IOException`

### serialize

    public void serialize(Writer out,
                          int flags)
                   throws IOException

  Description copied from interface: `MetaDataSerializer`
  Serialize the current set of objects to the given stream.

  Specified by:
    `serialize` in interface `MetaDataSerializer`
    `flags` - bit flags specifying the output flags; e.g. `MetaDataSerializer.PRETTY`
  Throws:
    `IOException`

### serialize

    public void serialize(int flags)
                   throws IOException

  Description copied from interface: `MetaDataSerializer`
  Serialize the current set of objects to the files from which they were parsed. Any objects for which a source file cannot be determined will not be included in the output.

  Specified by:
    `serialize` in interface `MetaDataSerializer`
  Parameters:
    `flags` - bit flags specifying the output flags; e.g. `MetaDataSerializer.PRETTY`
  Throws:
    `IOException`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2006-2013 Apache Software Foundation. All Rights Reserved.