Interface SchemaService

All Superinterfaces:
JAXRSService

@Path("schemas") public interface SchemaService extends JAXRSService
REST operations for attribute schemas.
  • Method Details

    • search

      @GET @Path("{type}") @Produces({"application/json","application/yaml","application/xml"}) <T extends org.apache.syncope.common.lib.to.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 org.apache.syncope.common.lib.to.SchemaTO> T read(@NotNull @PathParam("type") @NotNull org.apache.syncope.common.lib.types.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 read
      key - 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"}) jakarta.ws.rs.core.Response create(@NotNull @PathParam("type") @NotNull org.apache.syncope.common.lib.types.SchemaType type, @NotNull @NotNull org.apache.syncope.common.lib.to.SchemaTO schemaTO)
      Creates a new schema.
      Parameters:
      type - type for schema to be created
      schemaTO - 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 org.apache.syncope.common.lib.types.SchemaType type, @NotNull @NotNull org.apache.syncope.common.lib.to.SchemaTO schemaTO)
      Updates the schema matching the given type and key.
      Parameters:
      type - type for schemas to be updated
      schemaTO - updated schema to be stored
    • delete

      @DELETE @Path("{type}/{key}") @Produces({"application/json","application/yaml","application/xml"}) void delete(@NotNull @PathParam("type") @NotNull org.apache.syncope.common.lib.types.SchemaType type, @NotNull @PathParam("key") @NotNull String key)
      Deletes the schema matching the given type and key.
      Parameters:
      type - type for schema to be deleted
      key - name of schema to be deleted
    • getDropdownValues

      @POST @Path("PLAIN/any/{key}/dropdownValues") @Consumes({"application/json","application/yaml","application/xml"}) @Produces({"application/json","application/yaml","application/xml"}) org.apache.syncope.common.lib.Attr getDropdownValues(@NotNull @PathParam("key") @NotNull String key, @NotNull @NotNull org.apache.syncope.common.lib.to.AnyTO anyTO)
    • getDropdownValues

      @POST @Path("PLAIN/realm/{key}/dropdownValues") @Consumes({"application/json","application/yaml","application/xml"}) @Produces({"application/json","application/yaml","application/xml"}) org.apache.syncope.common.lib.Attr getDropdownValues(@NotNull @PathParam("key") @NotNull String key, @NotNull @NotNull org.apache.syncope.common.lib.to.RealmTO realmTO)