Class AnnotationPersistenceMetaDataSerializer

    • Constructor Detail

      • AnnotationPersistenceMetaDataSerializer

        public AnnotationPersistenceMetaDataSerializer​(OpenJPAConfiguration conf)
        Constructor. Supply configuration.
    • Method Detail

      • 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.
      • 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​(java.util.Collection toSerialize)
        Add system-level mapping elements to be serialized. Does nothing by default.
      • newAnnotationBuilder

        protected AnnotationBuilder newAnnotationBuilder​(java.lang.Class<? extends java.lang.annotation.Annotation> annType)
        Creates a new annotation builder for the specified annotation type.
      • addAnnotation

        protected void addAnnotation​(AnnotationBuilder ab,
                                     java.lang.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​(java.lang.Class<? extends java.lang.annotation.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​(java.lang.Class<? extends java.lang.annotation.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​(java.lang.Class<? extends java.lang.annotation.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​(java.lang.Class<? extends java.lang.annotation.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​(java.util.Collection objects)
      • type

        protected int type​(java.lang.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​(java.lang.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.
      • 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,
      • 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 java.util.Collection getObjects()
      • writeAnnotations

        protected void writeAnnotations​(java.lang.Object meta,
                                        java.util.List<AnnotationBuilder> builders,
                                        java.util.Map output)
      • serialize

        public void serialize​(java.util.Map output,
                              int flags)
                       throws java.io.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:
        java.io.IOException
      • serialize

        public void serialize​(java.io.Writer out,
                              int flags)
                       throws java.io.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:
        java.io.IOException
      • serialize

        public void serialize​(int flags)
                       throws java.io.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:
        java.io.IOException
      • getClassMetaData

        public java.util.Map<java.lang.String,​ClassMetaData> getClassMetaData()
        Returns the stored ClassMetaData