Class AccessConditionRequestFilter

java.lang.Object
io.goobi.viewer.api.rest.filters.AccessConditionRequestFilter
All Implemented Interfaces:
javax.ws.rs.container.ContainerRequestFilter

@Provider @Priority(2000) public class AccessConditionRequestFilter extends Object implements javax.ws.rs.container.ContainerRequestFilter

Checks requests for access conditions. Requests must have set the request attribute FilterTools.ATTRIBUTE_PI and REQUIRED_PRIVILEGE to appropriate values for the filter to work properly. Additionally FilterTools.ATTRIBUTE_LOGID and FilterTools.ATTRIBUTE_FILENAME may be set in the request to check access to specific files or child documents

  • Field Details

    • REQUIRED_PRIVILEGE

      public static final String REQUIRED_PRIVILEGE
      Privilege name required for accessing a resource
      See Also:
  • Constructor Details

    • AccessConditionRequestFilter

      public AccessConditionRequestFilter()
  • Method Details

    • filter

      public void filter(javax.ws.rs.container.ContainerRequestContext request) throws IOException
      Specified by:
      filter in interface javax.ws.rs.container.ContainerRequestFilter
      Throws:
      IOException
    • getRequiredPrivileges

      public static String[] getRequiredPrivileges(javax.servlet.http.HttpServletRequest request)
      Read attribute REQUIRED_PRIVILEGE from request and return it as String array. If the attribute doesn't exist, return an empty array
      Parameters:
      request -
      Returns:
      Required privileges as String[]