diff src/org/tmatesoft/hg/repo/HgPhase.java @ 445:d0e5dc3cae6e smartgit3

Support for phases functionality from Mercurial 2.1
author Artem Tikhomirov <tikhomirov.artem@gmail.com>
date Tue, 05 Jun 2012 20:50:06 +0200
parents
children 09f2d38ecf26
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/org/tmatesoft/hg/repo/HgPhase.java	Tue Jun 05 20:50:06 2012 +0200
@@ -0,0 +1,48 @@
+/*
+ * Copyright (c) 2012 TMate Software Ltd
+ *  
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; version 2 of the License.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * For information on how to redistribute this software under
+ * the terms of a license other than GNU General Public License
+ * contact TMate Software at support@hg4j.com
+ */
+package org.tmatesoft.hg.repo;
+
+/**
+ * Phases for a changeset is a new functionality in Mercurial 2.1
+ * 
+ * @author Artem Tikhomirov
+ * @author TMate Software Ltd.
+ */
+public enum HgPhase {
+	
+	Public("public"), Draft("draft"), Secret("secret"), Undefined("");
+
+	@SuppressWarnings("unused")
+	private final String hgString;
+
+	private HgPhase(String stringRepresentation) {
+		hgString = stringRepresentation;
+	}
+
+//	public String toMercurialString() {
+//		return hgString;
+//	}
+
+	public static HgPhase parse(int value) {
+		switch (value) {
+		case 0 : return Public;
+		case 1 : return Draft;
+		case 2 : return Secret;
+		}
+		throw new IllegalArgumentException(String.format("Bad phase index: %d", value));
+	}
+}