/* * ==================================================================== * Copyright (c) 2004-2012 TMate Software Ltd. All rights reserved. * * This software is licensed as described in the file COPYING, which * you should have received as part of this distribution. The terms * are also available at http://svnkit.com/license.html. * If newer versions of this license are posted there, you may use a * newer version instead, at your option. * ==================================================================== */ package org.tmatesoft.svn.core.wc; /** * The <b>SVNConflictReason</b> class represents an enumeration of constants describing the reason of a * conflict state in a working copy produced by a merge operation. * * @version 1.3 * @author TMate Software Ltd. * @since 1.2 */ public class SVNConflictReason { /** * Constant saying that local edits are already present. */ public static final SVNConflictReason EDITED = new SVNConflictReason("edited"); /** * Constant saying that another object is in the way. */ public static final SVNConflictReason OBSTRUCTED = new SVNConflictReason("obstructed"); /** * Constant saying that an object is already schedule-delete. */ public static final SVNConflictReason DELETED = new SVNConflictReason("deleted"); /** * Constant saying that an object is unknown or missing. Reserved (never passed currently). */ public static final SVNConflictReason MISSING = new SVNConflictReason("missing"); /** * Constant saying that an object is unversioned. Reserved (never passed currently). */ public static final SVNConflictReason UNVERSIONED = new SVNConflictReason("unversioned"); /** * Constant saying that an object is already added or schedule-add */ public static final SVNConflictReason ADDED = new SVNConflictReason("added"); /** Constant saying that an object is already replaced. * @since New in 1.7. */ public static final SVNConflictReason REPLACED = new SVNConflictReason("replaced"); /** Constant saying that an object has been moved away * @since New in 1.8. */ public static final SVNConflictReason MOVED_AWAY = new SVNConflictReason("moved-away"); /** Constant saying that an object has been moved here * @since New in 1.8. */ public static final SVNConflictReason MOVED_HERE = new SVNConflictReason("moved-here"); /** * @since New in 1.8. */ public static final SVNConflictReason SKIP = new SVNConflictReason("skip"); public static final SVNConflictReason WC_SKIP = new SVNConflictReason("wc-skip"); /** * Converts a string reason name to an <code>SVNConflictReason</code> object. * * @param reason name * @return an <code>SVNConflictReason</code> that matches the <code>reason</code> name; * <code>null</code> if no match is found * @since 1.3 */ public static SVNConflictReason fromString(String reason) { if (EDITED.getName().equals(reason)) { return EDITED; } if (OBSTRUCTED.getName().equals(reason)) { return OBSTRUCTED; } if (DELETED.getName().equals(reason)) { return DELETED; } if (MISSING.getName().equals(reason)) { return MISSING; } if (UNVERSIONED.getName().equals(reason)) { return UNVERSIONED; } if (ADDED.getName().equals(reason)) { return ADDED; } if (REPLACED.getName().equals(reason)) { return REPLACED; } if (MOVED_AWAY.getName().equals(reason)) { return MOVED_AWAY; } if (MOVED_HERE.getName().equals(reason)) { return MOVED_HERE; } return null; } private final String myName; private SVNConflictReason(String name) { myName = name; } /** * Retunrns a string representation of this object. * * @return conflict reason name * @since 1.3 */ public String getName() { return myName; } /** * Retunrns a string representation of this object. * * @return conflict reason name * @since 1.3 */ public String toString() { return getName(); } }