//////////////////////////////////////////////////////////////////////////// // Rev: 2010.1 (P4JsApi 1.0 Example) // // NOTE: This is an example only, and should be modified to work in // a production environment! No warranty is expressed or implied. // Scripts should be tested thoroughly on a test server before // using in a production environment. // //////////////////////////////////////////////////////////////////////////// // Copyright (c) 2010, Perforce Software, Inc. All rights reserved. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // 1. Redistributions of source code must retain the above copyright // notice, this list of conditions and the following disclaimer. // // 2. Redistributions in binary form must reproduce the above copyright // notice, this list of conditions and the following disclaimer in the // documentation and/or other materials provided with the distribution. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL PERFORCE SOFTWARE, INC. BE LIABLE FOR ANY // DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES // (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; // LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND // ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF // THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. //////////////////////////////////////////////////////////////////////////// $(document).ready(function() { var try { function buildString(object) { var text = ""; if( typeof object === "object" ) { for( var key in object ) { var value = object[key]; if( typeof value === "string" ) { text += "\t"+key+":"+value+",\n"; } else if( typeof value === "object" ) { var nested = buildString(value); text += "\t"+key+": {\n"; text+= nested+ "},"; } } } return text; } function dumpItems(items, id) { var text = "\n"; var numItems = items.size; for( var i = 0; i < numItems; i++) { var item = items.data[i]; for (j in item) { text += j + " : " + item[j] + "\n"; } text += "----------------------------\n"; } $(id).text(text); } var text = P4JsApi.p4("print callback.js"); $("#textsync").text("\n"+text.text+"\n"); var tagged = P4JsApi.p4("users -m 1"); dumpItems(tagged, "#taggedsync"); var fstat = P4JsApi.p4("fstat //depot/p4jsapi/centralsettings.js"); dumpItems(fstat, "#fstatsync"); /*var message = P4JsApi.p4("sync //depot/bad/path"); $("#messagesync").text("\n"+message.error+"\n");*/ var error = P4JsApi.p4("badcommand"); $("#errorsync").text("\n"+error.error+"\n"); P4JsApi.p4("print //depot/p4jsapi/html/xmlpusher.htm", function(content) { $("#textasync").text("\n"+content.text+"\n"); }); P4JsApi.p4("users -m 3", function(content) { dumpItems(content, "#taggedasync"); }); /*P4JsApi.p4("sync //depot/bad/path", function(content) { $("#messageasync").text("\n"+content.error+"\n"); });*/ P4JsApi.p4("fstat //depot/p4jsapi/centralsettings.js", function(content) { dumpItems(content, "#fstatasync"); }); P4JsApi.p4("badcommand", function(content) { $("#errorasync").text("\n"+content.error+"\n"); }); } catch(e) { } });
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#4 | 7663 | dscheirer | Rollback //public/perforce/p4jsapi to changelist 7643 | ||
#3 | 7660 | jhalbig |
As per meeting to resolve issue with sync calls made from within async calls hanging P4V (job039138) pulling example code from Public Depot until it can be re-worked and confirmed to function correctly with pending P4JsApi changes. |
||
#2 | 7643 | jhalbig |
Cleaned up any remaining discrepancies in the code. Removed all internal references and debugging code. Cleaned up formatting, added more commenting for submit dialog code. Ready for 2010.1 Beta. |
||
#1 | 7638 | jhalbig | Initial Addition of P4JsApi samples for 2010.1 Beta |