client templates backend
This commit is contained in:
1 parent
06e44b185e
commit
96e1813b34
55 files changed
+2043
-48
No files matched your search
@@ -9,6 +9,8 @@ import org.keycloak.admin.client.resource.RealmsResource;
|
||||
import org.keycloak.admin.client.resource.ServerInfoResource;
|
||||
import org.keycloak.admin.client.token.TokenManager;
|
||||
|
||||
import java.net.URI;
|
||||
|
||||
/**
|
||||
* Provides a Keycloak client. By default, this implementation uses a {@link ResteasyClient RESTEasy client} with the
|
||||
* default {@link ResteasyClientBuilder} settings. To customize the underling client, use a {@link KeycloakBuilder} to
|
||||
@@ -60,6 +62,19 @@ public class Keycloak {
|
||||
return tokenManager;
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a secure proxy based on an absolute URI.
|
||||
* All set up with appropriate token
|
||||
*
|
||||
* @param proxyClass
|
||||
* @param absoluteURI
|
||||
* @param <T>
|
||||
* @return
|
||||
*/
|
||||
public <T> T proxy(Class<T> proxyClass, URI absoluteURI) {
|
||||
return client.target(absoluteURI).register(new BearerAuthFilter(tokenManager)).proxy(proxyClass);
|
||||
}
|
||||
|
||||
/**
|
||||
* Closes the underlying client. After calling this method, this <code>Keycloak</code> instance cannot be reused.
|
||||
*/
|
||||
|
||||
+40
@@ -0,0 +1,40 @@
|
||||
package org.keycloak.admin.client.resource;
|
||||
|
||||
import org.keycloak.representations.idm.ClientRepresentation;
|
||||
import org.keycloak.representations.idm.ClientTemplateRepresentation;
|
||||
import org.keycloak.representations.idm.CredentialRepresentation;
|
||||
import org.keycloak.representations.idm.UserSessionRepresentation;
|
||||
|
||||
import javax.ws.rs.Consumes;
|
||||
import javax.ws.rs.DELETE;
|
||||
import javax.ws.rs.GET;
|
||||
import javax.ws.rs.POST;
|
||||
import javax.ws.rs.PUT;
|
||||
import javax.ws.rs.Path;
|
||||
import javax.ws.rs.PathParam;
|
||||
import javax.ws.rs.Produces;
|
||||
import javax.ws.rs.QueryParam;
|
||||
import javax.ws.rs.core.MediaType;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
/**
|
||||
* @author rodrigo.sasaki@icarros.com.br
|
||||
*/
|
||||
public interface ClientTemplateResource {
|
||||
|
||||
@Path("protocol-mappers")
|
||||
public ProtocolMappersResource getProtocolMappers();
|
||||
|
||||
@GET
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
public ClientTemplateRepresentation toRepresentation();
|
||||
|
||||
@PUT
|
||||
@Consumes(MediaType.APPLICATION_JSON)
|
||||
public void update(ClientTemplateRepresentation rep);
|
||||
|
||||
@DELETE
|
||||
public void remove();
|
||||
}
|
||||
+34
@@ -0,0 +1,34 @@
|
||||
package org.keycloak.admin.client.resource;
|
||||
|
||||
import org.keycloak.representations.idm.ClientRepresentation;
|
||||
import org.keycloak.representations.idm.ClientTemplateRepresentation;
|
||||
|
||||
import javax.ws.rs.Consumes;
|
||||
import javax.ws.rs.GET;
|
||||
import javax.ws.rs.POST;
|
||||
import javax.ws.rs.Path;
|
||||
import javax.ws.rs.PathParam;
|
||||
import javax.ws.rs.Produces;
|
||||
import javax.ws.rs.core.MediaType;
|
||||
import javax.ws.rs.core.Response;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author rodrigo.sasaki@icarros.com.br
|
||||
*/
|
||||
public interface ClientTemplatesResource {
|
||||
|
||||
@Path("{id}")
|
||||
public ClientTemplatesResource get(@PathParam("id") String id);
|
||||
|
||||
@POST
|
||||
@Consumes(MediaType.APPLICATION_JSON)
|
||||
public Response create(ClientTemplateRepresentation clientRepresentation);
|
||||
|
||||
@GET
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
public List<ClientTemplateRepresentation> findAll();
|
||||
|
||||
|
||||
|
||||
}
|
||||
+3
@@ -26,6 +26,9 @@ public interface RealmResource {
|
||||
@Path("clients")
|
||||
ClientsResource clients();
|
||||
|
||||
@Path("client-templates")
|
||||
ClientTemplatesResource clientTemplates();
|
||||
|
||||
@Path("client-description-converter")
|
||||
@POST
|
||||
@Consumes({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, MediaType.TEXT_PLAIN })
|
||||
|
||||
Reference in new issue
Block a user