All Downloads are FREE. Search and download functionalities are using the official Maven repository.

no.ks.fiks.io.klient.IntegrasjonAuthenticationStrategy Maven / Gradle / Ivy

package no.ks.fiks.io.klient;

import no.ks.fiks.maskinporten.Maskinportenklient;
import org.eclipse.jetty.client.api.Request;
import org.eclipse.jetty.http.HttpHeader;

import java.util.UUID;

public class IntegrasjonAuthenticationStrategy implements AuthenticationStrategy {

    static final String INTEGRASJON_ID = "IntegrasjonId";

    static final String INTEGRASJON_PASSWORD = "IntegrasjonPassord";

    private final Maskinportenklient maskinportenklient;
    private final UUID integrasjonId;
    private final String integrasjonPassord;

    public IntegrasjonAuthenticationStrategy(Maskinportenklient maskinportenklient, UUID integrasjonId, String integrasjonPassord) {
        this.maskinportenklient = maskinportenklient;
        this.integrasjonId = integrasjonId;
        this.integrasjonPassord = integrasjonPassord;
    }

    @Override
    public void setAuthenticationHeaders(Request request) {
        request.header(HttpHeader.AUTHORIZATION, "Bearer " + getAccessToken())
                .header(INTEGRASJON_ID, integrasjonId.toString())
                .header(INTEGRASJON_PASSWORD, integrasjonPassord);
    }

    private String getAccessToken() {
        return maskinportenklient.getAccessToken("ks:fiks");
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy