To access Rational® ClearQuest® through
the Rational CM API, you must import the common
interfaces and the ones that are specific to Rational ClearQuest.
Once you have added the installed CM API files to your class
path, you can begin programming with CM API. Like any Java™ programming, you need to import all interfaces
containing methods that you are using in your code. Because the ClearQuest interfaces are all in the same
package, you can use a wildcard to include them:
import com.ibm.rational.wvcm.stp.cq.*
You
need the classes from the Workspace Versioning and Configuration Management
(WVCM) package that implement the basic mechanisms of the API. The
remaining interfaces in the WVCM package deal specifically with source
configuration management resources and are not used when working exclusively
with Rational ClearQuest.
// WVCM classes to import for ClearQuest applications
import javax.wvcm.Feedback;
import javax.wvcm.PropertyNameList;
import javax.wvcm.ProviderFactory;
import javax.wvcm.ResourceList;
import javax.wvcm.PropertyRequestItem.NestedPropertyName;
import javax.wvcm.PropertyRequestItem.PropertyRequest;
import javax.wvcm.PropertyNameList.PropertyName;
import javax.wvcm.ProviderFactory.Callback;
import javax.wvcm.ProviderFactory.Callback.Authentication;
import javax.wvcm.WvcmException;
You also use many of the interfaces in the Software Team
Package (STP) that specify the extensions to WVCM used by the Rational CM
API.
// Common Rational CM API classes to import for ClearQuest
import com.ibm.rational.wvcm.stp.StpException;
import com.ibm.rational.wvcm.stp.StpProperty;
import com.ibm.rational.wvcm.stp.StpResource;
import com.ibm.rational.wvcm.stp.StpProperty.MetaPropertyName;
import com.ibm.rational.wvcm.stp.StpLocation;
Finally, because the sample applications use the Swing
GUI, you also must include a number of the Swing, AWT, and Java utility classes.
// other utility classes to import for this tutorial
import java.lang.reflect.InvocationTargetException;
import java.awt.BorderLayout;
import java.awt.Component;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import java.util.Hashtable;
import java.util.Iterator;
import java.util.Arrays;
import java.util.Comparator;
import javax.swing.JButton;
import javax.swing.JComponent;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.ListSelectionModel;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
import javax.swing.table.AbstractTableModel;
import javax.swing.table.TableModel;
import javax.swing.JComboBox;
import javax.swing.JFileChooser;
All of the required interfaces to complete this tutorial are
now included in your code.