github.com/phrase/openapi@v0.0.0-20240514140800-49e8a106740e/openapi-generator/templates/java/libraries/vertx/auth/HttpBearerAuth.mustache (about)

     1  {{>licenseInfo}}
     2  
     3  package {{invokerPackage}}.auth;
     4  
     5  import {{invokerPackage}}.Pair;
     6  import io.vertx.core.MultiMap;
     7  import java.util.Base64;
     8  import java.nio.charset.StandardCharsets;
     9  import java.util.List;
    10  
    11  {{>generatedAnnotation}}
    12  public class HttpBearerAuth implements Authentication {
    13    private final String scheme;
    14    private String bearerToken;
    15  
    16    public HttpBearerAuth(String scheme) {
    17      this.scheme = scheme;
    18    }
    19  
    20    public String getBearerToken() {
    21      return bearerToken;
    22    }
    23  
    24    public void setBearerToken(String bearerToken) {
    25      this.bearerToken = bearerToken;
    26    }
    27  
    28    @Override
    29    public void applyToParams(List<Pair> queryParams, MultiMap headerParams, MultiMap cookieParams) {
    30      if (bearerToken == null) {
    31        return;
    32      }
    33      headerParams.add("Authorization", (scheme != null ? upperCaseBearer(scheme) + " " : "") + bearerToken);
    34    }
    35  
    36    private static String upperCaseBearer(String scheme) {
    37      return ("bearer".equalsIgnoreCase(scheme)) ? "Bearer" : scheme;
    38    }
    39  }