Skip to content

Commit

Permalink
signatursjekk ut av domene objekten
Browse files Browse the repository at this point in the history
  • Loading branch information
alpet committed Oct 18, 2024
1 parent b17db46 commit 432dbf2
Show file tree
Hide file tree
Showing 4 changed files with 28 additions and 17 deletions.
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
package no.nav.emottak.ebms.model

import no.nav.emottak.ebms.validation.SignaturValidator
import no.nav.emottak.ebms.xml.getDocumentBuilder
import no.nav.emottak.ebms.xml.marshal
import no.nav.emottak.message.model.Addressing
import no.nav.emottak.message.model.EbmsAttachment
import no.nav.emottak.message.model.Feil
import no.nav.emottak.message.model.SignatureDetails
import org.oasis_open.committees.ebxml_msg.schema.msg_header_2_0.Acknowledgment
import org.oasis_open.committees.ebxml_msg.schema.msg_header_2_0.From
import org.oasis_open.committees.ebxml_msg.schema.msg_header_2_0.Manifest
Expand All @@ -24,7 +22,8 @@ import org.xmlsoap.schemas.soap.envelope.Envelope
import org.xmlsoap.schemas.soap.envelope.Header
import java.io.StringReader
import java.time.Instant
import java.util.*
import java.util.Date
import java.util.UUID

abstract class EbmsMessage {
abstract val requestId: String
Expand All @@ -35,12 +34,6 @@ abstract class EbmsMessage {
abstract val refToMessageId: String?
abstract val dokument: Document?
val mottatt: Instant = Instant.now()

open fun sjekkSignature(signatureDetails: SignatureDetails) {
SignaturValidator.validate(signatureDetails, this.dokument!!, listOf())
log.info("Signatur OK")
}

open fun toEbmsDokument(): EbMSDocument {
return createEbmsDocument(createMessageHeader())
}
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
package no.nav.emottak.ebms.model

import no.nav.emottak.ebms.validation.SignaturValidator
import no.nav.emottak.message.model.SignatureDetails

fun EbmsFail.sjekkSignature(signatureDetails: SignatureDetails) {
SignaturValidator.validate(signatureDetails, this.dokument!!, listOf())
log.info("Signatur OK")
}

fun Acknowledgment.sjekkSignature(signatureDetails: SignatureDetails) {
SignaturValidator.validate(signatureDetails, this.dokument!!, listOf())
log.info("Signatur OK")
}

fun PayloadMessage.sjekkSignature(signatureDetails: SignatureDetails) {
SignaturValidator.validate(signatureDetails, this.dokument!!, listOf(this.payload))
log.info("Signatur OK")
}

fun EbmsMessage.sjekkSignature(signatureDetails: SignatureDetails) {
SignaturValidator.validate(signatureDetails, this.dokument!!, if (this is PayloadMessage) listOf(this.payload) else listOf())
log.info("Signatur OK")
}
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
package no.nav.emottak.ebms.model

import no.nav.emottak.constants.EbXMLConstants
import no.nav.emottak.ebms.validation.SignaturValidator
import no.nav.emottak.message.model.Addressing
import no.nav.emottak.message.model.EbmsAttachment
import no.nav.emottak.message.model.SignatureDetails
import org.w3c.dom.Document
import java.util.*
import java.util.UUID

data class PayloadMessage(
override val requestId: String,
Expand All @@ -20,11 +18,6 @@ data class PayloadMessage(

) : EbmsMessage() {

override fun sjekkSignature(signatureDetails: SignatureDetails) {
SignaturValidator.validate(signatureDetails, this.dokument!!, listOf(payload!!))
log.info("Signatur OK")
}

override fun toEbmsDokument(): EbMSDocument {
return createEbmsDocument(createMessageHeader(), this.payload)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.withContext
import no.nav.emottak.ebms.CpaRepoClient
import no.nav.emottak.ebms.model.EbmsMessage
import no.nav.emottak.ebms.model.sjekkSignature
import no.nav.emottak.ebms.util.marker
import no.nav.emottak.melding.feil.EbmsException
import no.nav.emottak.message.model.ErrorCode
Expand Down

0 comments on commit 432dbf2

Please sign in to comment.