Class TypeMapping


  • public final class TypeMapping
    extends java.lang.Object
    • Constructor Detail

      • TypeMapping

        public TypeMapping​(XMPMetadata metadata)
    • Method Detail

      • addToDefinedStructuredTypes

        public void addToDefinedStructuredTypes​(java.lang.String typeName,
                                                java.lang.String ns,
                                                PropertiesDescription pm)
      • getDefinedDescriptionByNamespace

        @Deprecated
        public PropertiesDescription getDefinedDescriptionByNamespace​(java.lang.String namespace)
        Deprecated.
      • getDefinedDescriptionByNamespace

        public PropertiesDescription getDefinedDescriptionByNamespace​(java.lang.String namespace,
                                                                      java.lang.String pdfaFieldName)
        Get a property description based on namespace and field name. Both are needed because there can be several property descriptions for one namespace.
        Parameters:
        namespace -
        pdfaFieldName -
        Returns:
      • instanciateDefinedType

        public AbstractStructuredType instanciateDefinedType​(java.lang.String propertyName,
                                                             java.lang.String namespace)
      • instanciateSimpleProperty

        public AbstractSimpleProperty instanciateSimpleProperty​(java.lang.String nsuri,
                                                                java.lang.String prefix,
                                                                java.lang.String name,
                                                                java.lang.Object value,
                                                                Types type)
      • instanciateSimpleField

        public AbstractSimpleProperty instanciateSimpleField​(java.lang.Class<?> clz,
                                                             java.lang.String nsuri,
                                                             java.lang.String prefix,
                                                             java.lang.String propertyName,
                                                             java.lang.Object value)
      • isStructuredTypeNamespace

        public boolean isStructuredTypeNamespace​(java.lang.String namespace)
        Check if a namespace used reference a complex basic types (like Thumbnails)
        Parameters:
        namespace - The namespace URI to check
        Returns:
        True if namespace URI is a reference for a complex basic type
      • isDefinedTypeNamespace

        public boolean isDefinedTypeNamespace​(java.lang.String namespace)
      • isDefinedType

        public boolean isDefinedType​(java.lang.String name)
      • addNewNameSpace

        public void addNewNameSpace​(java.lang.String ns,
                                    java.lang.String preferred)
      • getAssociatedSchemaObject

        @Deprecated
        public XMPSchema getAssociatedSchemaObject​(XMPMetadata metadata,
                                                   java.lang.String namespace,
                                                   java.lang.String prefix)
                                            throws XmpSchemaException
        Deprecated.
        This method will be removed in 4.0. If you need it, let us know.
        Return the specialized schema class representation if it's known (create and add it to metadata). In other cases, return null
        Parameters:
        metadata - Metadata to link the new schema
        namespace - The namespace URI
        prefix - The namespace prefix
        Returns:
        Schema representation
        Throws:
        XmpSchemaException - When Instancing specified Object Schema failed
      • getSchemaFactory

        public XMPSchemaFactory getSchemaFactory​(java.lang.String namespace)
      • isDefinedSchema

        public boolean isDefinedSchema​(java.lang.String namespace)
        Say if a specific namespace is known
        Parameters:
        namespace - The namespace URI checked
        Returns:
        True if namespace URI is known
      • isDefinedNamespace

        public boolean isDefinedNamespace​(java.lang.String namespace)
      • getSpecifiedPropertyType

        public PropertyType getSpecifiedPropertyType​(javax.xml.namespace.QName qName,
                                                     java.lang.String parentTypeName)
                                              throws BadFieldValueException
        Give type of specified property in specified schema (given by its namespaceURI)
        Parameters:
        qName - the property Qualified Name
        parentTypeName - the type name of the parent, or null if not known. This is intended to help when the field name is in several types, e.g. "Values" in exif.
        Returns:
        Property type declared for namespace specified, null if unknown
        Throws:
        BadFieldValueException - if the name of a type was not found.
      • initializePropMapping

        public PropertiesDescription initializePropMapping​(java.lang.Class<?> classSchem)
      • createBoolean

        public BooleanType createBoolean​(java.lang.String namespaceURI,
                                         java.lang.String prefix,
                                         java.lang.String propertyName,
                                         boolean value)
      • createDate

        public DateType createDate​(java.lang.String namespaceURI,
                                   java.lang.String prefix,
                                   java.lang.String propertyName,
                                   java.util.Calendar value)
      • createInteger

        public IntegerType createInteger​(java.lang.String namespaceURI,
                                         java.lang.String prefix,
                                         java.lang.String propertyName,
                                         int value)
      • createReal

        public RealType createReal​(java.lang.String namespaceURI,
                                   java.lang.String prefix,
                                   java.lang.String propertyName,
                                   float value)
      • createText

        public TextType createText​(java.lang.String namespaceURI,
                                   java.lang.String prefix,
                                   java.lang.String propertyName,
                                   java.lang.String value)
      • createProperName

        public ProperNameType createProperName​(java.lang.String namespaceURI,
                                               java.lang.String prefix,
                                               java.lang.String propertyName,
                                               java.lang.String value)
      • createURI

        public URIType createURI​(java.lang.String namespaceURI,
                                 java.lang.String prefix,
                                 java.lang.String propertyName,
                                 java.lang.String value)
      • createURL

        public URLType createURL​(java.lang.String namespaceURI,
                                 java.lang.String prefix,
                                 java.lang.String propertyName,
                                 java.lang.String value)
      • createRenditionClass

        public RenditionClassType createRenditionClass​(java.lang.String namespaceURI,
                                                       java.lang.String prefix,
                                                       java.lang.String propertyName,
                                                       java.lang.String value)
      • createPart

        public PartType createPart​(java.lang.String namespaceURI,
                                   java.lang.String prefix,
                                   java.lang.String propertyName,
                                   java.lang.String value)
      • createMIMEType

        public MIMEType createMIMEType​(java.lang.String namespaceURI,
                                       java.lang.String prefix,
                                       java.lang.String propertyName,
                                       java.lang.String value)
      • createLocale

        public LocaleType createLocale​(java.lang.String namespaceURI,
                                       java.lang.String prefix,
                                       java.lang.String propertyName,
                                       java.lang.String value)
      • createGUID

        public GUIDType createGUID​(java.lang.String namespaceURI,
                                   java.lang.String prefix,
                                   java.lang.String propertyName,
                                   java.lang.String value)
      • createChoice

        public ChoiceType createChoice​(java.lang.String namespaceURI,
                                       java.lang.String prefix,
                                       java.lang.String propertyName,
                                       java.lang.String value)
      • createAgentName

        public AgentNameType createAgentName​(java.lang.String namespaceURI,
                                             java.lang.String prefix,
                                             java.lang.String propertyName,
                                             java.lang.String value)
      • createXPath

        public XPathType createXPath​(java.lang.String namespaceURI,
                                     java.lang.String prefix,
                                     java.lang.String propertyName,
                                     java.lang.String value)
      • createArrayProperty

        public ArrayProperty createArrayProperty​(java.lang.String namespace,
                                                 java.lang.String prefix,
                                                 java.lang.String propertyName,
                                                 Cardinality type)