de.osci.osci12.messageparts
Class ContentContainer

java.lang.Object
  |
  +--de.osci.osci12.messageparts.MessagePart
        |
        +--de.osci.osci12.messageparts.ContentContainer
All Implemented Interfaces:
java.io.Serializable

public class ContentContainer
extends MessagePart
implements java.io.Serializable

ContentContainer

Die ContentConatiner-Klasse stellt einen OSCI-Auftragscontainer dar. Ein ContentContainer kann einen oder meherere Content- (Datencontainer) oder EncryptedData-Objekte enthalten. Attachments werden als Contents eingestellt, die eine Referenz auf das Attachment enthalten.

Ein Content-Container wird als eine Einheit signiert und / oder verschlüsselt

Copyright: Copyright (c) 2003

Organisation: bremen online services GmbH & Co. KG

Version:
1.0
See Also:
Serialized Form

Constructor Summary
ContentContainer()
          Legt ein ContentContainer-Objekt an.
 
Method Summary
 void addContent(Content content)
          Fügt dem ContentContainer ein Content-Objekt hinzu.
 void addEncryptedData(EncryptedDataOSCI encryptedDataElement)
          Fügt dem ContentContainer ein EncryptedData-Objekt hinzu.
 boolean checkAllSignatures()
          Überprüft alle Signaturen in dem ContentContainer
 boolean checkSignature(Role signtureRole)
          Überprüft die Signatur zu dem übergebenem Role Objekt
 Attachment[] getAttachments()
           
 Content[] getContents()
          Liefert die im ContentContainer enthaltenen Content-Objekte.
 EncryptedDataOSCI[] getEncryptedData()
          Liefert die im ContentContainer enthaltenen verschlüsselten Daten als EncryptedData-Objekte.
 Role[] getRoles()
          Liefert die eingestellten Rollen-Objekte des ContentContainer, welche für die Signatur sowie untergeordnete Verschlüsselungen und Signaturen verwendet wurden.
 Role[] getSigners()
          Liefert die Rollenobjekte, von denen die Signaturen angebracht wurden.
 void removeContent(Content content)
          Entfernt ein Content-Objekt aus dem ContentContainer.
 void removeEncryptedData(EncryptedDataOSCI encryptedDataElement, boolean removeAttachment)
          Entfernt ein EncryptedData-Objekt aus dem ContentContainer.
 void sign(Role signer)
          Diese Methode signiert mit dem angegebenem Rollen-Objekt den kompletten ContentContainer.
 java.lang.String toString()
          Deprecated.  
 
Methods inherited from class de.osci.osci12.messageparts.MessagePart
getRefID, setRefID
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ContentContainer

public ContentContainer()
Legt ein ContentContainer-Objekt an.

Method Detail

checkSignature

public boolean checkSignature(Role signtureRole)
                       throws de.osci.osci12.signature.OSCISignatureException,
                              java.security.NoSuchAlgorithmException,
                              java.io.IOException,
                              OSCIRoleException
Überprüft die Signatur zu dem übergebenem Role Objekt

Parameters:
signtureRole - Rollen-Objekt mit dem Zertifikat zur Signatur
Returns:
true wenn die Prüfung positiv ausgefallen ist
de.osci.osci12.signature.OSCISignatureException
java.security.NoSuchAlgorithmException
java.io.IOException
OSCIRoleException

checkAllSignatures

public boolean checkAllSignatures()
                           throws OSCIRoleException,
                                  java.security.NoSuchAlgorithmException,
                                  java.io.IOException,
                                  de.osci.osci12.signature.OSCISignatureException
Überprüft alle Signaturen in dem ContentContainer

Returns:
true wenn alle Prüfungen positiv ausgefallen sind
OSCIRoleException
java.security.NoSuchAlgorithmException
java.io.IOException
de.osci.osci12.signature.OSCISignatureException

getAttachments

public Attachment[] getAttachments()

getRoles

public Role[] getRoles()
Liefert die eingestellten Rollen-Objekte des ContentContainer, welche für die Signatur sowie untergeordnete Verschlüsselungen und Signaturen verwendet wurden.

Returns:
Array der Rollenobjekte

sign

public void sign(Role signer)
          throws OSCIException,
                 java.security.NoSuchAlgorithmException,
                 java.security.SignatureException,
                 java.io.IOException
Diese Methode signiert mit dem angegebenem Rollen-Objekt den kompletten ContentContainer.

Der Hashalgorithmus ist default auf SHA-1 festgelegt und kann im DialogHandler geändert werden (z.Zt. jedoch nicht).

Parameters:
signer - Role-Objekt mit dem Signer-Objekt
Throws:
java.io.IOException - bei Schreib-/Lesefehlern
java.security.NoSuchAlgorithmException - wenn für einen enthaltenes Content-, EncryptedData- oder Attachment-Objekt ein nicht unterstützter Hashalgorithmus gesetzt wurde oder wenn für das übergebene Role-Objekt ein nicht unterstützter Signieralgorithmus gesetzt wurde.
OSCIRoleException - wenn für das übergebene Rollenobjekt kein Signer-Objekt gesetzt wurde oder diesem das erforderliche Signaturzertifikat fehlt.
java.security.SignatureException - wenn beim Signaturvorgang ein Fehler aufgetreten ist.
OSCIException

getSigners

public Role[] getSigners()
Liefert die Rollenobjekte, von denen die Signaturen angebracht wurden.

Returns:
Array der Rollenobjekte

addContent

public void addContent(Content content)
Fügt dem ContentContainer ein Content-Objekt hinzu.

Parameters:
content - das hinzuzufügende Content-Objekt
See Also:
Content

getContents

public Content[] getContents()
Liefert die im ContentContainer enthaltenen Content-Objekte.

See Also:
Content

removeContent

public void removeContent(Content content)
                   throws java.lang.IllegalArgumentException
Entfernt ein Content-Objekt aus dem ContentContainer.

Parameters:
content - das zu entfernende Content-Objekt
java.lang.IllegalArgumentException
See Also:
Content

addEncryptedData

public void addEncryptedData(EncryptedDataOSCI encryptedDataElement)
Fügt dem ContentContainer ein EncryptedData-Objekt hinzu.

Parameters:
encryptedDataElement - das hinzuzufügende EncryptedData-Objekt
See Also:
EncryptedDataOSCI

removeEncryptedData

public void removeEncryptedData(EncryptedDataOSCI encryptedDataElement,
                                boolean removeAttachment)
Entfernt ein EncryptedData-Objekt aus dem ContentContainer. Der zweite Parameter gibt an, ob bei EncryptedData-Objekten, die ein verschlüsseltes Attachment referenzieren, dieses aus dem ContentContainer entfernt wird. Dies ist von Bedeutung, wenn ein Attachment in mehreren EncryptedData-Objekten referenziert wird.

Parameters:
encryptedDataElement - das zu entfernende EncryptedDataOSCI-Objekt
removeAttachment - true -> Attachments, welche im EncryptedData-Objekt referenziert sind, werden ebenfalls aus dem ContentConcontainer entfernt
See Also:
EncryptedDataOSCI

getEncryptedData

public EncryptedDataOSCI[] getEncryptedData()
Liefert die im ContentContainer enthaltenen verschlüsselten Daten als EncryptedData-Objekte.

Returns:
Array der enthaltenen EncryptedData-Objekte
See Also:
EncryptedDataOSCI

toString

public java.lang.String toString()
Deprecated.  

Diese Methode serialisiert den ContentContainer

Overrides:
toString in class java.lang.Object
Returns:
XML-String des ContentConatiners


Copyright © 2004. All Rights Reserved.