package cz.moneta.test.dsl.oauth2.web;

import cz.moneta.test.dsl.Harness;
import cz.moneta.test.harness.endpoints.oauth2.web.Oauth2WebEndpoint;
import cz.moneta.test.harness.support.web.Builders;

public class Oauth2Web {

    private final Harness harness;

    public Oauth2Web(Harness harness) {
        this.harness = harness;
    }

    @Deprecated() // Will be reviewed in the API Lab team.
    public Oauth2WebTransitions onOauth2WebTransitions() {
        harness.getEndpoint(Oauth2WebEndpoint.class).openApplication();
        return Builders.newWebFlowBuilder(Oauth2WebTransitions.class, harness.getEndpoint(Oauth2WebEndpoint.class), harness);
    }

    @Deprecated() // Will be reviewed in the API Lab team.
    public Oauth2WebTransitionsKyc onOauth2WebTransitionsKyc() {
        harness.getEndpoint(Oauth2WebEndpoint.class).openApplication();
        return Builders.newWebFlowBuilder(Oauth2WebTransitionsKyc.class, harness.getEndpoint(Oauth2WebEndpoint.class), harness);
    }

    public Oauth2WebFederatedLogin onOauth2WebFederatedLogin() {
        harness.getEndpoint(Oauth2WebEndpoint.class).openApplication();
        return Builders.newWebFlowBuilder(Oauth2WebFederatedLogin.class, harness.getEndpoint(Oauth2WebEndpoint.class), harness);
    }

}