<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <!--NewPage--> <HTML> <HEAD> <!-- Generated by javadoc (build 1.6.0_06) on Tue Nov 30 14:45:47 PST 2010 --> <TITLE> Overview (P4Ant) </TITLE> <META NAME="date" CONTENT="2010-11-30"> <LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style"> <SCRIPT type="text/javascript"> function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { parent.document.title="Overview (P4Ant)"; } } </SCRIPT> <NOSCRIPT> </NOSCRIPT> </HEAD> <BODY BGCOLOR="white" onload="windowTitle();"> <HR> <!-- ========= START OF TOP NAVBAR ======= --> <A NAME="navbar_top"><!-- --></A> <A HREF="#skip-navbar_top" title="Skip navigation links"></A> <TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY=""> <TR> <TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A NAME="navbar_top_firstrow"><!-- --></A> <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY=""> <TR ALIGN="center" VALIGN="top"> <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Overview</B></FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD> </TR> </TABLE> </TD> <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM> </EM> </TD> </TR> <TR> <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> PREV NEXT</FONT></TD> <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="index.html?overview-summary.html" target="_top"><B>FRAMES</B></A> <A HREF="overview-summary.html" target="_top"><B>NO FRAMES</B></A> <SCRIPT type="text/javascript"> <!-- if(window==top) { document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>'); } //--> </SCRIPT> <NOSCRIPT> <A HREF="allclasses-noframe.html"><B>All Classes</B></A> </NOSCRIPT> </FONT></TD> </TR> </TABLE> <A NAME="skip-navbar_top"></A> <!-- ========= END OF TOP NAVBAR ========= --> <HR> <CENTER> <H1> <h1>P4Ant Perforce Ant Library 2010.1.275835 </h1> </H1> </CENTER> The Perforce tasks implement Perforce commands using the Perforce Java API. <P> <B>See:</B> <BR> <A HREF="#overview_description"><B>Description</B></A> <P> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2"> <B>Packages</B></FONT></TH> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD WIDTH="20%"><B><A HREF="com/perforce/p4java/ant/package-summary.html">com.perforce.p4java.ant</A></B></TD> <TD> </TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD WIDTH="20%"><B><A HREF="com/perforce/p4java/ant/tasks/package-summary.html">com.perforce.p4java.ant.tasks</A></B></TD> <TD> The Perforce tasks implement Perforce commands using the Perforce Java API.</TD> </TR> </TABLE> <P> <A NAME="overview_description"><!-- --></A> <P> The Perforce tasks implement Perforce commands using the Perforce Java API. These tasks are intended for build automation with Ant. <b>Note:</b> These tasks are known to work with P4Java 2010.1, JDK 6 and Ant 1.7.0. <p>The Perforce tasks also served as examples on how to use the Perforce Java API. P4Java is a Java-native API for accessing Perforce SCM services from within Java applications, servlets, plugins, and other Java contexts. <p>The Perforce task base class takes care of retrieving the required settings for all Perforce tasks. For example, it retrieves the Perforce port, client, user and password from the environment, properties and attributes respectively. The base class also frames the task execution and logs the execution output. <p>The Perforce server specific base class uses the P4Java ServerFactory class to obtain a IServer interface onto a specific Perforce server at a known network address and port, and connects to this Perforce server through the IServer interface that is returned from the factory. It also logs in to the Perforce server through the IServer's login and associated methods using the specified Perforce user and password. To disconnect from a Perforce server, call the disconnect method on the IServer interface. <p>The Perforce client specific base class obtains a suitable IClient interface into a Perforce client workspace through the IServer interface's "get client" method. <p>The following are some of the capabilities of the Perforce tasks: <ul> <li>Get and processe lists of depot, client, and local files inthe Perforce client workspace, through the IServer and IClient interfaces. </li> <li>Add, edit, or delete files in the local Perforce client workspace using the IClient interface. These files are added to the default or a numbered Perforce changelist represented by one or more IChangeList interfaces, which are obtained through the IClient or IServer interfaces.</li> <li>Submit a specific changelist using the associated IChangeList interface. This submission can be linked with one or more Perforce jobs, represented by the IJob interface.</li> <li>Browse Perforce jobs and changelists, server side diffs of files, create labels, create tags, set counters, grep and revert files using the relevant IServer or IClient interfaces.</li> <li>Dump detail file info.</li> <li>Lock and unlock files.</li> <li>Shelve and unshelve files to and from the Perforce server.</li> </ul> <p>Please see the individual tasks for details. <P> <P> <DL> <DT><B>See Also:</B><DD><A HREF="com/perforce/p4java/ant/tasks/PerforceTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE>PerforceTask</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/ServerTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE>ServerTask</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/ClientTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE>ClientTask</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/SyncTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE>SyncTask</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/ChangeTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE>ChangeTask</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/EditTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE>EditTask</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/SubmitTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE>SubmitTask</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/HaveTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE>HaveTask</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/LabelTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE>LabelTask</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/LabelsyncTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE>LabelsyncTask</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/CounterTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE>CounterTask</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/ReopenTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE>ReopenTask</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/RevertTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE>RevertTask</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/AddTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE>AddTask</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/DeleteTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE>DeleteTask</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/IntegrateTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE>IntegrateTask</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/ResolveTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE>ResolveTask</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/FstatTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE>FstatTask</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/ChangesTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE>ChangesTask</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/Diff2Task.html" title="class in com.perforce.p4java.ant.tasks"><CODE>Diff2Task</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/FilesTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE>FilesTask</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/FixTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE>FixTask</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/GrepTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE>GrepTask</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/JobTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE>JobTask</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/JobsTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE>JobsTask</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/LockTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE>LockTask</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/UnlockTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE>UnlockTask</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/MoveTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE>MoveTask</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/ShelveTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE>ShelveTask</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/UnshelveTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE>UnshelveTask</CODE></A>, <A HREF="com/perforce/p4java/ant/tasks/TagTask.html" title="class in com.perforce.p4java.ant.tasks"><CODE><p>@author <a href="mailto:support@perforce.com">Perforce Support</a></CODE></A></DL> <HR> <!-- ======= START OF BOTTOM NAVBAR ====== --> <A NAME="navbar_bottom"><!-- --></A> <A HREF="#skip-navbar_bottom" title="Skip navigation links"></A> <TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY=""> <TR> <TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A NAME="navbar_bottom_firstrow"><!-- --></A> <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY=""> <TR ALIGN="center" VALIGN="top"> <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Overview</B></FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD> </TR> </TABLE> </TD> <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM> </EM> </TD> </TR> <TR> <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> PREV NEXT</FONT></TD> <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="index.html?overview-summary.html" target="_top"><B>FRAMES</B></A> <A HREF="overview-summary.html" target="_top"><B>NO FRAMES</B></A> <SCRIPT type="text/javascript"> <!-- if(window==top) { document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>'); } //--> </SCRIPT> <NOSCRIPT> <A HREF="allclasses-noframe.html"><B>All Classes</B></A> </NOSCRIPT> </FONT></TD> </TR> </TABLE> <A NAME="skip-navbar_bottom"></A> <!-- ======== END OF BOTTOM NAVBAR ======= --> <HR> <i>Copyright (c) 2010 Perforce Software. All rights reserved.</i> </BODY> </HTML>