Package org.kapott.hbci.manager

## Class HBCIKernelImpl

- java.lang.Object
- - org.kapott.hbci.manager.HBCIKernelImpl

All Implemented Interfaces:
  `HBCIKernel`

    public final class HBCIKernelImpl
    extends java.lang.Object
    implements HBCIKernel

### Field Summary

Fields
`static boolean` `CRYPTIT`
`static boolean` `DONT_CRYPTIT`
`static boolean` `DONT_NEED_CRYPT`
`static boolean` `DONT_SIGNIT`
`static boolean` `NEED_CRYPT`
`static boolean` `SIGNIT`

### Constructor Summary

Constructors
`HBCIKernelImpl​(IHandlerData parentHandlerData, java.lang.String hbciversion)`

### Method Summary

All Methods Instance Methods Concrete Methods
`java.util.Hashtable<java.lang.String,​java.util.List<java.lang.String>>` `getAllLowlevelJobs()` Gibt die Namen und Versionen aller von HBCI4Java für die aktuelle HBCI-Version (siehe `HBCIKernel.getHBCIVersion()`) unterstützten Lowlevel-Geschäftsvorfälle zurück.
`java.lang.String` `getHBCIVersion()` Gibt die HBCI-Versionsnummer zurück, für die dieses Kernel-Objekt Nachrichten erzeugen und analysieren kann.
`java.lang.String` `getHBCIVersion​(int dummy)`
`java.util.List<java.lang.String>` `getLowlevelJobParameterNames​(java.lang.String gvname, java.lang.String version)` Gibt alle für einen bestimmten Lowlevel-Job möglichen Job-Parameter-Namen zurück.
`java.util.List<java.lang.String>` `getLowlevelJobRestrictionNames​(java.lang.String gvname, java.lang.String version)` Gibt für einen bestimmten Lowlevel-Job die Namen aller möglichen Job-Restriction-Parameter zurück (siehe auch `HBCIJob.getJobRestrictions()` und `HBCIHandler.getLowlevelJobRestrictions(String)`).
`java.util.List<java.lang.String>` `getLowlevelJobResultNames​(java.lang.String gvname, java.lang.String version)` Gibt für einen bestimmten Lowlevel-Job die Namen aller möglichen Lowlevel-Result-Properties zurück (siehe `HBCIJobResult.getResultData()`).
`MsgGen` `getMsgGen()`
`IHandlerData` `getParentHandlerData()`
`HBCIMsgStatus` `rawDoIt​(boolean signit, boolean cryptit, boolean needCrypt)`
`HBCIMsgStatus` `rawDoIt​(HBCIPassportList passports, boolean signit, boolean cryptit, boolean needCrypt)`
`void` `rawNewMsg​(java.lang.String name)`
`void` `rawSet​(java.lang.String key, java.lang.String value)`
`void` `reset()`
`void` `setParentHandlerData​(IHandlerData parentHandlerData)`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### SIGNIT

    public static final boolean SIGNIT

See Also:
  Constant Field Values

#### DONT_SIGNIT

    public static final boolean DONT_SIGNIT

See Also:
  Constant Field Values

#### CRYPTIT

    public static final boolean CRYPTIT

See Also:
  Constant Field Values

#### DONT_CRYPTIT

    public static final boolean DONT_CRYPTIT

See Also:
  Constant Field Values

#### NEED_CRYPT

    public static final boolean NEED_CRYPT

See Also:
  Constant Field Values

#### DONT_NEED_CRYPT

    public static final boolean DONT_NEED_CRYPT

See Also:
  Constant Field Values

### Constructor Detail

#### HBCIKernelImpl

    public HBCIKernelImpl​(IHandlerData parentHandlerData,
                          java.lang.String hbciversion)

### Method Detail

#### getHBCIVersion

    public java.lang.String getHBCIVersion()

Description copied from interface: `HBCIKernel`
Gibt die HBCI-Versionsnummer zurück, für die dieses Kernel-Objekt Nachrichten erzeugen und analysieren kann.

Specified by:
  `getHBCIVersion` in interface `HBCIKernel`
Returns:
  HBCI-Versionsnummer

#### setParentHandlerData

    public void setParentHandlerData​(IHandlerData parentHandlerData)

#### getParentHandlerData

    public IHandlerData getParentHandlerData()

#### getHBCIVersion

    public java.lang.String getHBCIVersion​(int dummy)

#### rawNewMsg

    public void rawNewMsg​(java.lang.String name)

#### rawSet

    public void rawSet​(java.lang.String key,
                       java.lang.String value)

#### rawDoIt

    public HBCIMsgStatus rawDoIt​(boolean signit,
                                 boolean cryptit,
                                 boolean needCrypt)

#### rawDoIt

    public HBCIMsgStatus rawDoIt​(HBCIPassportList passports,
                                 boolean signit,
                                 boolean cryptit,
                                 boolean needCrypt)

#### reset

    public void reset()

#### getAllLowlevelJobs

    public java.util.Hashtable<java.lang.String,​java.util.List<java.lang.String>> getAllLowlevelJobs()

Description copied from interface: `HBCIKernel`

Gibt die Namen und Versionen aller von HBCI4Java für die aktuelle HBCI-Version (siehe `HBCIKernel.getHBCIVersion()`) unterstützten Lowlevel-Geschäftsvorfälle zurück. Es ist zu beachten, dass ein konkreter HBCI-Zugang i.d.R. nicht alle in dieser Liste aufgeführten Geschäftsvorfälle auch tatsächlich anbietet (siehe dafür `HBCIHandler.getSupportedLowlevelJobs()`).

Die zurückgegebene Hashtable enthält als Key jeweils einen String mit dem Bezeichner eines Lowlevel-Jobs, welcher für die Erzeugung eines Lowlevel-Jobs mit `HBCIHandler.newLowlevelJob(String)` verwendet werden kann. Der dazugehörige Wert ist ein List-Objekt (bestehend aus Strings), welches alle GV-Versionsnummern enthält, die von HBCI4Java für diesen GV unterstützt werden.

Specified by:
  `getAllLowlevelJobs` in interface `HBCIKernel`
Returns:
  Hashtable aller Lowlevel-Jobs, die prinzipiell vom aktuellen Handler-Objekt unterstützt werden.

#### getLowlevelJobParameterNames

    public java.util.List<java.lang.String> getLowlevelJobParameterNames​(java.lang.String gvname,
                                                                         java.lang.String version)

Description copied from interface: `HBCIKernel`

Gibt alle für einen bestimmten Lowlevel-Job möglichen Job-Parameter-Namen zurück. Der übergebene Job-Name ist einer der von HBCI4Java unterstützten Jobnamen, die Versionsnummer muss eine der für diesen GV unterstützten Versionsnummern sein (siehe `HBCIKernel.getAllLowlevelJobs()`). Als Ergebnis erhält man eine Liste aller Parameter-Namen, die für einen Lowlevel-Job (siehe `HBCIHandler.newLowlevelJob(String)`) gesetzt werden können (siehe `HBCIJob.setParam(String, String)`).

Aus der Liste der möglichen Parameternamen ist nicht ersichtlich, welche Parameter zwingend und welche optional sind, bzw. wie oft ein Parameter mindestens oder höchstens auftreten darf. Für diese Art der Informationen stehen zur Zeit noch keine Methoden bereit.

Siehe dazu auch `HBCIHandler.getLowlevelJobParameterNames(String)`.

Specified by:
  `getLowlevelJobParameterNames` in interface `HBCIKernel`
Parameters:
  `gvname` - Name des Lowlevel-Jobs
  `version` - Version des Lowlevel-jobs
Returns:
  Liste aller Job-Parameter, die beim Erzeugen des angegebenen Lowlevel-Jobs gesetzt werden können

#### getLowlevelJobResultNames

    public java.util.List<java.lang.String> getLowlevelJobResultNames​(java.lang.String gvname,
                                                                      java.lang.String version)

Description copied from interface: `HBCIKernel`

Gibt für einen bestimmten Lowlevel-Job die Namen aller möglichen Lowlevel-Result-Properties zurück (siehe `HBCIJobResult.getResultData()`). Der übergebene Job-Name ist einer der von HBCI4Java unterstützten Jobnamen, die Versionsnummer muss eine der für diesen GV unterstützten Versionsnummern sein (siehe `HBCIKernel.getAllLowlevelJobs()`). Als Ergebnis erhält man eine Liste aller Property-Namen, die in den Lowlevel-Ergebnisdaten eines Jobs auftreten können.

Aus der resultierenden Liste ist nicht ersichtlich, welche Properties immer zurückgeben werden und welche optional sind, bzw. wie oft ein bestimmter Wert mindestens oder höchstens auftreten kann. Für diese Art der Informationen stehen zur Zeit noch keine Methoden bereit.

Siehe dazu auch `HBCIHandler.getLowlevelJobResultNames(String)`.

Specified by:
  `getLowlevelJobResultNames` in interface `HBCIKernel`
Parameters:
  `gvname` - Name des Lowlevel-Jobs
  `version` - Version des Lowlevel-jobs
Returns:
  Liste aller Property-Namen, die in den Lowlevel-Antwortdaten eines Jobs auftreten können

#### getLowlevelJobRestrictionNames

    public java.util.List<java.lang.String> getLowlevelJobRestrictionNames​(java.lang.String gvname,
                                                                           java.lang.String version)

Description copied from interface: `HBCIKernel`

Gibt für einen bestimmten Lowlevel-Job die Namen aller möglichen Job-Restriction-Parameter zurück (siehe auch `HBCIJob.getJobRestrictions()` und `HBCIHandler.getLowlevelJobRestrictions(String)`). Der übergebene Job-Name ist einer der von HBCI4Java unterstützten Jobnamen, die Versionsnummer muss eine der für diesen GV unterstützten Versionsnummern sein (siehe `HBCIKernel.getAllLowlevelJobs()`). Als Ergebnis erhält man eine Liste aller Property-Namen, die in den Job-Restrictions-Daten eines Jobs auftreten können.

Specified by:
  `getLowlevelJobRestrictionNames` in interface `HBCIKernel`
Parameters:
  `gvname` - Name des Lowlevel-Jobs
  `version` - Version des Lowlevel-jobs
Returns:
  Liste aller Property-Namen, die in den Job-Restriction-Daten eines Jobs auftreten können

#### getMsgGen

    public MsgGen getMsgGen()