| | |
| | | package org.keycloak.protocol.cas.utils; |
| | | |
| | | import org.keycloak.protocol.cas.representations.CasServiceResponse; |
| | | import org.keycloak.protocol.cas.representations.CasServiceResponseAuthenticationFailure; |
| | | import org.keycloak.protocol.cas.representations.CasServiceResponseAuthenticationSuccess; |
| | | import jakarta.ws.rs.core.HttpHeaders; |
| | | import jakarta.ws.rs.core.MediaType; |
| | | import jakarta.ws.rs.core.Response; |
| | | import org.keycloak.protocol.cas.representations.CASErrorCode; |
| | | import org.keycloak.protocol.cas.representations.CASServiceResponse; |
| | | import org.keycloak.protocol.cas.representations.CASServiceResponseAuthenticationFailure; |
| | | import org.keycloak.protocol.cas.representations.CASServiceResponseAuthenticationSuccess; |
| | | import org.keycloak.protocol.cas.representations.CASServiceResponseProxySuccess; |
| | | import org.keycloak.protocol.cas.representations.CASServiceResponseProxyFailure; |
| | | |
| | | import javax.ws.rs.core.HttpHeaders; |
| | | import javax.ws.rs.core.MediaType; |
| | | import javax.ws.rs.core.Response; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | |
| | | private ServiceResponseHelper() { |
| | | } |
| | | |
| | | public static CasServiceResponse createSuccess(String username, Map<String, Object> attributes) { |
| | | public static CASServiceResponse createSuccess(String username, Map<String, Object> attributes) { |
| | | return createSuccess(username, attributes, null, null); |
| | | } |
| | | |
| | | public static CasServiceResponse createSuccess(String username, Map<String, Object> attributes, |
| | | public static CASServiceResponse createSuccess(String username, Map<String, Object> attributes, |
| | | String proxyGrantingTicket, List<String> proxies) { |
| | | CasServiceResponse response = new CasServiceResponse(); |
| | | CasServiceResponseAuthenticationSuccess success = new CasServiceResponseAuthenticationSuccess(); |
| | | CASServiceResponse response = new CASServiceResponse(); |
| | | CASServiceResponseAuthenticationSuccess success = new CASServiceResponseAuthenticationSuccess(); |
| | | success.setUser(username); |
| | | success.setProxies(proxies); |
| | | success.setProxyGrantingTicket(proxyGrantingTicket); |
| | |
| | | return response; |
| | | } |
| | | |
| | | public static CasServiceResponse createFailure(String errorCode, String errorDescription) { |
| | | CasServiceResponse response = new CasServiceResponse(); |
| | | CasServiceResponseAuthenticationFailure failure = new CasServiceResponseAuthenticationFailure(); |
| | | failure.setCode(errorCode); |
| | | public static CASServiceResponse createFailure(CASErrorCode errorCode, String errorDescription) { |
| | | CASServiceResponse response = new CASServiceResponse(); |
| | | CASServiceResponseAuthenticationFailure failure = new CASServiceResponseAuthenticationFailure(); |
| | | failure.setCode(errorCode == null ? CASErrorCode.INTERNAL_ERROR.name() : errorCode.name()); |
| | | failure.setDescription(errorDescription); |
| | | response.setAuthenticationFailure(failure); |
| | | |
| | | return response; |
| | | } |
| | | |
| | | public static Response createResponse(Response.Status status, MediaType mediaType, CasServiceResponse serviceResponse) { |
| | | public static CASServiceResponse createProxySuccess(String pt) { |
| | | CASServiceResponse response = new CASServiceResponse(); |
| | | CASServiceResponseProxySuccess success = new CASServiceResponseProxySuccess(); |
| | | success.setProxyTicket(pt); |
| | | response.setProxySuccess(success); |
| | | return response; |
| | | } |
| | | |
| | | public static CASServiceResponse createProxyFailure(CASErrorCode errorCode, String errorDescription) { |
| | | CASServiceResponse response = new CASServiceResponse(); |
| | | CASServiceResponseProxyFailure failure = new CASServiceResponseProxyFailure(); |
| | | failure.setCode(errorCode == null ? CASErrorCode.INTERNAL_ERROR.name() : errorCode.name()); |
| | | failure.setDescription(errorDescription); |
| | | response.setProxyFailure(failure); |
| | | |
| | | return response; |
| | | } |
| | | |
| | | public static Response createResponse(Response.Status status, MediaType mediaType, CASServiceResponse serviceResponse) { |
| | | Response.ResponseBuilder builder = Response.status(status) |
| | | .header(HttpHeaders.CONTENT_TYPE, mediaType.withCharset("utf-8")); |
| | | if (MediaType.APPLICATION_JSON_TYPE.equals(mediaType)) { |