Class ProtectedBranchesApi

    • Constructor Detail

      • ProtectedBranchesApi

        public ProtectedBranchesApi​(GitLabApi gitLabApi)
    • Method Detail

      • getProtectedBranches

        public List<ProtectedBranch> getProtectedBranches​(Object projectIdOrPath)
                                                   throws GitLabApiException
        Gets a list of protected branches from a project.
        GitLab Endpoint: GET /projects/:id/protected_branches
        Parameters:
        projectIdOrPath - the project in the form of an Integer(ID), String(path), or Project instance
        Returns:
        the list of protected branches for the project
        Throws:
        GitLabApiException - if any exception occurs
      • getProtectedBranches

        public Pager<ProtectedBranch> getProtectedBranches​(Object projectIdOrPath,
                                                           int itemsPerPage)
                                                    throws GitLabApiException
        Gets a Pager of protected branches from a project.
        GitLab Endpoint: GET /projects/:id/protected_branches
        Parameters:
        projectIdOrPath - the project in the form of an Integer(ID), String(path), or Project instance
        itemsPerPage - the number of instances that will be fetched per page
        Returns:
        the Pager of protected branches for the project
        Throws:
        GitLabApiException - if any exception occurs
      • getProtectedBranchesStream

        public Stream<ProtectedBranch> getProtectedBranchesStream​(Object projectIdOrPath)
                                                           throws GitLabApiException
        Gets a Stream of protected branches from a project.
        GitLab Endpoint: GET /projects/:id/protected_branches
        Parameters:
        projectIdOrPath - the project in the form of an Integer(ID), String(path), or Project instance
        Returns:
        the Stream of protected branches for the project
        Throws:
        GitLabApiException - if any exception occurs
      • unprotectBranch

        public void unprotectBranch​(Integer projectIdOrPath,
                                    String branchName)
                             throws GitLabApiException
        Unprotects the given protected branch or wildcard protected branch.
        GitLab Endpoint: DELETE /projects/:id/protected_branches/:name
        Parameters:
        projectIdOrPath - the project in the form of an Integer(ID), String(path), or Project instance
        branchName - the name of the branch to un-protect
        Throws:
        GitLabApiException - if any exception occurs
      • protectBranch

        public ProtectedBranch protectBranch​(Integer projectIdOrPath,
                                             String branchName)
                                      throws GitLabApiException
        Protects a single repository branch or several project repository branches using a wildcard protected branch.
        GitLab Endpoint: POST /projects/:id/protected_branches
        Parameters:
        projectIdOrPath - the project in the form of an Integer(ID), String(path), or Project instance
        branchName - the name of the branch to protect
        Returns:
        the branch info for the protected branch
        Throws:
        GitLabApiException - if any exception occurs
      • protectBranch

        public ProtectedBranch protectBranch​(Integer projectIdOrPath,
                                             String branchName,
                                             AccessLevel pushAccessLevel,
                                             AccessLevel mergeAccessLevel)
                                      throws GitLabApiException
        Protects a single repository branch or several project repository branches using a wildcard protected branch.
        GitLab Endpoint: POST /projects/:id/protected_branches
        Parameters:
        projectIdOrPath - the project in the form of an Integer(ID), String(path), or Project instance
        branchName - the name of the branch to protect
        pushAccessLevel - Access levels allowed to push (defaults: 40, maintainer access level)
        mergeAccessLevel - Access levels allowed to merge (defaults: 40, maintainer access level)
        Returns:
        the branch info for the protected branch
        Throws:
        GitLabApiException - if any exception occurs