package com.github.hburgmeier.jerseyoauth2.authsrv.api.protocol; import java.net.URI; import com.github.hburgmeier.jerseyoauth2.api.protocol.OAuth2ProtocolException; import com.github.hburgmeier.jerseyoauth2.api.protocol.ResponseBuilderException; import com.github.hburgmeier.jerseyoauth2.authsrv.api.token.IAccessTokenInfo; public interface IResponseBuilder { IOAuth2Response buildAuthorizationRequestErrorResponse(OAuth2ProtocolException ex, URI redirectUrl) throws ResponseBuilderException; IOAuth2Response buildRequestTokenErrorResponse(OAuth2ProtocolException ex) throws ResponseBuilderException; IOAuth2Response buildAuthorizationCodeResponse(String code, URI redirectUrl, String state) throws ResponseBuilderException; IOAuth2Response buildAccessTokenResponse(IAccessTokenInfo accessToken, String state) throws ResponseBuilderException; IOAuth2Response buildImplicitGrantAccessTokenResponse(IAccessTokenInfo accessToken, URI redirectUrl, String state) throws ResponseBuilderException; IOAuth2Response buildForwardResponse(String relativeUrl); IOAuth2Response buildUnauthorizedResponse(OAuth2ProtocolException ex); }