HBCIInstitute::extractKeys -- Vorarbeit gekapselt und ausgelagert #64
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Im Zuge meiner Einarbeitung in den Code sind mir einige Dinge aufgefallen. Dieser Pullrequest konzentriert sich auf die Methode
HBCIInstitute::extractKeys
.Hier werden stets -- unabhängig vom
keyType
-- aufwändig die Daten extrahiert, diese jedoch nur in zwei Fällen (WertS
oderV
) weiterverarbeitet. Somit kann der gesamte Block inif (keyType.equals("S") || keyType.equals("V"))
gekapselt werden (vgl. Zeile 118 neu). Dies führt dazu, dass die Berechnungen seltener ausgeführt werden müssen.Weiterhin unterscheidet sich der Ablauf ausschließlich im letzten Schritt, wo entschieden wird, ob
setInstSigKey
odersetInstEncKey
verwendet werden soll. Alles davor ist lediglich die notwendige Arbeit, um das richtige Übergabeformat zu erzeugen. Sie kann somit in eine eigene Methode ausgelagert werden.Als Ergebnis bildet die Schleife nun klar die Businesslogik ab: