Package org.eclipse.emf.cdo.server

## Interface IRepository.ReadAccessHandler

- All Superinterfaces:
    `IRepository.Handler`
  All Known Implementing Classes:
    `CDOServerUtil.RepositoryReadAccessValidator`
  Enclosing interface:
    IRepository

      public static interface IRepository.ReadAccessHandler
      extends IRepository.Handler

  Provides a way to handle revisions that are to be sent to the client.
  Since:
    2.0
  Author:
    Eike Stepper

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `handleRevisionsBeforeSending​(ISession session, CDORevision[] revisions, java.util.List<CDORevision> additionalRevisions)` | Provides a way to handle revisions that are to be sent to the client.

- - ### Method Detail

    - #### handleRevisionsBeforeSending

          void handleRevisionsBeforeSending​(ISession session,
                                            CDORevision[] revisions,
                                            java.util.List<CDORevision> additionalRevisions)
                                     throws java.lang.RuntimeException

      Provides a way to handle revisions that are to be sent to the client.
      Parameters:
        `session` - The session that is going to send the revisions.
        `revisions` - The revisions that are requested by the client. If the client must not see any of these revisions an unchecked exception must be thrown.
        `additionalRevisions` - The additional revisions that are to be sent to the client because internal optimizers believe that they will be needed soon. If the client must not see any of these revisions they should be removed from the list.
      Throws:
        `java.lang.RuntimeException` - to indicate that none of the revisions must be sent to the client. This exception will be visible at the client side!