Interface AnyService<TO extends org.apache.syncope.common.lib.to.AnyTO>

All Superinterfaces:
JAXRSService
All Known Subinterfaces:
AnyObjectService, GroupService, UserService

public interface AnyService<TO extends org.apache.syncope.common.lib.to.AnyTO> extends JAXRSService
  • Field Summary

  • Method Summary

    Modifier and Type
    Method
    Description
    jakarta.ws.rs.core.Response
    associate(@NotNull org.apache.syncope.common.lib.request.ResourceAR req)
    Executes resource-related operations on given entity.
    jakarta.ws.rs.core.Response
    deassociate(@NotNull org.apache.syncope.common.lib.request.ResourceDR req)
    Executes resource-related operations on given entity.
    jakarta.ws.rs.core.Response
    delete(@NotNull String key)
    Deletes any object matching provided key.
    void
    delete(@NotNull String key, @NotNull org.apache.syncope.common.lib.types.SchemaType schemaType, @NotNull String schema)
    Deletes the attribute, owned by the given any object, for the given schema type and schema.
    read(@NotNull String key)
    Reads the any object matching the provided key.
    Set<org.apache.syncope.common.lib.Attr>
    read(@NotNull String key, @NotNull org.apache.syncope.common.lib.types.SchemaType schemaType)
    Reads the list of attributes owned by the given any object for the given schema type.
    org.apache.syncope.common.lib.Attr
    read(@NotNull String key, @NotNull org.apache.syncope.common.lib.types.SchemaType schemaType, @NotNull String schema)
    Reads the attribute, owned by the given any object, for the given schema type and schema.
    org.apache.syncope.common.lib.to.PagedResult<TO>
    search(AnyQuery anyQuery)
    Returns a paged list of any objects matching the given query.
    jakarta.ws.rs.core.Response
    update(@NotNull String key, @NotNull org.apache.syncope.common.lib.types.SchemaType schemaType, @NotNull org.apache.syncope.common.lib.Attr attrTO)
    Adds or replaces the attribute, owned by the given any object, for the given schema type and schema.
  • Method Details

    • read

      @GET @Path("{key}/{schemaType}") @Produces({"application/json","application/yaml","application/xml"}) Set<org.apache.syncope.common.lib.Attr> read(@NotNull @PathParam("key") @NotNull String key, @NotNull @PathParam("schemaType") @NotNull org.apache.syncope.common.lib.types.SchemaType schemaType)
      Reads the list of attributes owned by the given any object for the given schema type. Note that for the UserService, GroupService and AnyObjectService subclasses, if the key parameter looks like a UUID then it is interpreted as as key, otherwise as a (user)name.
      Parameters:
      key - any object key or name
      schemaType - schema type
      Returns:
      list of attributes, owned by the given any object, for the given schema type
    • read

      @GET @Path("{key}/{schemaType}/{schema}") @Produces({"application/json","application/yaml","application/xml"}) org.apache.syncope.common.lib.Attr read(@NotNull @PathParam("key") @NotNull String key, @NotNull @PathParam("schemaType") @NotNull org.apache.syncope.common.lib.types.SchemaType schemaType, @NotNull @PathParam("schema") @NotNull String schema)
      Reads the attribute, owned by the given any object, for the given schema type and schema. Note that for the UserService, GroupService and AnyObjectService subclasses, if the key parameter looks like a UUID then it is interpreted as as key, otherwise as a (user)name.
      Parameters:
      key - any object key or name
      schemaType - schema type
      schema - schema
      Returns:
      attribute, owned by the given any object, for the given schema type and schema
    • read

      @GET @Path("{key}") @Produces({"application/json","application/yaml","application/xml"}) TO read(@NotNull @PathParam("key") @NotNull String key)
      Reads the any object matching the provided key.
      Parameters:
      key - if value looks like a UUID then it is interpreted as key, otherwise as a (user)name
      Returns:
      any object with matching key
    • search

      @GET @Produces({"application/json","application/yaml","application/xml"}) org.apache.syncope.common.lib.to.PagedResult<TO> search(@BeanParam AnyQuery anyQuery)
      Returns a paged list of any objects matching the given query.
      Parameters:
      anyQuery - query conditions
      Returns:
      paged list of any objects matching the given query
    • update

      @PUT @Path("{key}/{schemaType}/{schema}") @Produces({"application/json","application/yaml","application/xml"}) @Consumes({"application/json","application/yaml","application/xml"}) jakarta.ws.rs.core.Response update(@NotNull @PathParam("key") @NotNull String key, @NotNull @PathParam("schemaType") @NotNull org.apache.syncope.common.lib.types.SchemaType schemaType, @NotNull @NotNull org.apache.syncope.common.lib.Attr attrTO)
      Adds or replaces the attribute, owned by the given any object, for the given schema type and schema.
      Parameters:
      key - any object key or name
      schemaType - schema type
      attrTO - attribute
      Returns:
      Response object featuring the updated any object attribute - as Entity
    • delete

      @DELETE @Path("{key}/{schemaType}/{schema}") @Produces({"application/json","application/yaml","application/xml"}) void delete(@NotNull @PathParam("key") @NotNull String key, @NotNull @PathParam("schemaType") @NotNull org.apache.syncope.common.lib.types.SchemaType schemaType, @NotNull @PathParam("schema") @NotNull String schema)
      Deletes the attribute, owned by the given any object, for the given schema type and schema.
      Parameters:
      key - any object key or name
      schemaType - schema type
      schema - schema
    • delete

      @DELETE @Path("{key}") @Produces({"application/json","application/yaml","application/xml"}) jakarta.ws.rs.core.Response delete(@NotNull @PathParam("key") @NotNull String key)
      Deletes any object matching provided key.
      Parameters:
      key - any object key or name
      Returns:
      Response object featuring the deleted any object enriched with propagation status information
    • deassociate

      @POST @Path("{key}/deassociate/{action}") @Consumes({"application/json","application/yaml","application/xml"}) @Produces("multipart/mixed") jakarta.ws.rs.core.Response deassociate(@NotNull @NotNull org.apache.syncope.common.lib.request.ResourceDR req)
      Executes resource-related operations on given entity.
      Parameters:
      req - external resources to be used for propagation-related operations
      Returns:
      batch results as Response entity
    • associate

      @POST @Path("{key}/associate/{action}") @Consumes({"application/json","application/yaml","application/xml"}) @Produces("multipart/mixed") jakarta.ws.rs.core.Response associate(@NotNull @NotNull org.apache.syncope.common.lib.request.ResourceAR req)
      Executes resource-related operations on given entity.
      Parameters:
      req - external resources to be used for propagation-related operations
      Returns:
      batch results as Response entity