package com.smartbear.swagger4j;
import java.util.List;
/**
* Holds Swagger ResourceListing Authorizations - see <a href="https://github.com/wordnik/swagger-core/wiki/authorizations"
* target="_new">https://github.com/wordnik/swagger-core/wiki/authorizations</a>
*/
public interface Authorizations {
public enum AuthorizationType {OAUTH2, API_KEY, BASIC}
public List<Authorization> getAuthorizations();
public List<Authorization> getAuthorizationsByType(AuthorizationType type);
public Authorization addAuthorization(String name, AuthorizationType type);
public void removeAuthorization(Authorization authorization);
public interface Authorization {
AuthorizationType getType();
String getName();
}
public interface ApiKeyAuthorization extends Authorization {
public String getKeyName();
public String getPassAs();
public void setKeyName(String keyName);
public void setPassAs(String passAs);
}
public interface BasicAuthorization extends Authorization {
}
public interface OAuth2Authorization extends Authorization {
public Scope addScope(String name, String description);
public Scope[] getScopes();
public void removeScope(Scope scope);
public ImplicitGrant getImplicitGrant();
public AuthorizationCodeGrant getAuthorizationCodeGrant();
public interface ImplicitGrant {
String getLoginEndpointUrl();
void setLoginEndpoint(String loginEndpoint);
String getTokenName();
void setTokenName(String tokenName);
}
public interface AuthorizationCodeGrant {
String getTokenRequestEndpointUrl();
void setTokenRequestEndpoint(String tokenRequestEndpoint);
String getClientIdName();
void setClientIdName(String clientIdName);
String getClientSecretName();
void setClientSecretName(String clientSecretName);
String getTokenEndpointUrl();
void setTokenEndpoint(String tokenEndpoint);
String getTokenName();
void setTokenName(String tokenName);
}
public interface Scope {
String getName();
void setName(String name);
String getDescription();
void setDescription(String description);
}
}
}