# Class Signer

java.lang.Object
java.security.Identity
java.security.Signer

All Implemented Interfaces:
  `Serializable, Principal`

@Deprecated(since="1.2", forRemoval=true) public abstract class Signer extends Identity
Deprecated, for removal: This API element is subject to removal in a future version.
This class is deprecated and subject to removal in a future version of Java SE. It has been replaced by `java.security.KeyStore`, the `java.security.cert` package, and `java.security.Principal`.
This class is used to represent an Identity that can also digitally sign data.

The management of a signer's private keys is an important and sensitive issue that should be handled by subclasses as appropriate to their intended use.

Since:
  1.1
See Also:
  - `Identity`
  - Serialized Form

## Constructor Summary

Constructors
Modifier
Constructor
Description
`protected`
`Signer()`
Deprecated, for removal: This API element is subject to removal in a future version.
Creates a `Signer`.
``
`Signer(String name)`
Deprecated, for removal: This API element is subject to removal in a future version.
Creates a `Signer` with the specified identity name.
``
`Signer(String name, IdentityScope scope)`
Deprecated, for removal: This API element is subject to removal in a future version.
Creates a `Signer` with the specified identity name and scope.

## Method Summary

Modifier and Type
Method
Description
`PrivateKey`
`getPrivateKey()`
Deprecated, for removal: This API element is subject to removal in a future version.
Returns this signer's private key.
`final void`
`setKeyPair(KeyPair pair)`
Deprecated, for removal: This API element is subject to removal in a future version.
Sets the key pair (public key and private key) for this `Signer`.
`String`
`toString()`
Deprecated, for removal: This API element is subject to removal in a future version.
Returns a string of information about the `Signer`.

### Methods declared in class Identity

`addCertificate, certificates, equals, getInfo, getName, getPublicKey, getScope, hashCode, identityEquals, removeCertificate, setInfo, setPublicKey, toString`
Modifier and Type
Method
Description
`void`
`addCertificate(Certificate certificate)`
Deprecated, for removal: This API element is subject to removal in a future version.
Adds a certificate for this `Identity`.
`Certificate[]`
`certificates()`
Deprecated, for removal: This API element is subject to removal in a future version.
Returns a copy of all the certificates for this `Identity`.
`final boolean`
`equals(Object identity)`
Deprecated, for removal: This API element is subject to removal in a future version.
Tests for equality between the specified object and this `Identity`.
`String`
`getInfo()`
Deprecated, for removal: This API element is subject to removal in a future version.
Returns general information previously specified for this `Identity`.
`final String`
`getName()`
Deprecated, for removal: This API element is subject to removal in a future version.
Returns this identity's name.
`PublicKey`
`getPublicKey()`
Deprecated, for removal: This API element is subject to removal in a future version.
Returns this identity's public key.
`final IdentityScope`
`getScope()`
Deprecated, for removal: This API element is subject to removal in a future version.
Returns this identity's scope.
`int`
`hashCode()`
Deprecated, for removal: This API element is subject to removal in a future version.
Returns the hashcode for this `Identity`.
`protected boolean`
`identityEquals(Identity identity)`
Deprecated, for removal: This API element is subject to removal in a future version.
Tests for equality between the specified `Identity` and this `Identity`.
`void`
`removeCertificate(Certificate certificate)`
Deprecated, for removal: This API element is subject to removal in a future version.
Removes a certificate from this `Identity`.
`void`
`setInfo(String info)`
Deprecated, for removal: This API element is subject to removal in a future version.
Specifies a general information string for this `Identity`.
`void`
`setPublicKey(PublicKey key)`
Deprecated, for removal: This API element is subject to removal in a future version.
Sets this identity's public key.
`String`
`toString(boolean detailed)`
Deprecated, for removal: This API element is subject to removal in a future version.
Returns a string representation of this `Identity`, with optionally more details than that provided by the `toString` method without any arguments.

### Methods declared in class Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`
Modifier and Type
Method
Description
`protected Object`
`clone()`
Creates and returns a copy of this object.
`protected void`
`finalize()`
Deprecated, for removal: This API element is subject to removal in a future version.
Finalization is deprecated and subject to removal in a future release.
`final Class<?>`
`getClass()`
Returns the runtime class of this `Object`.
`final void`
`notify()`
Wakes up a single thread that is waiting on this object's monitor.
`final void`
`notifyAll()`
Wakes up all threads that are waiting on this object's monitor.
`final void`
`wait()`
Causes the current thread to wait until it is awakened, typically by being notified or interrupted.
`final void`
`wait(long timeoutMillis)`
Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
`final void`
`wait(long timeoutMillis, int nanos)`
Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

### Methods declared in interface Principal

`implies`
Modifier and Type
Method
Description
`default boolean`
`implies(Subject subject)`
Returns `true` if the specified subject is implied by this `Principal`.

## Constructor Details

### Signer

protected Signer()
Deprecated, for removal: This API element is subject to removal in a future version.
Creates a `Signer`. This constructor should only be used for serialization.

### Signer

public Signer(String name)
Deprecated, for removal: This API element is subject to removal in a future version.
Creates a `Signer` with the specified identity name.

Parameters:
  `name` - the identity name.

### Signer

public Signer(String name, IdentityScope scope) throws KeyManagementException
Deprecated, for removal: This API element is subject to removal in a future version.
Creates a `Signer` with the specified identity name and scope.

Parameters:
  `name` - the identity name.
  `scope` - the scope of the identity.
Throws:
  `KeyManagementException` - if there is already an identity with the same name in the scope.

## Method Details

### getPrivateKey

public PrivateKey getPrivateKey()
Deprecated, for removal: This API element is subject to removal in a future version.
Returns this signer's private key.

Returns:
  this signer's private key, or `null` if the private key has not yet been set.

### setKeyPair

public final void setKeyPair(KeyPair pair) throws InvalidParameterException, KeyException
Deprecated, for removal: This API element is subject to removal in a future version.
Sets the key pair (public key and private key) for this `Signer`.

Parameters:
  `pair` - an initialized key pair.
Throws:
  `InvalidParameterException` - if the key pair is not properly initialized.
  `KeyException` - if the key pair cannot be set for any other reason.

### toString

public String toString()
Deprecated, for removal: This API element is subject to removal in a future version.
Returns a string of information about the `Signer`.

Specified by:
  `toString` in interface `Principal`
Overrides:
  `toString` in class `Identity`
Returns:
  a string of information about the `Signer`.