Interface QASecurity

All Known Implementing Classes:
AdministratorsOnlyQASecurity, UserBasedFilterQASecurity

public interface QASecurity
The QASecurity interface defines methods for implementing security strategies related to Quality Assurance (QA) events. Classes implementing this interface should provide logic to filter and determine visibility of QA events based on the user's permissions.
Author:
Andrea Bollini (andrea.bollini at 4science.com)
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    canSeeQAEvent(Context context, EPerson user, QAEvent qaEvent)
    Return true it the user is potentially allowed to see events in the qasource that adopt this security strategy
    boolean
    canSeeQASource(Context context, EPerson user)
    Return true it the user is potentially allowed to see events in the qasource that adopt this security strategy
    Return a SOLR queries that can be applied querying the qaevent SOLR core to retrieve only the qaevents visible to the provided user
  • Method Details

    • generateFilterQuery

      Optional<String> generateFilterQuery(Context context, EPerson user)
      Return a SOLR queries that can be applied querying the qaevent SOLR core to retrieve only the qaevents visible to the provided user
      Parameters:
      context - the DSpace context
      user - the user to consider to restrict the visible qaevents
      Returns:
      the SOLR filter query to apply
    • canSeeQASource

      boolean canSeeQASource(Context context, EPerson user)
      Return true it the user is potentially allowed to see events in the qasource that adopt this security strategy
      Parameters:
      context - the DSpace context
      user - the user to consider to restrict the visible qaevents
      Returns:
      true if the user can eventually see some qaevents
    • canSeeQAEvent

      boolean canSeeQAEvent(Context context, EPerson user, QAEvent qaEvent)
      Return true it the user is potentially allowed to see events in the qasource that adopt this security strategy
      Parameters:
      context - the DSpace context
      user - the user to consider to restrict the visible qaevents
      Returns:
      true if the user can see the provided qaEvent