Eksempel app for oppsett og bruk av Fiks-Io-klient#798
Eksempel app for oppsett og bruk av Fiks-Io-klient#798ErlendStokkeMonstadKS wants to merge 15 commits intomainfrom
Conversation
# Conflicts: # fiks-io-klient-java/pom.xml # pom.xml
OrjanSkotnes
left a comment
There was a problem hiding this comment.
Dette ser veldig bra ut! Jeg har lagt inn noen kommentarer. Det må også utarbeides en readme til denne eksempel applikasjonen.
| } | ||
|
|
||
| private static PrivateKey setOppPrivateKey(FiksIOKlientProperties klientProperties) throws InvalidKeySpecException, NoSuchAlgorithmException, IOException { | ||
| return KeyFactory.getInstance("RSA").generatePrivate(new PKCS8EncodedKeySpec(((PrivateKeyInfo) new PEMParser(new FileReader(fileFromResource(klientProperties.privatekeyFile()))).readObject()).getEncoded())); |
There was a problem hiding this comment.
Burde ikke ressursene her bli lukket? fileReader og PEMParser? burde vel vært i en try-resources block.
There was a problem hiding this comment.
Vet ikke, fikser det uansett.
| } | ||
| } | ||
|
|
||
| public static void send(FiksIOKlient klient, KontoId kontoId, String meldingType, String innhold) { |
There was a problem hiding this comment.
Wrappe denne i en try-catch med logging? .NET versjonen gjør dette. Den genererer klientMeldingId og klientKorrelasjonsId. Logger forsøk på sending og resultet. Returnerer til slutt en meldings-id.
There was a problem hiding this comment.
Litt usikker på hva du mener, la oss se på det sammen.
There was a problem hiding this comment.
Vi har nok loggingen vi trenger her
| System.out.println(" P - Send PING melding"); | ||
| System.out.println(" G - Send PONG melding"); | ||
| System.out.println(" K - Hent konto informasjon"); | ||
| System.out.println(" Q - Avslutter applikasjonen"); |
There was a problem hiding this comment.
Få på plass en helesjekk...isOpen, getKonto, getKontoStatus, validerPublicKeyMotPrivateKey?
There was a problem hiding this comment.
Hent konto informasjon er egentlig getKontoStatus da status er med i konto informasjon.
| System.out.println(" K - Hent konto informasjon"); | ||
| System.out.println(" Q - Avslutter applikasjonen"); | ||
|
|
||
| try (Scanner scanner = new Scanner(System.in)) { |
There was a problem hiding this comment.
Ingen demonstrasjon av payload-dekryptering / ASiC-E-lesing
There was a problem hiding this comment.
La oss ta det direkte, ting er litt annerledes mellom Java og Dotnet.
|
|
||
| private static void runInteractiveConsole(FiksIOKlient javaKlient, KontoId kontoId) { | ||
| System.out.println("Starter interaktiv konsoll:"); | ||
| System.out.println(" P - Send PING melding"); |
There was a problem hiding this comment.
Bør følge samme spor som .net example med reelle protokollnavn.
FiksIOPing = "ping";
FiksIOPong = "pong";
FiksArkivPing = "no.ks.fiks.arkiv.v1.ping";
FiksArkivPong = "no.ks.fiks.arkiv.v1.pong";
FiksPlanPing = "no.ks.fiks.plan.v2.ping";
FiksPlanPong = "no.ks.fiks.plan.v2.pong";
FiksMatrikkelfoeringPing = "no.ks.fiks.matrikkelfoering.v2.ping";
FiksMatrikkelfoeringPong = "no.ks.fiks.matrikkelfoering.v2.pong";
There was a problem hiding this comment.
La oss snakke om det direkte, jeg unngikk dette bevist.
There was a problem hiding this comment.
Brukt reelle protokollnavn, men tar ikke å inkluderer alle variantene her
| } | ||
|
|
||
| public static void send(FiksIOKlient klient, KontoId kontoId, String meldingType, String innhold) { | ||
| klient.send(MeldingRequest.builder().mottakerKontoId(kontoId).meldingType(meldingType).build(), innhold, "melding.txt"); |
There was a problem hiding this comment.
Hva mener du? Avsender er jo satt opp i klienten.
There was a problem hiding this comment.
Legger det på loggingen.
|
|
||
| konto.id= | ||
|
|
||
| integasjon.id= |
There was a problem hiding this comment.
skrivefeil på integrasjon, begge felt.
There was a problem hiding this comment.
Fikser
| } | ||
|
|
||
| public static void send(FiksIOKlient klient, KontoId kontoId, String meldingType, String innhold) { | ||
| klient.send(MeldingRequest.builder().mottakerKontoId(kontoId).meldingType(meldingType).build(), innhold, "melding.txt"); |
There was a problem hiding this comment.
Hva mener du? Avsender er jo satt opp i klienten.
Benytter try-resource block for å sette opp privateKey
|
README tar vi når vi er enig om resten. |
Siden EksempelApp er avhengig av at man faktisk kan stenge ned klienten riktig så legger jeg på fiks for å kunne stenge ned klienten.