Class Categories


  • @RequiredRole("admin")
    public class Categories
    extends TableServletBase
    /api/admin/categories/class_id[/category] : Administration of category records.

    Allows administration (Create/Read/Update/Delete) of layer/attribute category records via JSON-encoded objects with the following attributes:

    class_id
    The scope of the category - either "transcript" or "speaker".
    category
    The name of the category.
    description
    The description of t/he category.
    display_order
    The order in which the category appears amongst others.
    _cantDelete
    This is not a database field, but rather is present in records returned from the server that can not currently be deleted; a string representing the reason the record can't be deleted.

    The following operations, specified by the HTTP method, are supported:

    POST
    Create a new record.
    • Request Body - a JSON-encoded object representing the new record (excluding category_id).
    • Response Body - the standard JSON envelope, with the model as an object representing the new record (including category_id).
    • Response Status
      • 200 : The record was successfully created.
      • 409 : The record could not be added because it was already there.
    GET
    Read the records.
    • Parameters
      • pageNumber (integer) : The (zero-based) page to return.
      • pageLength (integer) : How many rows per page (default is 20).
      • Accept (string) : Equivalent of the "Accept" request header (see below).
    • "Accept" request header/parameter "text/csv" to return records as Comma Separated Values. If not specified, records are returned as a JSON-encoded array of objects.
    • Response Body - the standard JSON envelope, with the model as a corresponding list of records.
    • Response Status
      • 200 : The records could be listed.
    PUT
    Update an existing record, specified by the category given in the request body.
    • Request Body - a JSON-encoded object representing the record.
    • Response Body - the standard JSON envelope, with the model as an object representing the record.
    • Response Status
      • 200 : The record was successfully updated.
      • 404 : The record was not found.
    DELETE
    Delete an existing record.
    • Request Path - /api/admin/categories/class_id/category where category is the database ID of the record to delete.
    • Response Body - the standard JSON envelope, including a message if the request succeeds or an error explaining the reason for failure.
    • Response Status
      • 200 : The record was successfully deleted.
      • 400 : No category was specified in the URL path, or the record exists but could not be deleted.
      • 404 : The record was not found.

    Author:
    Robert Fromont robert@fromont.net.nz
    • Constructor Detail

      • Categories

        public Categories()