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

com.unblu.webapi.jersey.v3.invoker.auth.ApiKeyAuth Maven / Gradle / Ivy


package com.unblu.webapi.jersey.v3.invoker.auth;

import java.util.List;
import java.util.Map;

import com.unblu.webapi.jersey.v3.invoker.Pair;

public class ApiKeyAuth implements Authentication {
	private final String location;
	private final String paramName;

	private String apiKey;
	private String apiKeyPrefix;

	public ApiKeyAuth(String location, String paramName) {
		this.location = location;
		this.paramName = paramName;
	}

	public String getLocation() {
		return location;
	}

	public String getParamName() {
		return paramName;
	}

	public String getApiKey() {
		return apiKey;
	}

	public void setApiKey(String apiKey) {
		this.apiKey = apiKey;
	}

	public String getApiKeyPrefix() {
		return apiKeyPrefix;
	}

	public void setApiKeyPrefix(String apiKeyPrefix) {
		this.apiKeyPrefix = apiKeyPrefix;
	}

	@Override
	public void applyToParams(List queryParams, Map headerParams) {
		if (apiKey == null) {
			return;
		}
		String value;
		if (apiKeyPrefix != null) {
			value = apiKeyPrefix + " " + apiKey;
		} else {
			value = apiKey;
		}
		if ("query".equals(location)) {
			queryParams.add(new Pair(paramName, value));
		} else if ("header".equals(location)) {
			headerParams.put(paramName, value);
		}
	}
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy