001/*
002 * file CcRegistryRegion.java
003 * 
004 * Licensed Materials - Property of IBM
005 * Restricted Materials of IBM 
006 *
007 * com.ibm.rational.wvcm.stp.cc.CcRegistryRegion
008 *
009 * (C) Copyright IBM Corporation 2008, 2010.  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 static com.ibm.rational.wvcm.stpex.StpExBase.PROPERTY_NAMESPACE;
017
018import javax.wvcm.ResourceList;
019import javax.wvcm.WvcmException;
020import javax.wvcm.PropertyNameList.PropertyName;
021
022/**
023 * <p>
024 * A proxy for a ClearCase registry region. 
025 * </p>
026 * <p>
027 * A registry region is a tag namespace shared by a subset of registry clients. 
028 * The Rational ClearCase registry supports only a single region. With the Rational ClearCase registry, 
029 * you can create multiple regions. VOB and view tags in a Rational ClearCase registry include the 
030 * name of the registry region in which the tag is visible. Each Rational ClearCase client is a 
031 * member of a single registry region and can access only those VOBs and views whose tags are 
032 * visible in that region.
033 * </p>
034 * <p>
035 * For more information about registry regions, see the ClearCase "Administrator's Guide"
036 * manual, and the cleartool man pages "lsregion" and "mkregion".
037 * </p>
038 */
039
040public interface CcRegistryRegion extends CcResource {
041
042    /** 
043     * List of view storage locations in this registry region 
044     * as CcStorageLocation instances 
045     */
046    PropertyName<ResourceList<CcStorageLocation>> VIEW_STORAGE_LOCATION_LIST =
047        new PropertyName<ResourceList<CcStorageLocation>>(PROPERTY_NAMESPACE,
048                                               "view-stgloc-list");
049    
050    /**
051     * Returns the value of this proxy's {@link #VIEW_STORAGE_LOCATION_LIST} property.
052     * 
053     * @return list of view storage locations registered in the region
054     * @throws WvcmException
055     *             if this proxy doesn't define a value for this property.
056     */
057    ResourceList<CcStorageLocation> getViewStorageLocationList() throws WvcmException;
058
059    /** 
060     * List of VOB storage locations in this registry region 
061     * as CcStorageLocation instances 
062     */
063    PropertyName<ResourceList<CcStorageLocation>> VOB_STORAGE_LOCATION_LIST =
064        new PropertyName<ResourceList<CcStorageLocation>>(PROPERTY_NAMESPACE,
065                                               "vob-stgloc-list");
066    
067    /**
068     * Returns the value of this proxy's {@link #VOB_STORAGE_LOCATION_LIST} property.
069     * 
070     * @return list of VOB storage locations registered in the region
071     * @throws WvcmException
072     *             if this proxy doesn't define a value for this property.
073     */
074    ResourceList<CcStorageLocation> getVobStorageLocationList() throws WvcmException;
075
076    /** List of view tags in this registry region as CcViewTag instances */
077    PropertyName<ResourceList<CcViewTag>> VIEW_TAG_LIST =
078        new PropertyName<ResourceList<CcViewTag>>(PROPERTY_NAMESPACE,
079                                                  "view-tag-list");
080
081    /**
082     * Returns the value of this proxy's {@link #VIEW_TAG_LIST} property.
083     * 
084     * @return list of view tags registered in the region
085     * @throws WvcmException
086     *             if this proxy doesn't define a value for this property.
087     */
088    ResourceList<CcViewTag> getViewTagList() throws WvcmException;
089    
090    /** List of VOB tags in this registry region as CcVobTag instances */
091    
092    PropertyName<ResourceList<CcVobTag>> VOB_TAG_LIST =
093        new PropertyName<ResourceList<CcVobTag>>(PROPERTY_NAMESPACE,
094                                               "vob-tag-list");
095    
096    /**
097     * Returns the value of this proxy's {@link #VOB_TAG_LIST} property.
098     * 
099     * @return list of VOB tags registered in the region
100     * @throws WvcmException
101     *             if this proxy doesn't define a value for this property.
102     */
103    ResourceList<CcVobTag> getVobTagList() throws WvcmException;
104}