diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/api/CherryPickResult.java b/org.eclipse.jgit/src/org/eclipse/jgit/api/CherryPickResult.java index d4b6dcb65..5b3c5d4e7 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/api/CherryPickResult.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/api/CherryPickResult.java @@ -68,12 +68,14 @@ public class CherryPickResult { }, /** */ FAILED { + @Override public String toString() { return "Failed"; } }, /** */ CONFLICTING { + @Override public String toString() { return "Conflicting"; } diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/api/MergeResult.java b/org.eclipse.jgit/src/org/eclipse/jgit/api/MergeResult.java index 6ce2fc668..fcc3bb65e 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/api/MergeResult.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/api/MergeResult.java @@ -78,6 +78,7 @@ public class MergeResult { }, /** */ ALREADY_UP_TO_DATE { + @Override public String toString() { return "Already-up-to-date"; } @@ -89,6 +90,7 @@ public class MergeResult { }, /** */ FAILED { + @Override public String toString() { return "Failed"; } @@ -100,6 +102,7 @@ public class MergeResult { }, /** */ MERGED { + @Override public String toString() { return "Merged"; } @@ -111,6 +114,7 @@ public class MergeResult { }, /** */ CONFLICTING { + @Override public String toString() { return "Conflicting"; } @@ -122,6 +126,7 @@ public class MergeResult { }, /** */ NOT_SUPPORTED { + @Override public String toString() { return "Not-yet-supported"; } diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/lib/RepositoryState.java b/org.eclipse.jgit/src/org/eclipse/jgit/lib/RepositoryState.java index 00ccb28fc..7e3ba51da 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/lib/RepositoryState.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/lib/RepositoryState.java @@ -57,10 +57,19 @@ import org.eclipse.jgit.internal.JGitText; public enum RepositoryState { /** Has no work tree and cannot be used for normal editing. */ BARE { + @Override public boolean canCheckout() { return false; } + + @Override public boolean canResetHead() { return false; } + + @Override public boolean canCommit() { return false; } + + @Override public boolean canAmend() { return false; } + + @Override public String getDescription() { return "Bare"; } }, @@ -68,20 +77,38 @@ public enum RepositoryState { * A safe state for working normally * */ SAFE { + @Override public boolean canCheckout() { return true; } + + @Override public boolean canResetHead() { return true; } + + @Override public boolean canCommit() { return true; } + + @Override public boolean canAmend() { return true; } + + @Override public String getDescription() { return JGitText.get().repositoryState_normal; } }, /** An unfinished merge. Must resolve or reset before continuing normally */ MERGING { + @Override public boolean canCheckout() { return false; } + + @Override public boolean canResetHead() { return true; } + + @Override public boolean canCommit() { return false; } + + @Override public boolean canAmend() { return false; } + + @Override public String getDescription() { return JGitText.get().repositoryState_conflicts; } }, @@ -90,20 +117,38 @@ public enum RepositoryState { * contain any unmerged paths. */ MERGING_RESOLVED { + @Override public boolean canCheckout() { return true; } + + @Override public boolean canResetHead() { return true; } + + @Override public boolean canCommit() { return true; } + + @Override public boolean canAmend() { return false; } + + @Override public String getDescription() { return JGitText.get().repositoryState_merged; } }, /** An unfinished cherry-pick. Must resolve or reset before continuing normally */ CHERRY_PICKING { + @Override public boolean canCheckout() { return false; } + + @Override public boolean canResetHead() { return true; } + + @Override public boolean canCommit() { return false; } + + @Override public boolean canAmend() { return false; } + + @Override public String getDescription() { return JGitText.get().repositoryState_conflicts; } }, @@ -112,10 +157,19 @@ public enum RepositoryState { * contain any unmerged paths. */ CHERRY_PICKING_RESOLVED { + @Override public boolean canCheckout() { return true; } + + @Override public boolean canResetHead() { return true; } + + @Override public boolean canCommit() { return true; } + + @Override public boolean canAmend() { return false; } + + @Override public String getDescription() { return JGitText.get().repositoryState_merged; } }, @@ -123,10 +177,19 @@ public enum RepositoryState { * An unfinished rebase or am. Must resolve, skip or abort before normal work can take place */ REBASING { + @Override public boolean canCheckout() { return false; } + + @Override public boolean canResetHead() { return false; } + + @Override public boolean canCommit() { return true; } + + @Override public boolean canAmend() { return true; } + + @Override public String getDescription() { return JGitText.get().repositoryState_rebaseOrApplyMailbox; } }, @@ -134,10 +197,19 @@ public enum RepositoryState { * An unfinished rebase. Must resolve, skip or abort before normal work can take place */ REBASING_REBASING { + @Override public boolean canCheckout() { return false; } + + @Override public boolean canResetHead() { return false; } + + @Override public boolean canCommit() { return true; } + + @Override public boolean canAmend() { return true; } + + @Override public String getDescription() { return JGitText.get().repositoryState_rebase; } }, @@ -145,10 +217,19 @@ public enum RepositoryState { * An unfinished apply. Must resolve, skip or abort before normal work can take place */ APPLY { + @Override public boolean canCheckout() { return false; } + + @Override public boolean canResetHead() { return false; } + + @Override public boolean canCommit() { return true; } + + @Override public boolean canAmend() { return true; } + + @Override public String getDescription() { return JGitText.get().repositoryState_applyMailbox; } }, @@ -156,10 +237,19 @@ public enum RepositoryState { * An unfinished rebase with merge. Must resolve, skip or abort before normal work can take place */ REBASING_MERGE { + @Override public boolean canCheckout() { return false; } + + @Override public boolean canResetHead() { return false; } + + @Override public boolean canCommit() { return true; } + + @Override public boolean canAmend() { return true; } + + @Override public String getDescription() { return JGitText.get().repositoryState_rebaseWithMerge; } }, @@ -167,10 +257,19 @@ public enum RepositoryState { * An unfinished interactive rebase. Must resolve, skip or abort before normal work can take place */ REBASING_INTERACTIVE { + @Override public boolean canCheckout() { return false; } + + @Override public boolean canResetHead() { return false; } + + @Override public boolean canCommit() { return true; } + + @Override public boolean canAmend() { return true; } + + @Override public String getDescription() { return JGitText.get().repositoryState_rebaseInteractive; } }, @@ -179,16 +278,21 @@ public enum RepositoryState { */ BISECTING { /* Changing head is a normal operation when bisecting */ + @Override public boolean canCheckout() { return true; } /* Do not reset, checkout instead */ + @Override public boolean canResetHead() { return false; } /* Commit during bisect is useful */ + @Override public boolean canCommit() { return true; } + @Override public boolean canAmend() { return false; } + @Override public String getDescription() { return JGitText.get().repositoryState_bisecting; } };