Class LoggedInPredicate<T>

java.lang.Object
com.atlassian.jira.projects.issuenavigator.filter.LoggedInPredicate<T>
All Implemented Interfaces:
Predicate<T>

public class LoggedInPredicate<T> extends Object implements Predicate<T>
Predicate that fails when another predicate requires a user and no user is logged in.

 objects.stream().filter(new LoggedInPredicate(application.isUserLoggedin(), object -> object.isRequiresUser())
 

Decision matrix:

A = User is logged in
B = Predicate whether a user is required
 +▀▀▀▀▀▀▀+▀▀▀▀▀▀▀+▀▀▀▀▀▀▀+
 ▋  A\B  ▋ true  ▋ false ▋
 +▀▀▀▀▀▀▀+▀▀▀▀▀▀▀+▀▀▀▀▀▀▀+
 ▋ true  ▋ true  | true  |
 +▀▀▀▀▀▀▀+-------+-------+
 ▋ false ▋ false | true  |
 +▀▀▀▀▀▀▀+-------+-------+
 
  • Constructor Details

    • LoggedInPredicate

      public LoggedInPredicate(boolean loggedInUser, Predicate<T> predicate)
  • Method Details

    • test

      public boolean test(T filter)
      Specified by:
      test in interface Predicate<T>