    All Packages  Class Hierarchy  This Package  Previous  Next  Index

# Class java.security.IdentityScope

    java.lang.Object
       |
       +----java.security.Identity
               |
               +----java.security.IdentityScope

public abstract class IdentityScope
extends Identity

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.

See Also:
  Identity, Signer, Principal, Key

##

IdentityScope()
  This constructor is used for serialization only and should not be used by subclasses.
IdentityScope(String)
  Constructs a new identity scope with the specified name.
IdentityScope(String, IdentityScope)
  Constructs a new identity scope with the specified name and scope.

##

addIdentity(Identity)
  Adds an identity to this identity scope.
getIdentity(Principal)
  Retrieves the identity whose name is the same as that of the specified principal.
getIdentity(PublicKey)
  Retrieves the identity with the specified public key.
getIdentity(String)
  Returns the identity in this scope with the specified name (if any).
getSystemScope()
  Returns the system's identity scope.
identities()
  Returns an enumeration of all identities in this identity scope.
removeIdentity(Identity)
  Removes an identity from this identity scope.
setSystemScope(IdentityScope)
  Sets the system's identity scope.
size()
  Returns the number of identities within this identity scope.
toString()
  Returns a string representation of this identity scope, including its name, its scope name, and the number of identities in this identity scope.

##

IdentityScope

     protected IdentityScope()

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

IdentityScope

     public IdentityScope(String name)

  Constructs a new identity scope with the specified name.

  Parameters:
    name - the scope name.

IdentityScope

     public IdentityScope(String name,
                          IdentityScope scope) throws KeyManagementException

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

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

##

getSystemScope

     public static IdentityScope getSystemScope()

  Returns the system's identity scope. See the "System Identity Scope" section in the Java Cryptography Architecture API Specification & Reference .

  Returns:
    the system's identity scope.

setSystemScope

     protected static void setSystemScope(IdentityScope scope)

  Sets the system's identity scope. See the "System Identity Scope" section in the Java Cryptography Architecture API Specification & Reference .

  Parameters:
    scope - the scope to set.

size

     public abstract int size()

  Returns the number of identities within this identity scope.

  Returns:
    the number of identities within this identity scope.

getIdentity

     public abstract Identity getIdentity(String name)

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

  Parameters:
    name - the name of the identity to be retrieved.
  Returns:
    the identity named `name`, or null if there are no identities named `name` in this scope.

getIdentity

     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 - the principal corresponding to the identity to be retrieved.
  Returns:
    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.

getIdentity

     public abstract Identity getIdentity(PublicKey key)

  Retrieves the identity with the specified public key.

  Parameters:
    key - the public key for the identity to be returned.
  Returns:
    the identity with the given key, or null if there are no identities in this scope with that key.

addIdentity

     public abstract void addIdentity(Identity identity) throws KeyManagementException

  Adds an identity to this identity scope.

  Parameters:
    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.

removeIdentity

     public abstract void removeIdentity(Identity identity) throws KeyManagementException

  Removes an identity from this identity scope.

  Parameters:
    identity - the identity to be removed.
  Throws: KeyManagementException
    if the identity is missing, or another exception occurs.

identities

     public abstract Enumeration identities()

  Returns an enumeration of all identities in this identity scope.

  Returns:
    an enumeration of all identities in this identity scope.

toString

     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:
    a string representation of this identity scope.
  Overrides:
    toString in class Identity

    All Packages  Class Hierarchy  This Package  Previous  Next  Index

Submit a bug or feature - Version 1.1.8 of Java Platform API Specification
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.
Copyright 1995-1999 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.