java.lang.Object java.security.Provider.Service
public static class Provider.Service
The description of a security service. It encapsulates the properties of a service and contains a factory method to obtain new implementation instances of this service.
Each service has a provider that offers the service, a type, an algorithm name, and the name of the class that implements the service. Optionally, it also includes a list of alternate algorithm names for this service (aliases) and attributes, which are a map of (name, value) String pairs.
This class defines the methods
supportsParameter()
and
newInstance()
which are used by the Java security framework when it searches for suitable services and instantes them. The valid arguments to those methods depend on the type of service. For the service types defined within
Java SE,
J2SE,
see the
Java Cryptography Architecture API Specification & Reference
Java Cryptography Architecture API Specification & Reference
for the valid values. Note that components outside of
Java SE
J2SE
can define additional types of services and their behavior.
Instances of this class are immutable.
Constructor Summary | |
---|---|
Provider.Service
(
Provider
provider,
String
type,
String
algorithm,
String
className,
List
<
String
> aliases,
Map
<
String
,
String
> attributes) Construct a new service. |
Method Summary | |
---|---|
String |
getAlgorithm
() Return the name of the algorithm of this service. |
String |
getAttribute
(
String
name) Return the value of the specified attribute or null if this attribute is not set for this Service. |
String |
getClassName
() Return the name of the class implementing this service. |
Provider |
getProvider
() Return the Provider of this service. |
String |
getType
() Get the type of this service. |
Object |
newInstance
(
Object
constructorParameter) Return a new instance of the implementation described by this service. |
boolean |
supportsParameter
(
Object
parameter) Test whether this Service can use the specified parameter. |
String |
toString
() Return a String representation of this service. |
Methods inherited from class java.lang. Object |
---|
clone , equals , finalize , getClass , hashCode , notify , notifyAll , wait , wait , wait |
Constructor Detail |
---|
public Provider.Service(Provider provider, String type, String algorithm, String className, List<String> aliases, Map<String,String> attributes)
Method Detail |
---|
public final String getType()
public final String getAlgorithm()
public final Provider getProvider()
public final String getClassName()
public final String getAttribute(String name)
public Object newInstance(Object constructorParameter) throws NoSuchAlgorithmException
The default implementation uses reflection to invoke the standard constructor for this type of service. Security providers can override this method to implement instantiation in a different way. For details and the values of constructorParameter that are valid for the various types of services see the
Java Cryptography Architecture API Specification & Reference
Java Cryptography Architecture API Specification & Reference
.
public boolean supportsParameter(Object parameter)
The security provider framework uses this method with some types of services to quickly exclude non-matching implementations for consideration. Applications will typically not need to call it.
For details and the values of parameter that are valid for the various types of services see the top of this class and the
Java Cryptography Architecture API Specification & Reference
Java Cryptography Architecture API Specification & Reference
. Security providers can override it to implement their own test.
public String toString()