com.sap.security.core.server.securestorage.remote

Class RemoteSecureStorageClientContextImpl

java.lang.Object
  extended byRemoteSecureStorageSuperContextImpl
      extended bycom.sap.security.core.server.securestorage.remote.RemoteSecureStorageClientContextImpl
All Implemented Interfaces:
RemoteSecureStorageClientContextInterface, Runnable

public class RemoteSecureStorageClientContextImpl
extends RemoteSecureStorageSuperContextImpl
implements RemoteSecureStorageClientContextInterface, Runnable

See Also:
Serialized Form

Constructor Summary
RemoteSecureStorageClientContextImpl(com.sap.engine.frame.core.configuration.ConfigurationHandler secureStorageConfigurationHandler, Object mySyncObject, com.sap.engine.frame.ApplicationServiceContext serviceContext)
          Creates a SecureStorageClient object for the specified client of the securestorage-service
RemoteSecureStorageClientContextImpl(String clientExt, com.sap.engine.frame.core.configuration.ConfigurationHandler secureStorageConfigurationHandler, Object mySyncObject, com.sap.engine.frame.ApplicationServiceContext serviceContext)
           
RemoteSecureStorageClientContextImpl(String clientID, int clientType, com.sap.engine.frame.core.configuration.ConfigurationHandler secureStorageConfigurationHandler, com.sap.engine.frame.ApplicationServiceContext serviceContext)
           
 
Method Summary
 byte[] base64Decoding(byte[] objectToDecod)
           
 byte[] base64Encoding(Serializable objectToEncode)
           
 void close()
           
 void commit()
          commits all datas of the actual ConfigurationHandler to database
 Object decrypt(SecureStorageObject objectToDecrypt)
          Decrypts a given SecureStorageObject and returns the original object
 byte[] decryptReturnBytes(SecureStorageObject objectToDecrypt)
           
 void deleteObject(String objectID)
          Deletes an object in the SecureStorage
 SecureStorageObject encrypt(Serializable objectToEncrypt)
          Encrypts the given object and returns a SecureStorageObject
 boolean exist(String objectID)
           
protected  void finalize()
           
 void generateNewKey()
          Generates a new secret key for clientapplication
 String[] getObjectIDs()
          Returns a list of all central stored objects
 boolean isSecure(String objectID)
           
 SecureStorageObject[] reEncrypt(SecureStorageObject[] objectsToReEncrypt)
          Re-encrypts an array of already encrypted SecureStorageObjects with the latest key
 byte[] retrieveBytes(String objectID)
           
 Object retrieveObject(String objectID)
          Retrieves a central stored object
 void run()
           
 void storeObject(Serializable object, String objectID)
          Stores a given object in the SecureStorage under the given objectID
 void storeObjectWithoutCommit(Serializable object, String objectID)
          Stores a given object in the SecureStorage under the given objectID.
 void updateObject(Serializable object, String objectID)
           
 void updateObjectWithoutCommit(Serializable object, String objectID)
           
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RemoteSecureStorageClientContextImpl

public RemoteSecureStorageClientContextImpl(com.sap.engine.frame.core.configuration.ConfigurationHandler secureStorageConfigurationHandler,
                                            Object mySyncObject,
                                            com.sap.engine.frame.ApplicationServiceContext serviceContext)
                                     throws RemoteException
Creates a SecureStorageClient object for the specified client of the securestorage-service

Parameters:
secureStorageConfigurationHandler -

RemoteSecureStorageClientContextImpl

public RemoteSecureStorageClientContextImpl(String clientExt,
                                            com.sap.engine.frame.core.configuration.ConfigurationHandler secureStorageConfigurationHandler,
                                            Object mySyncObject,
                                            com.sap.engine.frame.ApplicationServiceContext serviceContext)
                                     throws RemoteException

RemoteSecureStorageClientContextImpl

public RemoteSecureStorageClientContextImpl(String clientID,
                                            int clientType,
                                            com.sap.engine.frame.core.configuration.ConfigurationHandler secureStorageConfigurationHandler,
                                            com.sap.engine.frame.ApplicationServiceContext serviceContext)
                                     throws RemoteException
Method Detail

encrypt

public SecureStorageObject encrypt(Serializable objectToEncrypt)
                            throws ObjectEncryptionException
Encrypts the given object and returns a SecureStorageObject

Specified by:
encrypt in interface RemoteSecureStorageClientContextInterface
Parameters:
objectToEncrypt -
Returns:
SecureStorageObject
Throws:
ObjectEncryptionException

base64Encoding

public byte[] base64Encoding(Serializable objectToEncode)
                      throws ObjectEncryptionException
Specified by:
base64Encoding in interface RemoteSecureStorageClientContextInterface
Throws:
ObjectEncryptionException

reEncrypt

public SecureStorageObject[] reEncrypt(SecureStorageObject[] objectsToReEncrypt)
                                throws ObjectEncryptionException
Re-encrypts an array of already encrypted SecureStorageObjects with the latest key

Parameters:
objectsToReEncrypt -
Returns:
SecureStorageObject[]
Throws:
ObjectEncryptionException

decrypt

public Object decrypt(SecureStorageObject objectToDecrypt)
               throws ObjectDecryptionException
Decrypts a given SecureStorageObject and returns the original object

Specified by:
decrypt in interface RemoteSecureStorageClientContextInterface
Parameters:
objectToDecrypt -
Returns:
Object
Throws:
ObjectDecryptionException

decryptReturnBytes

public byte[] decryptReturnBytes(SecureStorageObject objectToDecrypt)
                          throws ObjectDecryptionException
Throws:
ObjectDecryptionException

base64Decoding

public byte[] base64Decoding(byte[] objectToDecod)
                      throws ObjectDecryptionException
Specified by:
base64Decoding in interface RemoteSecureStorageClientContextInterface
Throws:
ObjectDecryptionException

commit

public void commit()
            throws ObjectModificationException
commits all datas of the actual ConfigurationHandler to database

Specified by:
commit in interface RemoteSecureStorageClientContextInterface
Throws:
ObjectModificationException

close

public void close()
Specified by:
close in interface RemoteSecureStorageClientContextInterface

storeObjectWithoutCommit

public void storeObjectWithoutCommit(Serializable object,
                                     String objectID)
                              throws ObjectStorageException
Stores a given object in the SecureStorage under the given objectID. No commit is done. To store the objects in a persistent way use method .commit() after this method or use method storeObject(Serializable object, String objectID)!!

Specified by:
storeObjectWithoutCommit in interface RemoteSecureStorageClientContextInterface
Parameters:
object -
objectID -
Throws:
ObjectStorageException

storeObject

public void storeObject(Serializable object,
                        String objectID)
                 throws ObjectStorageException
Stores a given object in the SecureStorage under the given objectID

Specified by:
storeObject in interface RemoteSecureStorageClientContextInterface
Parameters:
object -
objectID -
Throws:
ObjectStorageException

generateNewKey

public void generateNewKey()
                    throws KeyGenerationException
Generates a new secret key for clientapplication

Specified by:
generateNewKey in interface RemoteSecureStorageClientContextInterface
Throws:
KeyGenerationException

deleteObject

public void deleteObject(String objectID)
                  throws ObjectDeletionException
Deletes an object in the SecureStorage

Specified by:
deleteObject in interface RemoteSecureStorageClientContextInterface
Parameters:
objectID -
Throws:
ObjectDeletionException

retrieveObject

public Object retrieveObject(String objectID)
                      throws ObjectRetrievalException
Retrieves a central stored object

Specified by:
retrieveObject in interface RemoteSecureStorageClientContextInterface
Parameters:
objectID -
Returns:
Object
Throws:
ObjectRetrievalException

retrieveBytes

public byte[] retrieveBytes(String objectID)
                     throws ObjectRetrievalException
Specified by:
retrieveBytes in interface RemoteSecureStorageClientContextInterface
Throws:
ObjectRetrievalException

getObjectIDs

public String[] getObjectIDs()
                      throws StorageLocationOpenException,
                             ObjectRetrievalException
Returns a list of all central stored objects

Specified by:
getObjectIDs in interface RemoteSecureStorageClientContextInterface
Returns:
String[]
Throws:
StorageLocationOpenException
ObjectRetrievalException

updateObjectWithoutCommit

public void updateObjectWithoutCommit(Serializable object,
                                      String objectID)
                               throws ObjectModificationException
Specified by:
updateObjectWithoutCommit in interface RemoteSecureStorageClientContextInterface
Throws:
ObjectModificationException

updateObject

public void updateObject(Serializable object,
                         String objectID)
                  throws SecureStorageException
Specified by:
updateObject in interface RemoteSecureStorageClientContextInterface
Throws:
SecureStorageException

exist

public boolean exist(String objectID)
              throws SecureStorageException
Specified by:
exist in interface RemoteSecureStorageClientContextInterface
Throws:
SecureStorageException

isSecure

public boolean isSecure(String objectID)
                 throws ObjectModificationException
Specified by:
isSecure in interface RemoteSecureStorageClientContextInterface
Throws:
ObjectModificationException

finalize

protected void finalize()
                 throws Throwable
Throws:
Throwable

run

public void run()
Specified by:
run in interface Runnable


Copyright 2006 SAP AG. All rights reserved. No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG. The information contained herein may be changed without prior notice. Microsoft, Windows, Outlook, and PowerPoint are registered trademarks of Microsoft Corporation. Oracle is a registered trademark of Oracle Corporation. UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group. Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, and MultiWin are trademarks or registered trademarks of Citrix Systems, Inc. HTML, XML, XHTML and W3C are trademarks or registered trademarks of W3C, World Wide Web Consortium, Massachusetts Institute of Technology. Java is a registered trademark of Sun Microsystems, Inc. JavaScript is a registered trademark of Sun Microsystems, Inc., used under license for technology invented and implemented by Netscape. MaxDB is a trademark of MySQL AB, Sweden. SAP, R/3, mySAP, mySAP.com, xApps, xApp, SAP NetWeaver, and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP AG in Germany and in several other countries all over the world. All other product and service names mentioned are the trademarks of their respective companies. Data contained in this document serves informational purposes only. National product specifications may vary. These materials are subject to change without notice. These materials are provided by SAP AG and its affiliated companies ("SAP Group") for informational purposes only, without representation or warranty of any kind, and SAP Group shall not be liable for errors or omissions with respect to the materials. The only warranties for SAP Group products and services are those that are set forth in the express warranty statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional warranty.