Interface SchemaService
-
- All Superinterfaces:
JAXRSService
- All Known Implementing Classes:
SchemaServiceImpl
@Path("schemas") public interface SchemaService extends JAXRSService
REST operations for attribute schemas.
-
-
Field Summary
-
Fields inherited from interface org.apache.syncope.common.rest.api.service.JAXRSService
CRLF, DOUBLE_DASH, PARAM_ANYTYPE_KIND, PARAM_ANYTYPEKEY, PARAM_CONNID_PAGED_RESULTS_COOKIE, PARAM_DETAILS, PARAM_ENTITY_KEY, PARAM_FIQL, PARAM_KEYWORD, PARAM_MAX, PARAM_NOTIFICATION, PARAM_ORDERBY, PARAM_PAGE, PARAM_REALM, PARAM_RECURSIVE, PARAM_RESOURCE, PARAM_SIZE, PARAM_USER
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description javax.ws.rs.core.Response
create(@NotNull SchemaType type, @NotNull SchemaTO schemaTO)
Creates a new schema.void
delete(@NotNull SchemaType type, @NotNull String key)
Deletes the schema matching the given type and key.<T extends SchemaTO>
Tread(@NotNull SchemaType type, @NotNull String key)
Returns schema matching the given type and key.<T extends SchemaTO>
List<T>search(SchemaQuery query)
Returns a list of schemas matching the given query.void
update(@NotNull SchemaType type, @NotNull SchemaTO schemaTO)
Updates the schema matching the given type and key.
-
-
-
Method Detail
-
search
@GET @Path("{type}") @Produces({"application/json","application/yaml","application/xml"}) <T extends SchemaTO> List<T> search(@BeanParam SchemaQuery query)
Returns a list of schemas matching the given query.- Type Parameters:
T
- actual SchemaTO- Parameters:
query
- query conditions- Returns:
- list of schemas with matching type, for the given anyTypeClass if provided, with keys containing keyword if provided
-
read
@GET @Path("{type}/{key}") @Produces({"application/json","application/yaml","application/xml"}) <T extends SchemaTO> T read(@NotNull @PathParam("type") @NotNull SchemaType type, @NotNull @PathParam("key") @NotNull String key)
Returns schema matching the given type and key.- Type Parameters:
T
- actual SchemaTO- Parameters:
type
- type for schemas to be readkey
- name of schema to be read- Returns:
- schema matching the given type and name
-
create
@POST @Path("{type}") @Consumes({"application/json","application/yaml","application/xml"}) @Produces({"application/json","application/yaml","application/xml"}) javax.ws.rs.core.Response create(@NotNull @PathParam("type") @NotNull SchemaType type, @NotNull @NotNull SchemaTO schemaTO)
Creates a new schema.- Parameters:
type
- type for schema to be createdschemaTO
- schema to be created- Returns:
- Response object featuring Location header of created schema
-
update
@PUT @Path("{type}/{key}") @Consumes({"application/json","application/yaml","application/xml"}) @Produces({"application/json","application/yaml","application/xml"}) void update(@NotNull @PathParam("type") @NotNull SchemaType type, @NotNull @NotNull SchemaTO schemaTO)
Updates the schema matching the given type and key.- Parameters:
type
- type for schemas to be updatedschemaTO
- updated schema to be stored
-
delete
@DELETE @Path("{type}/{key}") @Produces({"application/json","application/yaml","application/xml"}) void delete(@NotNull @PathParam("type") @NotNull SchemaType type, @NotNull @PathParam("key") @NotNull String key)
Deletes the schema matching the given type and key.- Parameters:
type
- type for schema to be deletedkey
- name of schema to be deleted
-
-