Interface PlanPermissionsService

  • All Known Implementing Classes:
    DefaultPlanPermissionsService

    @ExperimentalApi
    public interface PlanPermissionsService
    Service to manage plan permissions.
    Since:
    6.2.0
    • Method Detail

      • listUsersWithPermissionsForPlan

        @NotNull
        @NotNull Iterable<String> listUsersWithPermissionsForPlan​(@NotNull
                                                                  @NotNull String planKey)
      • getUserPermissionsForPlan

        @NotNull
        @NotNull List<BambooPermission> getUserPermissionsForPlan​(@NotNull
                                                                  @NotNull String planKey,
                                                                  @NotNull
                                                                  @NotNull String username)
      • addUserPermissionsToPlan

        boolean addUserPermissionsToPlan​(@NotNull
                                         @NotNull String planKey,
                                         @NotNull
                                         @NotNull String username,
                                         @NotNull
                                         @NotNull List<BambooPermission> permissionsToAdd)
      • removeUserPermissionsFromPlan

        boolean removeUserPermissionsFromPlan​(@NotNull
                                              @NotNull String planKey,
                                              @NotNull
                                              @NotNull String username,
                                              @NotNull
                                              @NotNull List<BambooPermission> permissionsToRemove)
      • listGroupsWithPermissionsForPlan

        @NotNull
        @NotNull Iterable<String> listGroupsWithPermissionsForPlan​(@NotNull
                                                                   @NotNull String planKey)
      • getGroupPermissionsForPlan

        @NotNull
        @NotNull List<BambooPermission> getGroupPermissionsForPlan​(@NotNull
                                                                   @NotNull String planKey,
                                                                   @NotNull
                                                                   @NotNull String groupName)
      • addGroupPermissionsToPlan

        boolean addGroupPermissionsToPlan​(@NotNull
                                          @NotNull String planKey,
                                          @NotNull
                                          @NotNull String groupName,
                                          @NotNull
                                          @NotNull List<BambooPermission> permissionsToAdd)
      • removeGroupPermissionsFromPlan

        boolean removeGroupPermissionsFromPlan​(@NotNull
                                               @NotNull String planKey,
                                               @NotNull
                                               @NotNull String groupName,
                                               @NotNull
                                               @NotNull List<BambooPermission> permissionsToRemove)
      • getLoggedInPermissionsForPlan

        @NotNull
        @NotNull List<BambooPermission> getLoggedInPermissionsForPlan​(@NotNull
                                                                      @NotNull String planKey)
      • addLoggedInPermissionsToPlan

        boolean addLoggedInPermissionsToPlan​(@NotNull
                                             @NotNull String planKey,
                                             @NotNull
                                             @NotNull List<BambooPermission> permissionsToAdd)
      • removeLoggedInPermissionsFromPlan

        boolean removeLoggedInPermissionsFromPlan​(@NotNull
                                                  @NotNull String planKey,
                                                  @NotNull
                                                  @NotNull List<BambooPermission> permissionsToRemove)
      • getAnonymousPermissionsForPlan

        @NotNull
        @NotNull List<BambooPermission> getAnonymousPermissionsForPlan​(@NotNull
                                                                       @NotNull String planKey)
      • addAnonymousPermissionsToPlan

        boolean addAnonymousPermissionsToPlan​(@NotNull
                                              @NotNull String planKey)
      • removeAnonymousPermissionsFromPlan

        boolean removeAnonymousPermissionsFromPlan​(@NotNull
                                                   @NotNull String planKey)
      • supportedPermissions

        @NotNull
        @NotNull Collection<BambooPermission> supportedPermissions()
        Collection of permissions configurable for plans.

        Ordered by permission importance. Least granting permissions come first.

      • permissionDependencies

        @NotNull
        @NotNull Collection<BambooPermission> permissionDependencies​(@NotNull
                                                                     @NotNull BambooPermission permission)
        Obtain a collection of Bamboo permissions dependent on the passed permission. A dependent permission is expected to always be granted whenever the parent permission is granted too.

        The result is an effective collection of dependencies, meaning there's no need to recursively traverse the dependency graph.