Class PermissionCheckCollection.PermissionCheckCollectionMixin<T>

  • Type Parameters:
    T - the type of the Collection in use
    All Implemented Interfaces:
    Serializable, PermissionCheckCollection<T>, org.aopalliance.aop.Advice, org.aopalliance.intercept.Interceptor, org.aopalliance.intercept.MethodInterceptor, org.springframework.aop.DynamicIntroductionAdvice, org.springframework.aop.IntroductionInfo, org.springframework.aop.IntroductionInterceptor
    Enclosing interface:
    PermissionCheckCollection<T>

    public static class PermissionCheckCollection.PermissionCheckCollectionMixin<T>
    extends org.springframework.aop.support.DelegatingIntroductionInterceptor
    implements PermissionCheckCollection<T>
    Helper 'introduction' to allow simple addition of the PermissionCheckCollection interface to existing collections.
    Since:
    4.0
    Author:
    Derek Hulley
    See Also:
    Serialized Form
    • Method Detail

      • getTargetResultCount

        public int getTargetResultCount()
        Description copied from interface: PermissionCheckCollection
        Get the desired number of results. Permission checks can stop once the number of return objects reaches this number.
        Specified by:
        getTargetResultCount in interface PermissionCheckCollection<T>
        Returns:
        the number of results desired
      • getCutOffAfterTimeMs

        public long getCutOffAfterTimeMs()
        Description copied from interface: PermissionCheckCollection
        Get the maximum time for permission checks to execute before cutting the results off.
        Zero: Ignore this value.
        Specified by:
        getCutOffAfterTimeMs in interface PermissionCheckCollection<T>
        Returns:
        the time allowed for permission checks before cutoff
      • create

        public static final <TT> Collection<TT> create​(Collection<TT> collection,
                                                       int targetResultCount,
                                                       long cutOffAfterTimeMs,
                                                       int cutOffAfterCount)
        Helper method to create a PermissionCheckCollection from an existing Collection
        Type Parameters:
        TT - the type of the Collection
        Parameters:
        collection - the Collection to proxy
        targetResultCount - the desired number of results or default to the collection size
        cutOffAfterTimeMs - the number of milliseconds to wait before cut-off or zero to use the system default time-based cut-off.
        cutOffAfterCount - the number of permission checks to process before cut-off or zero to use the system default count-based cut-off.
        Returns:
        a Collection of the same type but including the PermissionCheckCollection interface