## javax.mail
Class Provider

    java.lang.Object
      javax.mail.Provider

    public class Provider

extends java.lang.Object

The Provider is a class that describes a protocol implementation. The values typically come from the javamail.providers and javamail.default.providers resource files. An application may also create and register a Provider object to dynamically add support for a new provider.

Nested Class Summary
`static class` `Provider.Type` This inner class defines the Provider type.

Constructor Summary
`Provider(Provider.Type type, java.lang.String protocol, java.lang.String classname, java.lang.String vendor, java.lang.String version)` Create a new provider of the specified type for the specified protocol.

Method Summary
`java.lang.String` `getClassName()` Returns name of the class that implements the protocol
`java.lang.String` `getProtocol()` Returns the protocol supported by this Provider
`Provider.Type` `getType()` Returns the type of this Provider
`java.lang.String` `getVendor()` Returns name of vendor associated with this implementation or null
`java.lang.String` `getVersion()` Returns version of this implementation or null if no version
`java.lang.String` `toString()` Overrides Object.toString()

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

Constructor Detail

### Provider

    public Provider(Provider.Type type,
                    java.lang.String protocol,
                    java.lang.String classname,
                    java.lang.String vendor,
                    java.lang.String version)

  Create a new provider of the specified type for the specified protocol. The specified class implements the provider.

  Parameters:
    `type` - Type.STORE or Type.TRANSPORT
    `protocol` - valid protocol for the type
    `classname` - class name that implements this protocol
    `vendor` - optional string identifying the vendor (may be null)
    `version` - optional implementation version string (may be null)
  Since:
    JavaMail 1.4

Method Detail

### getType

    public Provider.Type getType()

  Returns the type of this Provider

### getProtocol

    public java.lang.String getProtocol()

  Returns the protocol supported by this Provider

### getClassName

    public java.lang.String getClassName()

  Returns name of the class that implements the protocol

### getVendor

    public java.lang.String getVendor()

  Returns name of vendor associated with this implementation or null

### getVersion

    public java.lang.String getVersion()

  Returns version of this implementation or null if no version

### toString

    public java.lang.String toString()

  Overrides Object.toString()

  Overrides:
    `toString` in class `java.lang.Object`