IdentityScope

public abstract class IdentityScope
extends Identity

java.lang.Object
   ↳ java.security.Identity
     ↳ java.security.IdentityScope


This class was deprecated in API level 3.
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 represents a scope for identities. It is an Identity itself, and therefore has a name and can have a scope. It can also optionally have a public key and associated certificates.

An IdentityScope can contain Identity objects of all kinds, including Signers. All types of Identity objects can be retrieved, added, and removed using the same methods. Note that it is possible, and in fact expected, that different types of identity scopes will apply different policies for their various operations on the various types of Identities.

There is a one-to-one mapping between keys and identities, and there can only be one copy of one key per scope. For example, suppose Acme Software, Inc is a software publisher known to a user. Suppose it is an Identity, that is, it has a public key, and a set of associated certificates. It is named in the scope using the name "Acme Software". No other named Identity in the scope has the same public key. Of course, none has the same name as well.

Summary

Public constructors

IdentityScope(String name)

Constructs a new identity scope with the specified name.

IdentityScope(String name, IdentityScope scope)

Constructs a new identity scope with the specified name and scope.

Protected constructors

IdentityScope()

This constructor is used for serialization only and should not be used by subclasses.

Public methods

abstract void addIdentity(Identity identity)

Adds an identity to this identity scope.

abstract Identity getIdentity(String name)

Returns the identity in this scope with the specified name (if any).

abstract Identity getIdentity(PublicKey key)

Retrieves the identity with the specified public key.

Identity getIdentity(Principal principal)

Retrieves the identity whose name is the same as that of the specified principal.

static IdentityScope getSystemScope()

Returns the system's identity scope.

abstract Enumeration<Identity> identities()

Returns an enumeration of all identities in this identity scope.

abstract void removeIdentity(Identity identity)

Removes an identity from this identity scope.

abstract int size()

Returns the number of identities within this identity scope.

String toString()

Returns a string representation of this identity scope, including its name, its scope name, and the number of identities in this identity scope.

Protected methods

static void setSystemScope(IdentityScope scope)

Sets the system's identity scope.

Inherited methods

void addCertificate(Certificate certificate)

Adds a certificate for this identity.

Certificate[] certificates()

Returns a copy of all the certificates for this identity.

final boolean equals(Object identity)

Tests for equality between the specified object and this identity.

String getInfo()

Returns general information previously specified for this identity.

final String getName()

Returns this identity's name.

PublicKey getPublicKey()

Returns this identity's public key.

final IdentityScope getScope()

Returns this identity's scope.

int hashCode()

Returns a hashcode for this identity.

boolean identityEquals(Identity identity)

Tests for equality between the specified identity and this identity.

void removeCertificate(Certificate certificate)

Removes a certificate from this identity.

void setInfo(String info)

Specifies a general information string for this identity.

void setPublicKey(PublicKey key)

Sets this identity's public key.

String toString()

Returns a short string describing this identity, telling its name and its scope (if any).

String toString(boolean detailed)

Returns a string representation of this identity, with optionally more details than that provided by the toString method without any arguments.

Object clone()

Creates and returns a copy of this object.

boolean equals(Object obj)

Indicates whether some other object is "equal to" this one.

void finalize()

Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.

final Class<?> getClass()

Returns the runtime class of this Object.

int hashCode()

Returns a hash code value for the 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.

String toString()

Returns a string representation of the object.

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.

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()

Causes the current thread to wait until it is awakened, typically by being notified or interrupted.

abstract boolean equals(Object another)

Compares this principal to the specified object.

abstract String getName()

Returns the name of this principal.

abstract int hashCode()

Returns a hashcode for this principal.

default boolean implies(Subject subject)

Returns true if the specified subject is implied by this principal.

abstract String toString()

Returns a string representation of this principal.

Public constructors

IdentityScope

Added in API level 1
public IdentityScope (String name)

Constructs a new identity scope with the specified name.

Parameters
name String: the scope name.

IdentityScope

Added in API level 1
public IdentityScope (String name, 
                IdentityScope scope)

Constructs a new identity scope with the specified name and scope.

Parameters
name String: the scope name.

scope IdentityScope: the scope for the new identity scope.

Throws
KeyManagementException if there is already an identity with the same name in the scope.

Protected constructors

IdentityScope

Added in API level 1
protected IdentityScope ()

This constructor is used for serialization only and should not be used by subclasses.

Public methods

addIdentity

Added in API level 1
public abstract void addIdentity (Identity identity)

Adds an identity to this identity scope.

Parameters
identity Identity: the identity to be added.

Throws
KeyManagementException if the identity is not valid, a name conflict occurs, another identity has the same public key as the identity being added, or another exception occurs.

getIdentity

Added in API level 1
public abstract Identity getIdentity (String name)

Returns the identity in this scope with the specified name (if any).

Parameters
name String: the name of the identity to be retrieved.

Returns
Identity the identity named name, or null if there are no identities named name in this scope.

getIdentity

Added in API level 1
public abstract Identity getIdentity (PublicKey key)

Retrieves the identity with the specified public key.

Parameters
key PublicKey: the public key for the identity to be returned.

Returns
Identity the identity with the given key, or null if there are no identities in this scope with that key.

getIdentity

Added in API level 1
public Identity getIdentity (Principal principal)

Retrieves the identity whose name is the same as that of the specified principal. (Note: Identity implements Principal.)

Parameters
principal Principal: the principal corresponding to the identity to be retrieved.

Returns
Identity the identity whose name is the same as that of the principal, or null if there are no identities of the same name in this scope.

getSystemScope

Added in API level 1
public static IdentityScope getSystemScope ()

Returns the system's identity scope.

Returns
IdentityScope the system's identity scope, or null if none has been set.

identities

Added in API level 1
public abstract Enumeration<Identity> identities ()

Returns an enumeration of all identities in this identity scope.

Returns
Enumeration<Identity> an enumeration of all identities in this identity scope.

removeIdentity

Added in API level 1
public abstract void removeIdentity (Identity identity)

Removes an identity from this identity scope.

Parameters
identity Identity: the identity to be removed.

Throws
KeyManagementException if the identity is missing, or another exception occurs.

size

Added in API level 1
public abstract int size ()

Returns the number of identities within this identity scope.

Returns
int the number of identities within this identity scope.

toString

Added in API level 1
public String toString ()

Returns a string representation of this identity scope, including its name, its scope name, and the number of identities in this identity scope.

Returns
String a string representation of this identity scope.

Protected methods

setSystemScope

Added in API level 1
protected static void setSystemScope (IdentityScope scope)

Sets the system's identity scope.

First, if there is a security manager, its checkSecurityAccess method is called with "setSystemScope" as its argument to see if it's ok to set the identity scope.

Parameters
scope IdentityScope: the scope to set.

Throws
SecurityException if a security manager exists and its checkSecurityAccess method doesn't allow setting the identity scope.