001 /*
002 * file Configuration.java
003 *
004 * Licensed Materials - Property of IBM
005 * Restricted Materials of IBM
006 *
007 * (c) Copyright IBM Corporation 2004, 2008. All Rights Reserved.
008 * Note to U.S. Government Users Restricted Rights: Use, duplication or
009 * disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
010 */
011 package javax.wvcm;
012
013 import javax.wvcm.PropertyNameList.PropertyName;
014
015 /**
016 * A proxy for a configuration resource.
017 *
018 * A configuration resource is a controlled resource that is associated with a folder
019 * (called the "root folder") and that represents all controlled members
020 * of the root folder.
021 * <p>
022 * A configuration is associated with a
023 * baseline-controlled folder, and is used to create and access
024 * baselines of that folder.
025 * <p>
026 * When a folder is both version-controlled and baseline-controlled,
027 * a client can create a new version of the folder by
028 * checking out and checking in that folder,
029 * and it can create a new baseline of that folder by checking out
030 * and checking in the configuration of that folder.
031 *
032 * @since 1.0
033 */
034 public interface Configuration extends ControllableResource {
035
036 /**
037 * The root folder for this configuration.
038 * The {@link ControllableFolder#ROOT_FOLDER_OF} property of the root folder of
039 * a configuration MUST identify that configuration.
040 * The root {@link ControllableResource#CONFIGURATION} property of a member
041 * of the root folder of a configuration must all identify that configuration.
042 */
043 public static final PropertyName<ControllableFolder> ROOT_FOLDER =
044 new PropertyName<ControllableFolder>("root-folder"); //$NON-NLS-1$
045
046 /**
047 * Get the {@link #ROOT_FOLDER} property.
048 *
049 * @return the {@link #ROOT_FOLDER} property.
050 * @throws WvcmException if this Configuration was not created with
051 * {@link #ROOT_FOLDER} as a wanted property.
052 */
053 public ControllableFolder getRootFolder() throws WvcmException;
054
055 }