package com.perforce.client.api; public class ClientApi { int instance = 0; private static native int nNewInstance(); private static native void nDeleteInstance( int instance); public ClientApi() { this.instance = nNewInstance(); } protected void finalize() { nDeleteInstance( this.instance ); this.instance = 0; } // public void setMerger( ClientMerger *m ); public void setProtocol( String p, String v ) { nSetProtocol( this.instance, p, v ); } public String getProtocol( final String v ) { return nGetProtocol( this.instance, v ); } public void setVar( String name, final String value ) { nSetVar( this.instance, name, value ); } public void setVarV( String arg ) { nSetVarV( this.instance, arg ); } public void setArgv( String[] args ) { // System.err.println( "Args: " ); // for ( int i = 0; i < args.length; i++ ) // { // System.err.println( " arg[" + i + "] |" + args[i] + "|" ); // } nSetArgv( this.instance, args ); } public String getVar( final String name ) { return nGetVar( this.instance, name ); } public void init() throws P4ClientException { P4Error err = new P4Error(); nInit( this.instance, err.instance ); err.checkException(); } public void run( String func, ClientUser ui ) { // System.err.println( "Running " + func ); nRun( this.instance, func, ui.instance ); } public void end() throws P4ClientException { P4Error err = new P4Error(); nEnd( this.instance, err.instance ); err.checkException(); } public int nDropped() { return nDropped( this.instance ); } public void runTag( String func, ClientUser ui ) { nRunTag( this.instance, func, ui.instance ); } public void waitTag() { nWaitTag( this.instance ); } public void waitTag( ClientUser ui ) { nWaitTag( this.instance, ui.instance ); } private static native void nSetCwd( int instance, String c ); public void setCwd( String c ) { nSetCwd( this.instance, c ); } public void setClient( String c ) { nSetClient( this.instance, c ); } public void setHost( String c ) { nSetHost( this.instance, c ); } public void setPassword( String c ) { nSetPassword( this.instance, c ); } public void setPort( String c ) { nSetPort( this.instance, c ); } private static native void nSetUser( int instance, String c ); public void setUser( String c ) { nSetUser( this.instance, c ); } public void defineClient( String c ) throws P4ClientException { P4Error err = new P4Error(); nDefineClient( this.instance, c, err.instance ); err.checkException(); } public void defineHost( String c ) throws P4ClientException { P4Error err = new P4Error(); nDefineHost( this.instance, c, err.instance ); err.checkException(); } public void definePassword( String c ) throws P4ClientException { P4Error err = new P4Error(); nDefinePassword( this.instance, c, err.instance ); err.checkException(); } public void definePort( String c ) throws P4ClientException { P4Error err = new P4Error(); nDefinePort( this.instance, c, err.instance ); err.checkException(); } public void defineUser( String c ) throws P4ClientException { P4Error err = new P4Error(); nDefineUser( this.instance, c, err.instance ); err.checkException(); } public String getCwd() { return nGetCwd( this.instance ); } public String getClient() { return nGetClient( this.instance ); } public String getHost() { return nGetHost( this.instance ); } public String getOs() { return nGetOs( this.instance ); } public String getPassword() { return nGetPassword( this.instance ); } public String getPort() { return nGetPort( this.instance ); } public String getUser() { return nGetUser( this.instance ); } private static native void nSetProtocol( int instance, String p, String v ); private static native String nGetProtocol( int instance, final String v ); private static native void nSetVar( int instance, String name, final String value ); private static native void nSetVarV( int instance, String arg ); private static native void nSetArgv( int instance, String[] args ); private static native String nGetVar( int instance, final String name ); private static native void nInit( int instance, int errorInstance ); private static native void nRun( int instance, String func, int clientUserInstance ); private static native int nEnd( int instance, int errInstance ); private static native int nDropped( int instance ); private static native void nRunTag( int instance, String func, int clientUserInstance ); private static native void nWaitTag( int instance ); private static native void nWaitTag( int instance, int clientUserInstance ); private static native void nSetClient( int instance, String c ); private static native void nSetHost( int instance, String c ); private static native void nSetPassword( int instance, String c ); private static native void nSetPort( int instance, String c ); private static native void nDefineClient( int instance, String c, int errorInstance ); private static native void nDefineHost( int instance, String c, int errorInstance ); private static native void nDefinePassword( int instance, String c, int errorInstance ); private static native void nDefinePort( int instance, String c, int errorInstance ); private static native void nDefineUser( int instance, String c, int errorInstance ); private static native String nGetCwd( int instance ); private static native String nGetClient( int instance ); private static native String nGetHost( int instance ); private static native String nGetOs( int instance ); private static native String nGetPassword( int instance ); private static native String nGetPort( int instance ); private static native String nGetUser( int instance ); }
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#1 | 783 | paul_hammant |
First cut of P4 Soap API. Uses Glue, can't work yet as DLLs missing. |
||
//guest/michael_bishop/P4APIForJava/java/com/perforce/client/api/ClientApi.java | |||||
#1 | 430 | Michael Bishop |
Initial checkin. Seems to work. Not very much testing. Not very much documentation. Some more commenting needs to take place. But, it's there to experiment with. |