public class DialogHandler
extends java.lang.Object
Copyright © 2017 Freie Hansestadt Bremen
Erstellt von Governikus 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 Senator für Finanzen, Freie Hansestadt Bremen, Schillerstr. 1, 28195 Bremen schriftlich angefordert werden.Modifier and Type | Field and Description |
---|---|
static java.lang.String |
boundary
Der Trenner für die einzelnen MIME boundaries
|
Role |
client
Client
|
boolean |
explicitDialog
Status impliziter/expliziter Dialog.
|
java.lang.String |
prevChallenge
Speichert den Challenge-Wert einer vorangegangenen Response-Nachricht.
|
Role |
supplier
Supplier
|
static java.util.ResourceBundle |
text
ResourceBundle-Objekt, welches bibliotheksweit für die Textausgaben verwendet wird.
|
Constructor and Description |
---|
DialogHandler(Intermed client,
Addressee supplier,
TransportI transportModule)
DialogHandler für Annahmeauftrag/-antwort und Bearbeitungsauftrag/-antwort.
|
DialogHandler(Originator client,
Intermed supplier,
TransportI transportModule)
Konstruktor für alle Aufträge/Auftragsantworten, ausgenommen Annahmeauftrag/-antwort und
Bearbeitungsauftrag/-antwort.
|
Modifier and Type | Method and Description |
---|---|
void |
checkControlBlock(de.osci.osci12.soapheader.ControlBlockH cb)
Interne Methode, sollte von Anwendungen nicht aufgerufen werden.
|
static DialogHandler |
findDialog(de.osci.osci12.soapheader.ControlBlockH controlBlock)
Interne Methode, sollte von Anwendungen nicht aufgerufen werden.
|
void |
fireEvent(int type)
Wird von der Bibliothek aufgerufen, um Ereignisse an den registrierten ProgressEventHandlerI
weiterzugeben.
|
java.lang.String |
getAsymmetricCipherAlgorithm()
Liefert den gesetzten asymmetrischen Verschlüsselungsalgorithmus.
|
Role |
getClient()
Liefert den mit diesem DialogHandler verbundenen Client.
|
de.osci.osci12.soapheader.ControlBlockH |
getControlblock()
Liefert den aktuellen Controlblock.
|
static Addressee |
getDefaultSupplier()
Liefert das als Default-Supplier gesetzte Addressee-Objekt.
|
static Role[] |
getDefaultSuppliers()
Liefert die als Default-Supplier gesetzten Addressee-Objekte.
|
static java.lang.String |
getDigestAlgorithm()
Liefert den gesetzten Hash-Algorithmus.
|
java.lang.String |
getLanguageList()
Liefert die Liste der Sprachkürzel, die in den DesiredLanguages-Elementen eingetragen wird.
|
static OSCIDataSource |
getNewDataBuffer()
Interne Methode, sollte von Anwendungen nicht aufgerufen werden.
|
ProgressEventHandlerI |
getProgressEventHandler()
Liefert die aktuell registrierte Implementierung des ProgressI-Interfaces.
|
static java.lang.String |
getSecureRandomAlgorithm()
Liefert den eingestellten Algorithmus für den verwendeten Zufallszahlengenerator.
|
static java.security.Provider |
getSecurityProvider()
Liefert den registrierten Security-Provider für die kryptographischen Operationen.
|
static java.lang.String |
getSignatureAlgorithm()
Liefert den Identifier des Signaturalgorithmus, der für die Verschlüsselung der Nachrichten
(verschlüsselte Auftragsdaten) verwendet wird.
|
Role |
getSupplier()
Liefert den mit diesem DialogHandler verbundenen Supplier.
|
java.lang.String |
getSymmetricCipherAlgorithm()
Liefert den symmetrischen Verschlüsselungs-Algorithmus.
|
static javax.crypto.SecretKey |
getTempSymKey()
Liefert einen 128-Bit-AES-Schlüssel für beliebige interne Verschlüsselungsaufgaben.
|
TransportI |
getTransportModule()
Liefert die installierte Implementierung des Transportinterfaces.
|
boolean |
isCheckSignatures()
Liefert true, wenn die Nachrichtensignaturen (Client-/Suppliersignatur) beim Empfang überprüft
werden, sonst false.
|
boolean |
isCreateSignatures()
Liefert true, wenn an den Nachrichten eine Signatur (Client- bzw.
|
boolean |
isEncryption()
Liefert true, wenn die Nachrichten als verschlüsselte Auftragsdaten versendet werden.
|
boolean |
isExplicitDialog()
Status des Dialogs: explizit/implizit
|
boolean |
isSendFeatureDescription()
Liefert den eingestellten Wert, ob eine FeatureDescription gesendet werden soll oder nicht.
|
void |
resetControlBlock()
Setzt den ControlBlock zuRück.
|
void |
setAsymmetricCipherAlgorithm(java.lang.String newAsymmetricCipherAlgorithm)
Setzt den asymmetrischen Verschlüsselungsalgorithmus (Verschlüsselung des Sitzungsschlüssels).
|
void |
setCheckSignatures(boolean check)
Legt fest, ob Nachrichtensignaturen (Client-/Suppliersignaturen) beim Empfang geprüft werden sollen.
|
void |
setCreateSignatures(boolean sign)
Legt fest, ob Nachrichtensignaturen (Client-/Suppliersignaturen) beim Versand angebracht werden sollen.
|
static void |
setDataBuffer(OSCIDataSource buffer)
Hiermit kann eine Implementierung der abstrakten Klasse OSCIDataSource installiert werden, falls
Inhaltsdaten nicht durch die default-Implementierung SwapBuffer im Arbeitsspeicher bzw. in temporären
Dateien gepuffert werden sollen, sondern beispielsweise in einer Datenbank.
|
static void |
setDefaultSupplier(Addressee supplier)
Mit dieser Methode können passive Empfänger ein Addressee-Objekt als Default-Supplier setzen, das für den
Empfang einer Nachricht das richtige Decrypter- und gegebenenfalls Signer-Objekt zur Verfügung stellt.
|
static void |
setDefaultSuppliers(Addressee[] supplier)
Mit dieser Methode können passive Empfänger Addressee-Objekte als Default-Supplier setzen, die für den
Empfang von Nachrichten das Decrypter- und gegebenenfalls Signer-Objekte zur Verfügung stellen.
|
static void |
setDigestAlgorithm(java.lang.String newDigestAlgorithm)
Setzt den Hash-Algorithmus für die Signatur der Nachrichten (Voreinstellung
http://www.w3.org/2000/09/xmldsig#sha256).
|
void |
setEncryption(boolean doEncryption)
Legt fest, ob die Nachrichten als verschlüsselte Auftragsdaten versendet werden.
|
void |
setLanguageList(java.lang.String languageList)
Setzt die Liste der Sprachkürzel, die in den DesiredLanguages-Elementen eingetragen wird.
|
void |
setProgressEventHandler(ProgressEventHandlerI progressEventHandler)
Registriert eine Instanz (einer Implementierung) des ProgressEventHandlerI- Interfaces.
|
static void |
setSecureRandomAlgorithm(java.lang.String algorithm)
Mit Hilfe dieser Methode kann ein Algorithmus für den verwendeten Zufallszahlengenerator gesetzt werden.
|
static void |
setSecurityProvider(java.security.Provider provider)
Mit dieser Methode kann ein Security-Provider gesetzt werden, der von der Bibliothek für die
kryptographischen Operationen verwendet wird.
|
void |
setSendFeatureDescription(boolean sendFeatureDescription) |
static void |
setSignatureAlgorithm(java.lang.String newSignatureAlgorithm)
Setzt die Voreinstellung des Signaturalgorithmus, der für die Verschlüsselung der Nachrichten
(verschlüsselte Auftragsdaten) verwendet wird.
|
void |
setSymmetricCipherAlgorithm(java.lang.String symmetricCipherAlgorithm)
Setzen des symmetrischen Verschlüsselungs-Algorithmus (Nachrichtenverschlüsselung)
|
public static final java.util.ResourceBundle text
public Role client
public Role supplier
public boolean explicitDialog
public static java.lang.String boundary
public java.lang.String prevChallenge
public DialogHandler(Originator client, Intermed supplier, TransportI transportModule)
client
- Originator als Client. Sollen Aufträge signiert versendet werden oder werden verschlüsselte
Rückantworten erwartet, so muss für dieses Objekt ein Decrypter- bzw. Signer-Objekt gesetzt
sein. Die gilt für die Verschlüsselung bzw. Signatur der Nachricht wie für die der Inhaltsdaten.supplier
- Intermediär als Supplier.transportModule
- zu verwendende Implementierung des TransportInterfacesOriginator
public DialogHandler(Intermed client, Addressee supplier, TransportI transportModule)
client
- Intermediär als Client.supplier
- Addressee als Supplier.transportModule
- Implementierung des TransportInterfacesAddressee
public static javax.crypto.SecretKey getTempSymKey() throws java.security.NoSuchAlgorithmException
java.security.NoSuchAlgorithmException
public boolean isCheckSignatures()
setCheckSignatures(boolean)
public void setCheckSignatures(boolean check)
check
- true - Signaturprüfung wird durchgeführt.isCheckSignatures()
,
OSCIMessage.isSigned()
public boolean isCreateSignatures()
setCreateSignatures(boolean)
public void setCreateSignatures(boolean sign)
sign
- true -> ausgehende Nachrichten werden signiertisCreateSignatures()
public boolean isSendFeatureDescription()
setSendFeatureDescription(boolean)
public void setSendFeatureDescription(boolean sendFeatureDescription)
sendFeatureDescription
- public void checkControlBlock(de.osci.osci12.soapheader.ControlBlockH cb) throws SoapClientException
SoapClientException
public static DialogHandler findDialog(de.osci.osci12.soapheader.ControlBlockH controlBlock) throws SoapClientException
SoapClientException
public TransportI getTransportModule()
TransportI
public boolean isEncryption()
setEncryption(boolean)
public void setEncryption(boolean doEncryption)
doEncryption
- ausgehende Nachrichten werden verschlüsseltisEncryption()
public de.osci.osci12.soapheader.ControlBlockH getControlblock()
public ProgressEventHandlerI getProgressEventHandler()
ProgressEventHandlerI
public void setProgressEventHandler(ProgressEventHandlerI progressEventHandler)
progressEventHandler
- ProgressEventHandlerI-ImplementierungProgressEventHandlerI
public void resetControlBlock()
public Role getClient()
public Role getSupplier()
public java.lang.String getLanguageList()
setLanguageList(String)
public void setLanguageList(java.lang.String languageList)
languageList
- die Liste der Sprachkürzel, getrennt durch Leerzeichen, z.B. "de en-US fr"getLanguageList()
public static java.lang.String getSecureRandomAlgorithm()
setSecureRandomAlgorithm(String)
public static void setSecureRandomAlgorithm(java.lang.String algorithm)
algorithm
- ein String-Identifier für den Algorithmus, der von dem installierten Provider
unterstützt werden muss.SecureRandom
public static java.lang.String getSignatureAlgorithm()
public static void setSignatureAlgorithm(java.lang.String newSignatureAlgorithm)
public static void setDataBuffer(OSCIDataSource buffer)
buffer
- die OSCIDataSource-ImplementierungOSCIDataSource
,
SwapBuffer
public static OSCIDataSource getNewDataBuffer() throws java.io.IOException
java.io.IOException
public static void setSecurityProvider(java.security.Provider provider)
provider
- Security-ProvidergetSecurityProvider()
,
Provider
public static java.security.Provider getSecurityProvider()
setSecurityProvider(Provider)
public static void setDefaultSupplier(Addressee supplier)
supplier
- RollenobjektgetDefaultSupplier()
,
setDefaultSuppliers(Addressee[])
,
getDefaultSuppliers()
public static Addressee getDefaultSupplier()
public static void setDefaultSuppliers(Addressee[] supplier)
supplier
- RollenobjektgetDefaultSupplier()
,
setDefaultSupplier(Addressee)
,
getDefaultSuppliers()
public static Role[] getDefaultSuppliers()
public java.lang.String getSymmetricCipherAlgorithm()
public void setSymmetricCipherAlgorithm(java.lang.String symmetricCipherAlgorithm)
symmetricCipherAlgorithm
- public static java.lang.String getDigestAlgorithm()
setDigestAlgorithm(String)
public static void setDigestAlgorithm(java.lang.String newDigestAlgorithm)
newDigestAlgorithm
- Hash-Algorithmus-IdentifiergetDigestAlgorithm()
,
OSCIMessage.setDigestAlgorithm(String)
public java.lang.String getAsymmetricCipherAlgorithm()
setAsymmetricCipherAlgorithm(String)
public void setAsymmetricCipherAlgorithm(java.lang.String newAsymmetricCipherAlgorithm)
newAsymmetricCipherAlgorithm
- getAsymmetricCipherAlgorithm()()
public void fireEvent(int type)
type
- Identifier des EventsConstants
public boolean isExplicitDialog()
Copyright © 2017. All Rights Reserved.