Interface IBranchDelegator

    • Method Detail

      • getBranchSpec

        IBranchSpec getBranchSpec​(java.lang.String name,
                                  GetBranchSpecOptions opts)
                           throws P4JavaException
        Get a specific named Perforce branch spec from the Perforce server.

        Note that since the Perforce server usually interprets asking for a non-existent branch spec as equivalent to asking for a template for a new branch spec, you will normally always get back a result here. It is best to first use the getBranchSpecList method to see if the branch spec exists, then use this method to retrieve a specific branch spec once you know it exists.

        Parameters:
        name - non-null Perforce branch name.
        opts - GetBranchSpecOptions object describing optional parameters; if null, no options are set.
        Returns:
        potentially-null IBranchSpec for the named Perforce branch spec.
        Throws:
        P4JavaException - if any error occurs in the processing of this method.
        Since:
        2011.2
      • deleteBranchSpec

        java.lang.String deleteBranchSpec​(java.lang.String branchSpecName,
                                          DeleteBranchSpecOptions opts)
                                   throws P4JavaException
        Delete a named Perforce branch spec from the Perforce server.
        Parameters:
        branchSpecName - non-null name of the branch spec to be deleted.
        opts - DeleteBranchSpecOptions object describing optional parameters; if null, no options are set.
        Returns:
        non-null result message string from the Perforce server; this may include form trigger output pre-pended and / or appended to the "normal" message
        Throws:
        P4JavaException - if any error occurs in the processing of this method.
      • createBranchSpec

        java.lang.String createBranchSpec​(@Nonnull
                                          IBranchSpec branchSpec)
                                   throws ConnectionException,
                                          RequestException,
                                          AccessException
        TODO: This should be moved up to Server and changed to delegate to createBranchSpec with an options class. This would also allow for a force option.
        Parameters:
        branchSpec - the spec object containing the branch data fields.
        Returns:
        The name of the newly create branch spec
        Throws:
        ConnectionException - when there is an error talking to the Helix server
        RequestException - when there is a problem with the data provided in the request
        AccessException - when access to the branch command is not authorised