Class PrincipalManagerImpl

    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      @NotNull PrincipalIterator findPrincipals​(@Nullable java.lang.String simpleFilter)
      Gets the principals matching a simple filter expression applied against the principal name.
      @NotNull PrincipalIterator findPrincipals​(@Nullable java.lang.String simpleFilter, boolean fullText, int searchType, long offset, long limit)
      Gets the principals matching a simple filter expression applied against the principal name AND the specified search type.
      @NotNull PrincipalIterator findPrincipals​(@Nullable java.lang.String simpleFilter, int searchType)
      Gets the principals matching a simple filter expression applied against the principal name AND the specified search type.
      @NotNull java.security.Principal getEveryone()
      Returns the Principal which is implicitly applied to every subject.
      @NotNull PrincipalIterator getGroupMembership​(@NotNull java.security.Principal principal)
      Returns an iterator over all group principals for which the given principal is either direct or indirect member of.
      @Nullable java.security.Principal getPrincipal​(@NotNull java.lang.String principalName)
      Returns the principal with the given name if is known to this manager (with respect to the sessions access rights).
      @NotNull PrincipalIterator getPrincipals​(int searchType)
      Returns all Principals matching the specified search type.
      boolean hasPrincipal​(@NotNull java.lang.String principalName)
      Checks if the principal with the given name is known to this manager (in respect to the sessions access rights).
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • PrincipalManagerImpl

        public PrincipalManagerImpl​(@NotNull
                                    @NotNull PrincipalProvider principalProvider)
    • Method Detail

      • hasPrincipal

        public boolean hasPrincipal​(@NotNull
                                    @NotNull java.lang.String principalName)
        Description copied from interface: PrincipalManager
        Checks if the principal with the given name is known to this manager (in respect to the sessions access rights). If this method returns true then the following expression evaluates to true as well: PrincipalManager.getPrincipal(name).getName().equals(name)
        Specified by:
        hasPrincipal in interface PrincipalManager
        Parameters:
        principalName - the name of the principal to check
        Returns:
        return true if the principal with this name is known to this manager; false otherwise.
      • getPrincipal

        @Nullable
        public @Nullable java.security.Principal getPrincipal​(@NotNull
                                                              @NotNull java.lang.String principalName)
        Description copied from interface: PrincipalManager
        Returns the principal with the given name if is known to this manager (with respect to the sessions access rights). Please note that due to security reasons group principals will only reveal those members that are visible to the Session this PrincipalManager has been built for.
        Specified by:
        getPrincipal in interface PrincipalManager
        Parameters:
        principalName - the name of the principal to retrieve
        Returns:
        return the requested principal or null if a principal with the given name does not exist or is not accessible for the editing session.
      • findPrincipals

        @NotNull
        public @NotNull PrincipalIterator findPrincipals​(@Nullable
                                                         @Nullable java.lang.String simpleFilter)
        Description copied from interface: PrincipalManager
        Gets the principals matching a simple filter expression applied against the principal name. TODO: define the filter expression.
        An implementation may limit the number of principals returned. If there are no matching principals, an empty iterator is returned.
        Specified by:
        findPrincipals in interface PrincipalManager
        Returns:
        a PrincipalIterator over the Principals matching the given filter.
      • getGroupMembership

        @NotNull
        public @NotNull PrincipalIterator getGroupMembership​(@NotNull
                                                             @NotNull java.security.Principal principal)
        Description copied from interface: PrincipalManager
        Returns an iterator over all group principals for which the given principal is either direct or indirect member of.

        Example:
        If Principal P is member of Group A, and Group A is member of Group B, this method will return Principal A and Principal B.

        Specified by:
        getGroupMembership in interface PrincipalManager
        Parameters:
        principal - the principal to return it's membership from.
        Returns:
        an iterator returning all groups the given principal is member of.
      • getEveryone

        @NotNull
        public @NotNull java.security.Principal getEveryone()
        Description copied from interface: PrincipalManager
        Returns the Principal which is implicitly applied to every subject.
        Specified by:
        getEveryone in interface PrincipalManager
        Returns:
        the 'everyone' principal
      • findPrincipals

        @NotNull
        public @NotNull PrincipalIterator findPrincipals​(@Nullable
                                                         @Nullable java.lang.String simpleFilter,
                                                         boolean fullText,
                                                         int searchType,
                                                         long offset,
                                                         long limit)
        Description copied from interface: PrincipalQueryManager
        Gets the principals matching a simple filter expression applied against the principal name AND the specified search type. Results are expected to be sorted by the principal name. An implementation may limit the number of principals returned. If there are no matching principals, an empty iterator is returned.
        Specified by:
        findPrincipals in interface PrincipalQueryManager
        searchType - Any of the following constants:
        offset - Offset from where to start returning results. 0 for no offset.
        limit - Maximal number of results to return. -1 for no limit.
        Returns:
        a PrincipalIterator over the Principals matching the given filter and search type.