org.eclipse.higgins.icard.provider.cardspace.personal
Class IdASBasedPersonalCard

java.lang.Object
  extended byorg.eclipse.higgins.icard.common.Card
      extended byorg.eclipse.higgins.icard.provider.cardspace.common.InformationCard
          extended byorg.eclipse.higgins.icard.provider.cardspace.common.PersonalCard
              extended byorg.eclipse.higgins.icard.provider.cardspace.personal.IdASBasedPersonalCard
All Implemented Interfaces:
org.eclipse.higgins.icard.ICard, org.eclipse.higgins.icard.IClaimContainer, org.eclipse.higgins.icard.IClaimTypeContainer, org.eclipse.higgins.icard.IInformationCard, org.eclipse.higgins.icard.IPersonalInformationCard

public class IdASBasedPersonalCard
extends org.eclipse.higgins.icard.provider.cardspace.common.PersonalCard

Implementation of personal (self-issued) CardSpace-interoperable ICard stored within IdAS context


Field Summary
 
Fields inherited from class org.eclipse.higgins.icard.provider.cardspace.common.PersonalCard
ISSUER_SELF, LOCKED, NO_PIN, UNLOCKED
 
Constructor Summary
IdASBasedPersonalCard()
           
IdASBasedPersonalCard(IdASBasedPersonalCardProvider provider, org.eclipse.higgins.idas.api.IContext ctx, Element card)
           
IdASBasedPersonalCard(IdASBasedPersonalCardProvider provider, org.eclipse.higgins.idas.api.IContext ctx, URI cardId, String cardName, ArrayList claims, byte[] image, String imageMimeType)
           
IdASBasedPersonalCard(IdASBasedPersonalCardProvider provider, org.eclipse.higgins.idas.api.IEntity card)
           
 
Method Summary
 org.eclipse.higgins.icard.IInformationCardExtension addExtension(org.eclipse.higgins.icard.io.IElement extension)
           
 void applyUpdates()
           
 void beginUpdates()
           
 void cancelUpdates()
           
 org.eclipse.higgins.icard.IClaim createClaim(String type)
           
 org.eclipse.higgins.idas.api.IEntity getCardSubject()
           
 org.eclipse.higgins.idas.api.IEntity getClaimListSubject()
           
 org.eclipse.higgins.icard.IInformationCardExtension[] getExtensions()
           
 byte[] getMasterKey()
           
 org.eclipse.higgins.icard.ICardProvider getProvider()
           
 boolean hasExtensions()
           
 void initFromDS(org.eclipse.higgins.idas.api.IEntity card, org.eclipse.higgins.idas.api.IEntity claimList)
           
 boolean isEditable()
           
 boolean isEditMode()
           
 void lock(org.eclipse.higgins.icard.auth.IPinCodeCredential credential)
           
 void removeExtension(org.eclipse.higgins.icard.IInformationCardExtension extension)
           
 org.eclipse.higgins.icard.IClaim setClaim(org.eclipse.higgins.icard.IClaim copyFrom)
           
 void setImage(byte[] image, String imageMimeType)
           
 void setIssuerName(String name)
           
 void setName(String name)
           
 void setPinCode(org.eclipse.higgins.icard.auth.IPinCodeCredential pinCodeCredential)
           
 void setTimeExpires(Date date)
           
 void unlock(org.eclipse.higgins.icard.auth.IPinCodeCredential credential)
           
 boolean validatePINCode(String pinCode)
           
 
Methods inherited from class org.eclipse.higgins.icard.provider.cardspace.common.PersonalCard
claimsToXML, getClaim, getClaimByLocalName, getClaimListContextID, getClaimListEntityID, getClaims, getPinDigest, getPinStatus, getRequiredCredentials, getType, initFromXML, toElement
 
Methods inherited from class org.eclipse.higgins.icard.provider.cardspace.common.InformationCard
getHashSalt, getIssuerID
 
Methods inherited from class org.eclipse.higgins.icard.common.Card
getCUID, getDescription, getID, getImage, getImageType, getIssuer, getIssuerName, getName, getSupportedClaimTypes, getSupportedClaimTypesUris, getSupportedTokenTypes, getTimeExpires, getTimeIssued, getTimeLastUpdated, getVersion, isClaimsRetrieved, isFormatSupported, isSelfIssued, setClaims
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.eclipse.higgins.icard.IInformationCard
getHashSalt, getIssuerID
 
Methods inherited from interface org.eclipse.higgins.icard.ICard
getCUID, getDescription, getID, getImage, getImageType, getIssuer, getIssuerName, getName, getSupportedClaimTypesUris, getSupportedTokenTypes, getTimeExpires, getTimeIssued, getTimeLastUpdated, getVersion, isClaimsRetrieved, isFormatSupported, isSelfIssued
 
Methods inherited from interface org.eclipse.higgins.icard.IClaimTypeContainer
getSupportedClaimTypes
 

Constructor Detail

IdASBasedPersonalCard

public IdASBasedPersonalCard()

IdASBasedPersonalCard

public IdASBasedPersonalCard(IdASBasedPersonalCardProvider provider,
                             org.eclipse.higgins.idas.api.IContext ctx,
                             URI cardId,
                             String cardName,
                             ArrayList claims,
                             byte[] image,
                             String imageMimeType)
                      throws org.eclipse.higgins.icard.CardException
Parameters:
provider -
ctx -
cardId -
cardName -
claims -
image -
imageMimeType -
Throws:
org.eclipse.higgins.icard.CardException

IdASBasedPersonalCard

public IdASBasedPersonalCard(IdASBasedPersonalCardProvider provider,
                             org.eclipse.higgins.idas.api.IEntity card)
                      throws Exception
Parameters:
provider -
card -
Throws:
Exception

IdASBasedPersonalCard

public IdASBasedPersonalCard(IdASBasedPersonalCardProvider provider,
                             org.eclipse.higgins.idas.api.IContext ctx,
                             Element card)
                      throws Exception
Parameters:
provider -
card -
Throws:
Exception
Method Detail

initFromDS

public void initFromDS(org.eclipse.higgins.idas.api.IEntity card,
                       org.eclipse.higgins.idas.api.IEntity claimList)
                throws Exception
Parameters:
card -
claimList -
Throws:
Exception

setName

public void setName(String name)
             throws org.eclipse.higgins.icard.CardException
Throws:
org.eclipse.higgins.icard.CardException

setImage

public void setImage(byte[] image,
                     String imageMimeType)
              throws org.eclipse.higgins.icard.CardException
Throws:
org.eclipse.higgins.icard.CardException

setIssuerName

public void setIssuerName(String name)
                   throws org.eclipse.higgins.icard.CardException
Throws:
org.eclipse.higgins.icard.CardException

setTimeExpires

public void setTimeExpires(Date date)
                    throws org.eclipse.higgins.icard.CardException
Throws:
org.eclipse.higgins.icard.CardException

getCardSubject

public org.eclipse.higgins.idas.api.IEntity getCardSubject()
                                                    throws org.eclipse.higgins.icard.CardException
Returns:
Throws:
org.eclipse.higgins.icard.CardException

getClaimListSubject

public org.eclipse.higgins.idas.api.IEntity getClaimListSubject()
                                                         throws org.eclipse.higgins.icard.CardException
Returns:
Throws:
org.eclipse.higgins.icard.CardException

getProvider

public org.eclipse.higgins.icard.ICardProvider getProvider()
Returns:
Throws:
org.eclipse.higgins.icard.CardException

setPinCode

public void setPinCode(org.eclipse.higgins.icard.auth.IPinCodeCredential pinCodeCredential)
                throws org.eclipse.higgins.icard.CardException
Parameters:
pinCodeCredential - Pin code used to protect the card. If pinCode is null, protection will be reset.
Throws:
org.eclipse.higgins.icard.CardException

getMasterKey

public byte[] getMasterKey()
                    throws org.eclipse.higgins.icard.CardException
Throws:
org.eclipse.higgins.icard.CardException

applyUpdates

public void applyUpdates()
                  throws org.eclipse.higgins.icard.InvalidStateException,
                         org.eclipse.higgins.icard.CardException
Throws:
org.eclipse.higgins.icard.InvalidStateException
org.eclipse.higgins.icard.CardException

beginUpdates

public void beginUpdates()
                  throws org.eclipse.higgins.icard.InvalidStateException
Throws:
org.eclipse.higgins.icard.InvalidStateException

cancelUpdates

public void cancelUpdates()
                   throws org.eclipse.higgins.icard.InvalidStateException
Throws:
org.eclipse.higgins.icard.InvalidStateException

isEditMode

public boolean isEditMode()

isEditable

public boolean isEditable()

createClaim

public org.eclipse.higgins.icard.IClaim createClaim(String type)
                                             throws org.eclipse.higgins.icard.InvalidTypeException,
                                                    org.eclipse.higgins.icard.ReadOnlyObjectException
Throws:
org.eclipse.higgins.icard.InvalidTypeException
org.eclipse.higgins.icard.ReadOnlyObjectException

setClaim

public org.eclipse.higgins.icard.IClaim setClaim(org.eclipse.higgins.icard.IClaim copyFrom)
                                          throws org.eclipse.higgins.icard.InvalidClaimException,
                                                 org.eclipse.higgins.icard.InvalidTypeException,
                                                 org.eclipse.higgins.icard.ReadOnlyObjectException,
                                                 org.eclipse.higgins.icard.CardException
Throws:
org.eclipse.higgins.icard.InvalidClaimException
org.eclipse.higgins.icard.InvalidTypeException
org.eclipse.higgins.icard.ReadOnlyObjectException
org.eclipse.higgins.icard.CardException

lock

public void lock(org.eclipse.higgins.icard.auth.IPinCodeCredential credential)
          throws Exception
Throws:
Exception

unlock

public void unlock(org.eclipse.higgins.icard.auth.IPinCodeCredential credential)
            throws Exception
Throws:
Exception

validatePINCode

public boolean validatePINCode(String pinCode)
                        throws Exception
Throws:
Exception

addExtension

public org.eclipse.higgins.icard.IInformationCardExtension addExtension(org.eclipse.higgins.icard.io.IElement extension)
                                                                 throws org.eclipse.higgins.icard.CardException
Throws:
org.eclipse.higgins.icard.CardException

getExtensions

public org.eclipse.higgins.icard.IInformationCardExtension[] getExtensions()

hasExtensions

public boolean hasExtensions()

removeExtension

public void removeExtension(org.eclipse.higgins.icard.IInformationCardExtension extension)
                     throws org.eclipse.higgins.icard.CardException
Throws:
org.eclipse.higgins.icard.CardException