package com.airlock.iam.ssi.infrastructure.rest;

import com.airlock.iam.base.domain.service.uri.IamUriBuilder;
import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import java.net.URI;

public enum ProcivisApiPath {
   AUTH("auth"),
   PROOF_SCHEMA("proof-schema"),
   DID("did"),
   PROOF_REQUEST("proof-request"),
   CREDENTIAL_SCHEMA("credential-schema"),
   CREDENTIAL("credential");

   private static final String PROCIVIS_API_BASE_PATH = "api";
   private static final String PROCIVIS_API_VERSION = "v1";
   private final String subPath;

   public URI path() {
      return IamUriBuilder.fromPath("api").path(this.subPath).path("v1").build();
   }

   public URI path(String subSubPath) {
      return IamUriBuilder.fromPath("api").path(this.subPath).path("v1").path(subSubPath).build();
   }

   @SuppressFBWarnings(justification = "generated code")
   ProcivisApiPath(final String subPath) {
      this.subPath = subPath;
   }
}
