org.apache.xmlbeans

## Class BindingConfig

- java.lang.Object
- - org.apache.xmlbeans.BindingConfig

- Direct Known Subclasses:
    BindingConfigImpl

      public class BindingConfig
      extends Object

  The BindingConfig class is used during compilation to control the generation of java source files. The default BindingConfig does nothing, but sub-classes should provide more interesting behavior.
  See Also:
    `XmlBeans.compileXmlBeans()`

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `QNAME_ACCESSOR_ATTRIBUTE`
    `static int` | `QNAME_ACCESSOR_ELEMENT`
    `static int` | `QNAME_DOCUMENT_TYPE`
    `static int` | `QNAME_TYPE`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `BindingConfig()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `InterfaceExtension[]` | `getInterfaceExtensions()`
    `InterfaceExtension[]` | `getInterfaceExtensions(String fullJavaName)`
    `PrePostExtension` | `getPrePostExtension(String fullJavaName)`
    `PrePostExtension[]` | `getPrePostExtensions()`
    `UserType[]` | `getUserTypes()`
    `String` | `lookupJavanameForQName(QName qname, int kind)`
    `String` | `lookupPackageForNamespace(String uri)`
    `String` | `lookupPrefixForNamespace(String uri)`
    `String` | `lookupSuffixForNamespace(String uri)`
    `UserType` | `lookupUserTypeForQName(QName qname)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### QNAME_TYPE

          public static final int QNAME_TYPE

      See Also:
        Constant Field Values

    - #### QNAME_DOCUMENT_TYPE

          public static final int QNAME_DOCUMENT_TYPE

      See Also:
        Constant Field Values

    - #### QNAME_ACCESSOR_ELEMENT

          public static final int QNAME_ACCESSOR_ELEMENT

      See Also:
        Constant Field Values

    - #### QNAME_ACCESSOR_ATTRIBUTE

          public static final int QNAME_ACCESSOR_ATTRIBUTE

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### BindingConfig

          public BindingConfig()

  - ### Method Detail

    - #### lookupPackageForNamespace

          public String lookupPackageForNamespace(String uri)

      Parameters:
        `uri` - the namespace uri
      Returns:
        the package name for a namespace or null.

    - #### lookupPrefixForNamespace

          public String lookupPrefixForNamespace(String uri)

      Parameters:
        `uri` - the namespace uri
      Returns:
        the prefix applied to each java name for a namespace or null.

    - #### lookupSuffixForNamespace

          public String lookupSuffixForNamespace(String uri)

      Parameters:
        `uri` - the namespace uri
      Returns:
        Get the suffix applied to each java name for a namespace or null.

    - #### lookupJavanameForQName

          public String lookupJavanameForQName(QName qname,
                                               int kind)

      Parameters:
        `qname` - the qname of the java name
        `kind` - the type of the qname, which one of `QNAME_TYPE`, `QNAME_DOCUMENT_TYPE`, `QNAME_ACCESSOR_ELEMENT`, `QNAME_ACCESSOR_ATTRIBUTE`
      Returns:
        Get the java name for a QName of a specific component kind, or null.

    - #### getInterfaceExtensions

          public InterfaceExtension[] getInterfaceExtensions()

      Returns:
        all configured InterfaceExtensions or an empty array.

    - #### getInterfaceExtensions

          public InterfaceExtension[] getInterfaceExtensions(String fullJavaName)

      Parameters:
        `fullJavaName` - the fully qualified java type name
      Returns:
        all InterfaceExtensions defined for the fully qualified java type generated from schema compilation or an empty array.

    - #### getPrePostExtensions

          public PrePostExtension[] getPrePostExtensions()

      Returns:
        all configued PrePostExtensions or an empty array.

    - #### getPrePostExtension

          public PrePostExtension getPrePostExtension(String fullJavaName)

      Parameters:
        `fullJavaName` - the fully qualified java type name
      Returns:
        the PrePostExtension defined for the fully qualified java type generated from schema compilation or null.

    - #### getUserTypes

          public UserType[] getUserTypes()

      Returns:
        all defined user types.

    - #### lookupUserTypeForQName

          public UserType lookupUserTypeForQName(QName qname)

      Parameters:
        `qname` - the qname of the user type
      Returns:
        a user defined Java type for a given QName.