001 /*
002 * file CcLabelType.java
003 *
004 * Licensed Materials - Property of IBM
005 * Restricted Materials of IBM
006 *
007 * com.ibm.rational.wvcm.stp.cc.CcLabelType
008 *
009 * © Copyright IBM Corporation 2004, 2008. 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
014 package com.ibm.rational.wvcm.stp.cc;
015
016 import javax.wvcm.Feedback;
017 import javax.wvcm.WvcmException;
018
019 import com.ibm.rational.wvcm.stp.cc.CcTypeBase.TypeCreateFlag;
020
021 /**
022 * <p>A proxy for a ClearCase label type.
023 * </p>
024 * <p>A label is a user-defined name that can be attached to a set of
025 * related ClearCase element versions. In base (non-UCM) ClearCase projects,
026 * labels could be used to capture the set of versions in a particular
027 * development checkpoint, a product release, etc.
028 * </p>
029 * <p>For more information about labels and label types, see the ClearCase
030 * "Guide to Managing Software Projects" manual, and the cleartool man pages "mklbtype",
031 * "mklabel", and "config_spec".
032 * </p>
033 */
034 public interface CcLabelType extends CcTypeBase
035 {
036 /**
037 * <p>Create a new label type at the location identified by this proxy. The
038 * location should be an object name selector specifying the label type's name
039 * and the repository (VOB) in which to create it.
040 * </p>
041 * <p>Set the {@link CcTypeBase#SCOPE} property to specify the new type's global scope.
042 * If no scope is set, a scope of NONE (ordinary scope) is used.
043 * </p>
044 * <p>Set the {@link CcTypeBase#INSTANCE_CONSTRAINT} property to determine where the new type
045 * may be applied. Valid values for label types are BRANCH and ELEMENT. If no constraint
046 * is set the default is ELEMENT.
047 * </p>
048 * <p>Set the {@link CcTypeBase#HAS_SHARED_MASTERSHIP} property to <b>true</b> to allow
049 * instances of this type to be created in any VOB replica. If unspecified, the default
050 * mastership is unshared.
051 * </p>
052 * @param flags Resource-specific creation flags.
053 */
054 public CcLabelType doCreateCcLabelType(TypeCreateFlag[] flags, Feedback feedback) throws WvcmException;
055 }