public CompletableFuture<Revision> addPerTokenPermission(Author author, String projectName,
                                                             String repoName, String appId,
                                                             Collection<Permission> permission) {
        requireNonNull(author, "author");
        requireNonNull(projectName, "projectName");
        requireNonNull(repoName, "repoName");
        requireNonNull(appId, "appId");
        requireNonNull(permission, "permission");

        return getProject(projectName).thenCompose(project -> {
            ensureProjectToken(project, appId);
            return addPermissionAtPointer(author, projectName,
                                          perTokenPermissionPointer(repoName, appId), permission,
                                          "Add permission of the token '" + appId +
                                          "' as '" + permission + "' to the project " + projectName);
        });
    }
public CompletableFuture < Revision > addPerTokenPermission ( Author author , String projectName , String repoName , String appId , Collection < Permission > permission ) { requireNonNull ( author , "author" ) ; requireNonNull ( projectName , "projectName" ) ; requireNonNull ( repoName , "repoName" ) ; requireNonNull ( appId , "appId" ) ; requireNonNull ( permission , "permission" ) ; return getProject ( projectName ) . thenCompose ( project -> { ensureProjectToken ( project , appId ) ; return addPermissionAtPointer ( author , projectName , perTokenPermissionPointer ( repoName , appId ) , permission , "Add permission of the token '" + appId + "' as '" + permission + "' to the project " + projectName ) ; } ) ; }
Adds {@link Permission}s for the {@link Token} of the specified {@code appId} to the specified
{@code repoName} in the specified {@code projectName}.