<html>
<head>
<title>P4/Ruby - P4Revision</title>
<link rel="stylesheet" type="text/css" href="docstyle.css">
</head>
<body>
<p align="right">
<a href="index.html">Contents</a>
</p>
<div class="classhdr">
<table border=0>
<tr>
<td>
<span class="classtag">Class</span>
<span class="classname">P4Revision</span>
<span class="classparent">< Object</span>
</td>
<td id="righttext">
<span class="requiretag">require</span>
<span class="modulename">"P4"</span>
</td>
</tr>
</table>
</div>
<div class="classhdr">
</div>
<h3>Description</h3>
Utility class providing easy access to the revisions of a file in a
Perforce depot. P4Revision objects can store basic information about
revisions and a list of the integrations for that revision
<div class="classmethods">
<h3>Class Methods</h3>
<div class="index">
<table border="0">
<tr>
<td>
<a href="#new">new</a>
</td>
</tr>
</table>
</div>
<a name="new"></a>
<div class="method">
<div class="methodheader">
<table width="100%">
<tr>
<td class="meth_name">new</td>
<td> </td>
<td class="proto">
P4Revision.new( <i>aString</i> ) -> <i>aP4Revision</i>
</td>
</tr>
</table>
</div>
Constructs a new P4Revision object for the named depot file.
</div>
</div>
<div class="instancemethods">
<h3>Instance Methods</h3>
<div class="index">
<table border="0">
<tr>
<td>
<a href="#action">action</a>
<a href="#change">change</a>
<a href="#client">client</a>
<a href="#depot_file">depot_file</a>
</td>
<td>
<a href="#desc">desc</a>
<a href="#each_integration">each_integration</a>
<a href="#integration">integration</a>
<a href="#integrations">integrations</a>
</td>
<td>
<a href="#revno">revno</a>
<a href="#time">time</a>
<a href="#type">type</a>
<a href="#user">user</a>
</td>
</tr>
</table>
</div>
<a name="action"></a>
<div class="method">
<div class="methodheader">
<table width="100%">
<tr>
<td class="meth_name">action</td>
<td> </td>
<td class="proto">
<i>rev</i>.action -> <i>aString</i>
</td>
</tr>
</table>
</div>
Returns the name of the action which gave rise to this revision of the
file.
</div>
<a name="change"></a>
<div class="method">
<div class="methodheader">
<table width="100%">
<tr>
<td class="meth_name">change</td>
<td> </td>
<td class="proto">
<i>rev</i>.change -> <i>aNumber</i>
</td>
</tr>
</table>
</div>
Returns the change number that gave rise to this revision of the file.
</div>
<a name="client"></a>
<div class="method">
<div class="methodheader">
<table width="100%">
<tr>
<td class="meth_name">client</td>
<td> </td>
<td class="proto">
<i>rev</i>.client -> <i>aString</i>
</td>
</tr>
</table>
</div>
Returns the name of the client from which this revision was submitted.
</div>
<a name="depot_file"></a>
<div class="method">
<div class="methodheader">
<table width="100%">
<tr>
<td class="meth_name">depot_file</td>
<td> </td>
<td class="proto">
<i>rev</i>.depot_file -> <i>aString</i>
</td>
</tr>
</table>
</div>
Returns the name of the depot file this object refers to.
</div>
<a name="desc"></a>
<div class="method">
<div class="methodheader">
<table width="100%">
<tr>
<td class="meth_name">desc</td>
<td> </td>
<td class="proto">
<i>rev</i>.desc -> <i>aString</i>
</td>
</td>
</tr>
</table>
</div>
Returns the description of the change which created this revision. Note
</div>
<a name="each_integration"></a>
<div class="method">
<div class="methodheader">
<table width="100%">
<tr>
<td class="meth_name">each_integration</td>
<td> </td>
<td class="proto">
<i>rev</i>.each_integration { |<i>integ</i>| block } -> <i>integArray</i>
</td>
</tr>
</table>
</div>
Iterates over each the integration records for this revision of the depot
file.
</div>
<a name="integration"></a>
<div class="method">
<div class="methodheader">
<table width="100%">
<tr>
<td class="meth_name">integration</td>
<td> </td>
<td class="proto">
<i>rev</i>.integration( how, file, srev, erev ) -> <i>aP4Integration</i>
</td>
</tr>
</table>
</div>
Adds a new integration record to the revision returning the integration
record.
</div>
<a name="integrations"></a>
<div class="method">
<div class="methodheader">
<table width="100%">
<tr>
<td class="meth_name">integrations</td>
<td> </td>
<td class="proto">
<i>rev</i>.integrations -> <i>integArray</i>
</td>
</tr>
</table>
</div>
Returns the list of integrations for this revision
</div>
<a name="revno"></a>
<div class="method">
<div class="methodheader">
<table width="100%">
<tr>
<td class="meth_name">revno</td>
<td> </td>
<td class="proto">
<i>rev</i>.revno -> <i>aNumber</i>
</td>
</tr>
</table>
</div>
Returns the number of this revision of the file
</div>
<a name="time"></a>
<div class="method">
<div class="methodheader">
<table width="100%">
<tr>
<td class="meth_name">time</td>
<td> </td>
<td class="proto">
<i>rev</i>.time -> <i>aTime</i>
</td>
</tr>
</table>
</div>
Returns the date/time that this revision was created.
</div>
<a name="type"></a>
<div class="method">
<div class="methodheader">
<table width="100%">
<tr>
<td class="meth_name">type</td>
<td> </td>
<td class="proto">
<i>rev</i>.type -> <i>aString</i>
</td>
</tr>
</table>
</div>
Returns this revisions Perforce type
</div>
<a name="user"></a>
<div class="method">
<div class="methodheader">
<table width="100%">
<tr>
<td class="meth_name">user</td>
<td> </td>
<td class="proto">
<i>rev</i>.user -> <i>aString</i>
</td>
</tr>
</table>
</div>
Returns the name of the user who created this revision.
</div>
</div>
<div class="seealso">
<h3>See Also</h3>
<a href="P4.html">P4</a>
<a href="P4Exception.html">P4Exception</a>
<a href="P4DepotFile.html">P4DepotFile</a>
<a href="P4Integration.html">P4Integration</a>
<a href="P4Spec.html">P4::Spec</a>
</div>
</body>
</html>
| # | Change | User | Description | Committed | |
|---|---|---|---|---|---|
| #6 | 4680 | Tony Smith |
Make P4Ruby return new P4::Spec objects instead of plain old hashes when parse_forms mode is in use. A P4::Spec object is derived from Hash so should be backwards compatible with previous code. P4::Spec provides limited fieldname validation on forms and accessor methods for quick and easy access to the fields in the form. The accessor methods are all prefixed with '_' to avoid colliding with methods from the Hash parent class. This is a little ugly, but deriving from hash is a big win, so it's worth it. This change also fixes a minor bug found along the way. Spec parsing and formatting wouldn't work with labels, branches, depots and groups unless you'd previously run a P4::fetch_label( <label> ), P4::fetch_branch( <branch> ) etc. etc. This is because the spec parsing code internally runs one of these commands in order to grab the specdef from the server but it wasn't providing a spec name. i.e. it was using 'p4 client -o' and assuming that this would work for other types of spec too. It does, but not for all spec types. So, now the spec parsing code will use a bogus name for the spec types that require it. |
||
| #5 | 4653 | Tony Smith |
More documentation tweaks. Just makes the pages look more like the reference pages in the 'Pickaxe book' |
||
| #4 | 4652 | Tony Smith |
Doc update for P4Ruby. Rework the html and the CSS to make the docs a little easier on the eye and easier to use too. |
||
| #3 | 4255 | Tony Smith |
P4Ruby doc reformatting. Now uses CSS instead of 1x1 image and too many tables. Could no doubt be improved upon, but it's a start. |
||
| #2 | 2426 | Tony Smith | Doc beautifying for P4Ruby. | ||
| #1 | 2392 | Tony Smith | Add missing documentation file |