de.osci.osci12.messagetypes
Class ResponseToProcessDelivery

java.lang.Object
  extended byde.osci.osci12.messagetypes.OSCIMessage
      extended byde.osci.osci12.messagetypes.OSCIResponseTo
          extended byde.osci.osci12.messagetypes.ResponseToProcessDelivery
All Implemented Interfaces:
ContentPackageI

public class ResponseToProcessDelivery
extends OSCIResponseTo
implements ContentPackageI

Mit dieser Klasse werden Nachrichtenobjekte für Bearbeitungsantworten angelegt. Ein passiver Client, der als Supplier fungiert, muss nach Empfang eines Bearbeitungsauftrags eine Instanz dieser Klasse aufbauen und an den Intermediär zurücksenden. Die Nachricht enthält eine Rückmeldung über den Empfang der Nachricht (Feedback) sowie ggf. verschlüsselte bzw. unverschlüsselte Inhaltsdaten.

Copyright © 2004 Freie Hansestadt Bremen

Erstellt von bremen online services Entwicklungs- und Betriebsgesellschaft GmbH & Co. KG

Diese Bibliothek kann von jedermann nach Maßgabe der Bremer Lizenz für freie Softwarebibliotheken genutzt werden.

Die Lizenzbestimmungen können unter der URL www.osci.de abgerufen oder bei der OSCI-Leitstelle, Senator für Finanzen, Freie Hansestadt Bremen, Postfach 10 15 40, 28015 Bremen schriftlich angefordert werden.

Version:
1.2.1
See Also:
ProcessDelivery

Field Summary
 
Fields inherited from class de.osci.osci12.messagetypes.OSCIMessage
ACCEPT_DELIVERY, attachments, contentContainer, contentID, controlBlock, desiredLanguagesH, dialogHandler, dsNSPrefix, encryptedData, EXIT_DIALOG, FETCH_DELIVERY, FETCH_PROCESS_CARD, FORWARD_DELIVERY, GET_MESSAGE_ID, hashableMsgPart, INIT_DIALOG, intermediaryCertificatesH, MEDIATE_DELIVERY, NO_SELECTION_RULE, nonIntermediaryCertificatesH, ns, osciNSPrefix, PROCESS_DELIVERY, qualityOfTimestampTypeCreation, qualityOfTimestampTypeReception, RESPONSE_TO_ACCEPT_DELIVERY, RESPONSE_TO_EXIT_DIALOG, RESPONSE_TO_FETCH_DELIVERY, RESPONSE_TO_FETCH_PROCESS_CARD, RESPONSE_TO_FORWARD_DELIVERY, RESPONSE_TO_GET_MESSAGE_ID, RESPONSE_TO_INIT_DIALOG, RESPONSE_TO_MEDIATE_DELIVERY, RESPONSE_TO_PROCESS_DELIVERY, RESPONSE_TO_STORE_DELIVERY, SELECT_ADDRESSEE, SELECT_ALL, SELECT_BY_DATE_OF_RECEPTION, SELECT_BY_MESSAGE_ID, SELECT_BY_RECENT_MODIFICATION, SELECT_ORIGINATOR, signatureHeader, SOAP_FAULT_MESSAGE, SOAP_MESSAGE_ENCRYPTED, soapNSPrefix, STORE_DELIVERY, TYPE_UNDEFINED, xencNSPrefix, xsiNSPrefix
 
Constructor Summary
ResponseToProcessDelivery(ProcessDelivery procDel)
          Legt ein Nachrichtenobjekt für eine Bearbeitungsantwort an.
 
Method Summary
 void addContentContainer(ContentContainer container)
          Fügt der Nachricht einen Inhaltsdatencontainer hinzu.
 void addEncryptedData(EncryptedDataOSCI encData)
          Fügt der Nachricht einen EncryptedData-Eintrag mit verschlüsselten Inhaltsdaten hinzu.
 ContentContainer[] getContentContainer()
          Liefert ein Array mit den Inhaltsdatencontainern der Nachricht.
 EncryptedDataOSCI[] getEncryptedData()
          Liefert die in die Nachricht eingestellten verschlüsselten Inhaltsdaten als EncryptedData-Objekte.
 java.lang.String getMessageId()
          Liefert die Message-ID der Nachricht.
 boolean getQualityOfTimeStampCreation()
          Liefert die Qualität des Zeitstempels, mit dem der Intermediär den Eingang des Auftrags im Laufzettel protokolliert.
 boolean getQualityOfTimeStampReception()
          Liefert die geforderte Qualität des Zeitstempels, mit dem der Intermediär den Empfang der Annahmeantwort im Laufzettel protokolliert.
 java.lang.String getSubject()
          Liefert den im Laufzettel enthaltenen Betreff-Eintrag.
 void removeContentContainer(ContentContainer container)
          Entfernt einen Inhaltsdatencontainer aus der Nachricht.
 void removeEncryptedData(EncryptedDataOSCI encData)
          Entfernt einen EncryptedData-Eintrag mit verschlüsselten Daten aus der Nachricht.
 void setFeedback(java.lang.String[] code)
          Setzt die Rückmeldungen (Fehler und Warnungen) auf Auftragsebene.
 void setMessageId(java.lang.String messageId)
          Setzt die Message-ID der Nachricht.
 void setQualityOfTimeStampCreation(boolean cryptographic)
          Setzt die gewünschte Qualität des Zeitstempels, mit dem der Intermediär den Eingang des Auftrags im Laufzettel protokolliert.
 void setQualityOfTimeStampReception(boolean cryptographic)
          Setzt die gewünschte Qualität des Zeitstempels, mit dem der Intermediär die Empfangsbestätigung der Zustellung durch den Empfänger im Laufzettel protokolliert.
 void setSubject(java.lang.String subject)
          Setzt den Betreff-Eintrag der Nachricht.
 void sign()
          Bringt eine Supplier-Signatur an.
 void writeToStream(java.io.OutputStream out, java.io.OutputStream storeOutput)
          Serialisiert und schreibt die Nachricht - ggf. verschlüsselt - in den übergebenen Stream.
 
Methods inherited from class de.osci.osci12.messagetypes.OSCIResponseTo
getFeedback, getFeedbackObjects
 
Methods inherited from class de.osci.osci12.messagetypes.OSCIMessage
addCustomHeader, addRole, formatISO8601, getAddressee, getBase64Encoding, getCustomHeaders, getDialogHandler, getMessageType, getOriginator, getOtherAuthors, getOtherReaders, getRoleForRefID, isSigned, parseISO8601, setBase64Encoding, toString
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ResponseToProcessDelivery

public ResponseToProcessDelivery(ProcessDelivery procDel)
Legt ein Nachrichtenobjekt für eine Bearbeitungsantwort an.

See Also:
DialogHandler
Method Detail

getSubject

public java.lang.String getSubject()
Liefert den im Laufzettel enthaltenen Betreff-Eintrag.

Specified by:
getSubject in interface ContentPackageI
Returns:
den Betreff der Zustellung

setSubject

public void setSubject(java.lang.String subject)
Setzt den Betreff-Eintrag der Nachricht. Der übergebene Parameter-String muß den Vorschriften für den primitiven XML-Datentyp "string" entsprechen, darf also z.B. keine XML-Steuerzeichen (<, > o.ä.) enthalten.

Parameters:
subject - der Betreff

setFeedback

public void setFeedback(java.lang.String[] code)
Setzt die Rückmeldungen (Fehler und Warnungen) auf Auftragsebene.

Parameters:
code - Array mit Fehlercodes

setQualityOfTimeStampCreation

public void setQualityOfTimeStampCreation(boolean cryptographic)
Setzt die gewünschte Qualität des Zeitstempels, mit dem der Intermediär den Eingang des Auftrags im Laufzettel protokolliert.

Parameters:
cryptographic - true: kryptographischer Zeitstempel von einem akkreditierten Zeitstempeldienst
false: Einfacher Zeitstempel (lokale Rechnerzeit des Intermediärs, default)
See Also:
getQualityOfTimeStampCreation()

getQualityOfTimeStampCreation

public boolean getQualityOfTimeStampCreation()
Liefert die Qualität des Zeitstempels, mit dem der Intermediär den Eingang des Auftrags im Laufzettel protokolliert.

Returns:
Qualität des Zeitstempels: true - kryptographischer Zeitstempel von einem akkreditierten Zeitstempeldienst
false - Einfacher Zeitstempel (lokale Rechnerzeit des Intermediärs)
See Also:
setQualityOfTimeStampCreation(boolean)

setQualityOfTimeStampReception

public void setQualityOfTimeStampReception(boolean cryptographic)
Setzt die gewünschte Qualität des Zeitstempels, mit dem der Intermediär die Empfangsbestätigung der Zustellung durch den Empfänger im Laufzettel protokolliert. Die Empfangsbestätigung besteht in einem weiteren Auftrag, den der Empfänger nach Erhalt der Bearbeitungsantwort innerhalb desselben expliziten Dialogs an den Intermediär schickt.

Parameters:
cryptographic - true: kryptographischer Zeitstempel von einem akkreditierten Zeitstempeldienst
false: Einfacher Zeitstempel (lokale Rechnerzeit des Intermediärs)
See Also:
getQualityOfTimeStampReception()

getQualityOfTimeStampReception

public boolean getQualityOfTimeStampReception()
Liefert die geforderte Qualität des Zeitstempels, mit dem der Intermediär den Empfang der Annahmeantwort im Laufzettel protokolliert.

Returns:
Qualität des Zeitstempels: true - kryptographischer Zeitstempel von einem akkreditierten Zeitstempeldienst
false - Einfacher Zeitstempel (lokale Rechnerzeit des Intermediärs, default)
See Also:
setQualityOfTimeStampReception(boolean)

addContentContainer

public void addContentContainer(ContentContainer container)
                         throws OSCIRoleException
Fügt der Nachricht einen Inhaltsdatencontainer hinzu. Diese Methode sollte erst aufgerufen werden, wenn der Container vollständig erstellt wurde.

Parameters:
container - Inhaltsdatencontainer
Throws:
OSCIRoleException
See Also:
ContentContainer

removeContentContainer

public void removeContentContainer(ContentContainer container)
Entfernt einen Inhaltsdatencontainer aus der Nachricht.

Parameters:
container - Inhaltsdatencontainer
See Also:
addContentContainer(de.osci.osci12.messageparts.ContentContainer)

getContentContainer

public ContentContainer[] getContentContainer()
Liefert ein Array mit den Inhaltsdatencontainern der Nachricht.

Specified by:
getContentContainer in interface ContentPackageI
See Also:
addContentContainer(de.osci.osci12.messageparts.ContentContainer)

addEncryptedData

public void addEncryptedData(EncryptedDataOSCI encData)
                      throws OSCIRoleException
Fügt der Nachricht einen EncryptedData-Eintrag mit verschlüsselten Inhaltsdaten hinzu.

Parameters:
encData - verschlüsselte Daten
Throws:
OSCIRoleException
See Also:
EncryptedDataOSCI

removeEncryptedData

public void removeEncryptedData(EncryptedDataOSCI encData)
Entfernt einen EncryptedData-Eintrag mit verschlüsselten Daten aus der Nachricht.

Parameters:
encData - verschlüsselte Daten
See Also:
addEncryptedData(de.osci.osci12.messageparts.EncryptedDataOSCI), EncryptedDataOSCI

getEncryptedData

public EncryptedDataOSCI[] getEncryptedData()
Liefert die in die Nachricht eingestellten verschlüsselten Inhaltsdaten als EncryptedData-Objekte.

Specified by:
getEncryptedData in interface ContentPackageI
Returns:
enthaltene EncryptedData-Objekt mit verschlüsselten Inhaltsdaten
See Also:
EncryptedDataOSCI

getMessageId

public java.lang.String getMessageId()
Liefert die Message-ID der Nachricht.

Specified by:
getMessageId in interface ContentPackageI
Returns:
Message-ID

setMessageId

public void setMessageId(java.lang.String messageId)
Setzt die Message-ID der Nachricht.


sign

public void sign()
          throws java.io.IOException,
                 OSCIException,
                 OSCICancelledException,
                 java.security.NoSuchAlgorithmException
Bringt eine Supplier-Signatur an.

Throws:
java.io.IOException - bei Schreib-/Leseproblemen
OSCIRoleException - wenn dem Rollenobjekt, das als Client fungiert, kein Signer-Objekt zugeordnet wurde
OSCICancelledException - bei Abbruch durch den Benutzer
OSCIException - wenn beim Zusammenstellen der Datein ein Problem auftritt
java.security.NoSuchAlgorithmException

writeToStream

public void writeToStream(java.io.OutputStream out,
                          java.io.OutputStream storeOutput)
                   throws java.io.IOException,
                          OSCIException,
                          java.security.NoSuchAlgorithmException
Serialisiert und schreibt die Nachricht - ggf. verschlüsselt - in den übergebenen Stream. Es wird abhängig vom isEncryption()-Flag des DialogHandlers verschlüsselt oder nicht, Signaturen müssen jedoch von der Anwendung selbst vor Aufruf dieser Methode (sign()) angebracht werden. Die ausgehende Nachricht kann zu Debug- oder Archivierungszwecken (in jedem Fall unverschlüsselt) in den zweiten übergebenen Stream geschrieben werden. Dieser Parameter kann null sein.

Parameters:
out - Stream, in den die Antwortnachricht geschrieben werden soll
storeOutput - Stream, in dem die (unverschlüsselte) Antwortnachricht gespeichert werden soll
Throws:
OSCIRoleException - wenn erforderliche Zertifikate fehlen
java.io.IOException - bei Schreibproblemen
java.security.NoSuchAlgorithmException - wenn ein benötigter Algorithmus nicht unterstützt wird
OSCIException
See Also:
sign()


Copyright © 2004. All Rights Reserved.