001 /* 002 * file CcBranchType.java 003 * 004 * 005 * Licensed Materials - Property of IBM 006 * Restricted Materials of IBM 007 * 008 * com.ibm.rational.wvcm.stp.cc.CcBranchType 009 * 010 * © Copyright IBM Corporation 2004, 2008. All Rights Reserved. 011 * Note to U.S. Government Users Restricted Rights: Use, duplication or 012 * disclosure restricted by GSA ADP Schedule Contract with IBM Corp. 013 */ 014 015 016 package com.ibm.rational.wvcm.stp.cc; 017 018 import javax.wvcm.Feedback; 019 import javax.wvcm.WvcmException; 020 021 import com.ibm.rational.wvcm.stp.cc.CcTypeBase.TypeCreateFlag; 022 023 /** 024 * <p> 025 * A proxy for a ClearCase branch type. 026 * </p> 027 * <p> 028 * Branches are used in base ClearCase to enable parallel development. 029 * A branch is an object that specifies a linear sequence of versions of an element. 030 * Every element has one <b>main</b> branch, which represents the principal line of development, 031 * and may have multiple subbranches, each of which represents a separate line of development. 032 * For example, a project team may use the <b>main</b> branch for new development work while using a 033 * subbranch simultaneously for fixing a bug. 034 * </p> 035 * <p> 036 * For more branch information, see the ClearCase "Guide to Managing Software Projects" 037 * manual, and the cleartool man pages "mkbrtype" and "mkbranch". 038 * </p> 039 */ 040 public interface CcBranchType extends CcTypeBase 041 { 042 /** 043 * <p>Create a new branch type at the location identified by this proxy. The 044 * location should be an object name selector specifying the branch type's name 045 * and the repository (VOB) in which to create it. 046 * </p> 047 * <p>Set the {@link CcTypeBase#SCOPE} property to specify the new type's global scope. 048 * If no scope is set, a scope of NONE (ordinary scope) is used. 049 * </p> 050 * <p>Set the {@link CcTypeBase#INSTANCE_CONSTRAINT} property to determine where the new type 051 * may be applied. Valid values for branch types are BRANCH and ELEMENT. If no constraint 052 * is set the default is ELEMENT. 053 * </p> 054 * @param flags Resource-specific creation flags. 055 */ 056 public CcBranchType doCreateCcBranchType(TypeCreateFlag[] flags, Feedback feedback) throws WvcmException; 057 }