001/* 002* file CcMergeHandlingCallback.java 003* 004* Licensed Materials - Property of IBM 005* Restricted Materials of IBM 006* 007* com.ibm.rational.wvcm.stp.cc.CcMergeHandlingCallback 008* 009* (C) Copyright IBM Corporation 2008, 2011. All Rights Reserved. 010* Note to U.S. Government Users Restricted Rights: Use, duplication or 011* disclosure restricted by GSA ADP Schedule Contract with IBM Corp. 012*/ 013 014package com.ibm.rational.wvcm.stp.cc; 015 016import javax.wvcm.WvcmException; 017 018/** 019 * Interface to let the GUI deal with merge operations on checkin. 020 */ 021public interface CcMergeHandlingCallback { 022 023 /** 024 * Enumeration to specify how to deal with the checkin 025 * after a merge. 026 */ 027 enum CheckinMergeHandling { 028 029 /** Don't do anything else */ 030 LEAVE_CHECKED_OUT("leave-checked-out"), 031 032 /** Retry the checkin */ 033 RETRY_CHECKIN("retry-checkin"), 034 035 /** Fail remaining checkins */ 036 CANCEL_REMAINING_CHECKINS("cancel-remaining-checkins"); 037 038 private String m_name; 039 040 private CheckinMergeHandling(String name) { m_name = name; } 041 042 /* (non-Javadoc) 043 * @see java.lang.Object#toString() 044 */ 045 public String toString() { return m_name; } 046 } 047 048 049 /** 050 * This method is called when a manual merge from LATEST is needed. 051 * @param file the file we're merging 052 * @param fromVersion the base version 053 * @param toVersion the version we're merging with 054 * @return CheckinMergeHandling enumeration specifying how the checkin 055 * is to be handled after the merge 056 */ 057 CheckinMergeHandling performManualMerge( 058 CcFile file, 059 CcVersion fromVersion, 060 CcVersion toVersion) throws WvcmException; 061 062}