spki
Class CapabilityCert

java.lang.Object
  |
  +--spki.BaseObj
        |
        +--spki.CertBody
              |
              +--spki.CapabilityCert

public class CapabilityCert
extends CertBody

spki CapabilityCert class.

Formal definitions:

 <capability>:: <tag> ;
 <capability-cert>:: "(" "cap-cert" <version>? <cert-display>? <issuer> <issuer-loc>? <subject-cap> <subject-loc>?
 <empowerment> <capability> <valid> <escrow>? <created>? <comment>? ")" ;
 

Version:
$Id: CapabilityCert.java,v 1.6 2002/06/22 10:41:42 tep Exp $
Author:
Tep Narula <tep@win.trlabs.ca>
See Also:
Issuer, LocObj, SubjectCapability, Empowerment, Tag, Validity, Escrow

Field Summary
private static String __ME
          This class's full name.
private  Tag capability
          The capability field.
private  Empowerment empowerment
          The empowerment field.
static String SEXP_NAME
          This class S-Expression type name, used by toSExpression() and other methods.
private  SubjectCapability subject
          The subject field.
private  Validity validity
          The validity field.
 
Fields inherited from class spki.CertBody
__ME, cert_display, CERT_DISPLAY_SEXP_NAME, comment, COMMENT_SEXP_NAME, created, CREATED_SEXP_NAME, escrow, issuer, issuer_loc, ISSUER_LOC_SEXP_NAME, SEXP_NAME, subject_loc, SUBJECT_LOC_SEXP_NAME, version, VERSION, VERSION_SEXP_NAME
 
Fields inherited from class spki.BaseObj
__ME, cache_sexp, cached_sexp, DEFAULT_HASH_ALG, locked, SEXP_NAME
 
Constructor Summary
protected CapabilityCert()
          Don't use me!
  CapabilityCert(Sexp cert_display, Issuer issuer, LocObj[] issuer_loc, SubjectCapability subject, LocObj[] subject_loc, Empowerment empowerment, Tag capability, Validity validity, Escrow escrow, Sexp comment)
          Create an immutable CapabilityCert object from given fields.
  CapabilityCert(SExpression sexp)
          Create an immutable CapabilityCert object from given S-Expression.
 
Method Summary
 Tag getCapability()
          Get the capability field.
 Empowerment getEmpowerment()
          Get the empowerment field.
 Subject getSubject()
          Get the subject field.
 Validity getValidity()
          Get the validity field.
 SExpression toSExpression()
          Build an SExpression representing this object.
 
Methods inherited from class spki.CertBody
buildCertDisplaySExpression, buildCommentSExpression, buildCreatedSExpression, buildIssuerLocSExpression, buildSubjectLocSExpression, buildVersionSExpression, getCertDisplay, getComment, getCreated, getEscrow, getInstance, getIssuer, getIssuerLoc, getIssuerLocLength, getSubjectLoc, getSubjectLocLength, isCertBody, setCreated
 
Methods inherited from class spki.BaseObj
disableSExpressionCaching, enableSExpressionCaching, extractHashAlgId, getCachedSExpression, isLocked, isSListOfType, lock, providerToSPKI, setCachedSExpression, spkiToProvider, toString
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, wait, wait, wait
 

Field Detail

__ME

private static final String __ME
This class's full name.

SEXP_NAME

public static final String SEXP_NAME
This class S-Expression type name, used by toSExpression() and other methods.
See Also:
toSExpression()

subject

private SubjectCapability subject
The subject field.

validity

private Validity validity
The validity field.

empowerment

private Empowerment empowerment
The empowerment field.

capability

private Tag capability
The capability field.
Constructor Detail

CapabilityCert

protected CapabilityCert()
                  throws SPKIException
Don't use me!
See Also:
CapabilityCert(SExpression), CapabilityCert(Sexp,Issuer,LocObj[],SubjectCapability,LocObj[],Empowerment,Tag,Validity,Escrow,Sexp)

CapabilityCert

public CapabilityCert(SExpression sexp)
               throws ParseException,
                      SPKIException
Create an immutable CapabilityCert object from given S-Expression.
See Also:
CertBody.CertBody(SExpression)

CapabilityCert

public CapabilityCert(Sexp cert_display,
                      Issuer issuer,
                      LocObj[] issuer_loc,
                      SubjectCapability subject,
                      LocObj[] subject_loc,
                      Empowerment empowerment,
                      Tag capability,
                      Validity validity,
                      Escrow escrow,
                      Sexp comment)
               throws SPKIException
Create an immutable CapabilityCert object from given fields.
Parameters:
cert_display - The optional display field, maybe null.
issuer - The issuer field.
issuer_loc - The optional issuer-info, maybe null.
subject - The subject field.
subject_loc - The optional subject-info field, maybe null.
empowerment - The empowerment field.
capability - The capability field.
validity - The validity field.
escrow - The optional escrow field, maybe null.
comment - The optional comment field, maybe null.
Throws:
SPKIException - if something went wrong.
See Also:
CertBody.CertBody(Sexp,Issuer,LocObj[],LocObj[],Escrow,Sexp)
Method Detail

toSExpression

public SExpression toSExpression()
                          throws SPKIException
Description copied from interface: SPKIObject
Build an SExpression representing this object.
Overrides:
toSExpression in class BaseObj
Tags copied from interface: SPKIObject
Returns:
SExpression object representing this object, or null.
Throws:
SPKIException - if something went wrong during conversion.

getSubject

public Subject getSubject()
                   throws SPKIException
Get the subject field. If the subj-obj is a relative name, it'd create and return a new SubjectCapability object with a local name, anchored by the issuer's principal, as subj-obj. Otherwise, the subject field is return as is.
Overrides:
getSubject in class CertBody
See Also:
SubjectCapability

getValidity

public Validity getValidity()
Description copied from class: CertBody
Get the validity field.
Overrides:
getValidity in class CertBody
Tags copied from class: CertBody
Returns:
a Validity object.

getEmpowerment

public Empowerment getEmpowerment()
Get the empowerment field.
Returns:
an Empowerment object.

getCapability

public Tag getCapability()
Get the capability field.
Returns:
a Tag object.