javax.xml.messaging

## Interface ProviderMetaData

    public interface ProviderMetaData

Information about the messaging provider to which a client has a connection.

After obtaining a connection to its messaging provider, a client can get information about that provider. The following code fragment demonstrates how the `ProviderConnection` object `con` can be used to retrieve its `ProviderMetaData` object and then to get the name and version number of the messaging provider.

       ProviderMetaData pmd = con.getMetaData();
       String name = pmd.getName();
       int majorVersion = pmd.getMajorVersion();
       int minorVersion = pmd.getMinorVersion();

The `ProviderMetaData` interface also makes it possible to find out which profiles a JAXM provider supports. The following line of code uses the method `getSupportedProfiles` to retrieve an array of `String` objects naming the profile(s) that the JAXM provider supports.

       String [] profiles = pmd.getSupportedProfiles();

When a JAXM implementation supports a profile, it supports the functionality supplied by a particular messaging specification. A profile is built on top of the SOAP 1.1 and SOAP with Attachments specifications and adds more capabilities. For example, a JAXM provider may support an ebXML profile, which means that it supports headers that specify functionality defined in the ebXML specification "Message Service Specification: ebXML Routing, Transport, & Packaging, Version 1.0".

Support for profiles, which typically add enhanced security and quality of service features, is required for the implementation of end-to-end asynchronous messaging.

### Method Summary

Methods
`int` `getMajorVersion()` Retrieves an `int` indicating the major version number of the messaging provider to which the `ProviderConnection` object described by this `ProviderMetaData` object is connected.
`int` `getMinorVersion()` Retrieves an `int` indicating the minor version number of the messaging provider to which the `ProviderConnection` object described by this `ProviderMetaData` object is connected.
`String` `getName()` Retrieves a `String` containing the name of the messaging provider to which the `ProviderConnection` object described by this `ProviderMetaData` object is connected.
`String[]` `getSupportedProfiles()` Retrieves a list of the messaging profiles that are supported by the messaging provider to which the `ProviderConnection` object described by this `ProviderMetaData` object is connected.

### Method Detail

#### getName

    String getName()

Retrieves a `String` containing the name of the messaging provider to which the `ProviderConnection` object described by this `ProviderMetaData` object is connected. This string is provider implementation-dependent. It can either describe a particular instance of the provider or just give the name of the provider.

Returns:
  the messaging provider's name as a `String`

#### getMajorVersion

    int getMajorVersion()

Retrieves an `int` indicating the major version number of the messaging provider to which the `ProviderConnection` object described by this `ProviderMetaData` object is connected.

Returns:
  the messaging provider's major version number as an `int`

#### getMinorVersion

    int getMinorVersion()

Retrieves an `int` indicating the minor version number of the messaging provider to which the `ProviderConnection` object described by this `ProviderMetaData` object is connected.

Returns:
  the messaging provider's minor version number as an `int`

#### getSupportedProfiles

    String[] getSupportedProfiles()

Retrieves a list of the messaging profiles that are supported by the messaging provider to which the `ProviderConnection` object described by this `ProviderMetaData` object is connected.

Returns:
  a `String` array in which each element is a messaging profile supported by the messaging provider