// Path: github-pullrequest-plugin/src/main/java/com/github/kostyasha/github/integration/multibranch/head/GitHubBranchSCMHead.java
// public class GitHubBranchSCMHead extends GitHubSCMHead<GitHubBranchCause> {
//     private static final long serialVersionUID = 1L;
// 
//     public GitHubBranchSCMHead(@NonNull String name, String sourceId) {
//         super(name, sourceId);
//     }
// 
//     @Override
//     public String getPronoun() {
//         return "Branch " + getName();
//     }
// 
//     @Override
//     public String fetchHeadSha(GHRepository remoteRepo) throws IOException {
//         GHBranch branch = remoteRepo.getBranch(getName());
//         if (branch == null) {
//             throw new IOException("No branch " + getName() + " in " + remoteRepo.getFullName());
//         }
//         return branch.getSHA1();
//     }
// 
//     @Override
//     public String getHeadSha(GitHubBranchCause cause) {
//         return cause.getCommitSha();
//     }
// }


import com.github.kostyasha.github.integration.multibranch.head.GitHubBranchSCMHead;
import jenkins.scm.api.SCMHead;
import jenkins.util.NonLocalizable;
import org.jvnet.localizer.Localizable;
import edu.umd.cs.findbugs.annotations.NonNull;
package com.github.kostyasha.github.integration.multibranch.category;



public class GitHubBranchSCMHeadCategory extends GitHubSCMHeadCategory {
    public static final GitHubBranchSCMHeadCategory BRANCH = new GitHubBranchSCMHeadCategory(new NonLocalizable("Branches"));

    public GitHubBranchSCMHeadCategory(@NonNull String urlName, Localizable pronoun) {
        super(urlName, pronoun);
    }

    public GitHubBranchSCMHeadCategory(Localizable pronoun) {
        super(pronoun);
    }

    @Override
    public boolean isMatch(@NonNull SCMHead instance) {
// Path: github-pullrequest-plugin/src/main/java/com/github/kostyasha/github/integration/multibranch/head/GitHubBranchSCMHead.java
// public class GitHubBranchSCMHead extends GitHubSCMHead<GitHubBranchCause> {
//     private static final long serialVersionUID = 1L;
// 
//     public GitHubBranchSCMHead(@NonNull String name, String sourceId) {
//         super(name, sourceId);
//     }
// 
//     @Override
//     public String getPronoun() {
//         return "Branch " + getName();
//     }
// 
//     @Override
//     public String fetchHeadSha(GHRepository remoteRepo) throws IOException {
//         GHBranch branch = remoteRepo.getBranch(getName());
//         if (branch == null) {
//             throw new IOException("No branch " + getName() + " in " + remoteRepo.getFullName());
//         }
//         return branch.getSHA1();
//     }
// 
//     @Override
//     public String getHeadSha(GitHubBranchCause cause) {
//         return cause.getCommitSha();
//     }
// }


// Path: github-pullrequest-plugin/src/main/java/com/github/kostyasha/github/integration/multibranch/category/GitHubBranchSCMHeadCategory.java
import com.github.kostyasha.github.integration.multibranch.head.GitHubBranchSCMHead;
import jenkins.scm.api.SCMHead;
import jenkins.util.NonLocalizable;
import org.jvnet.localizer.Localizable;
import edu.umd.cs.findbugs.annotations.NonNull;

package com.github.kostyasha.github.integration.multibranch.category;



public class GitHubBranchSCMHeadCategory extends GitHubSCMHeadCategory {
    public static final GitHubBranchSCMHeadCategory BRANCH = new GitHubBranchSCMHeadCategory(new NonLocalizable("Branches"));

    public GitHubBranchSCMHeadCategory(@NonNull String urlName, Localizable pronoun) {
        super(urlName, pronoun);
    }

    public GitHubBranchSCMHeadCategory(Localizable pronoun) {
        super(pronoun);
    }

    @Override
    public boolean isMatch(@NonNull SCMHead instance) {
        return instance instanceof GitHubBranchSCMHead;