com.perforce.p4java.impl.mapbased.rpc
Class CommandEnv

java.lang.Object
  extended by com.perforce.p4java.impl.mapbased.rpc.CommandEnv

public class CommandEnv
extends Object

Used to package up the Perforce function environment for a single Perforce command across multiple RPC function calls.

In particular, we need to keep things like file handles, arbitrary RPC function arguments, etc., around for use during complex long-running commands that span many dispatch calls in loop or duplex mode, etc., in response to single user commands like 'sync'.

Note that this is in distinction to a) the command's external environment (in the ExternalEnv class), and b) the command's individual function environments,


Nested Class Summary
 class CommandEnv.RpcHandler
          P4Java's version of the notorious handler class in the C++ API.
 
Field Summary
static int MAX_HANDLERS
          Max number of live handlers per command cycle.
 
Constructor Summary
CommandEnv(RpcCmdSpec cmdSpec, RpcConnection rpcConnection, ProtocolCommand protocolSpecs, Map<String,Object> serverProtocolSpecsMap, IProgressCallback progressCallback, int cmdCallBackKey, boolean syncInPlace, boolean nonCheckedSyncs)
           
 
Method Summary
 boolean addHandler(CommandEnv.RpcHandler handler)
           
 int getCmdCallBackKey()
           
 RpcCmdSpec getCmdSpec()
           
 CommandEnv.RpcHandler getHandler(String handlerName)
           
 CommandEnv.RpcHandler[] getHandlers()
           
 IProgressCallback getProgressCallback()
           
 ProtocolCommand getProtocolSpecs()
           
 Vector<Map<String,Object>> getResultsMapVec()
           
 RpcConnection getRpcConnection()
           
 Map<String,Object> getServerProtocolSpecsMap()
           
 Map<String,Object> getStateMap()
           
 IStreamingCallback getStreamingCallback()
           
 int getStreamingCallbackKey()
           
 void handleResult(Map<String,Object> resultMap)
          Handle a result by either adding it to the resultsMapVec for later processing or passing it up to the streaming results callback handler.
 boolean isNonCheckedSyncs()
           
 boolean isSyncInPlace()
           
 boolean isUserCanceled()
           
 void newHandler()
           
 void setCmdCallBackKey(int cmdCallBackKey)
           
 void setCmdSpec(RpcCmdSpec cmdSpec)
           
 void setHandlers(CommandEnv.RpcHandler[] handlers)
           
 void setNonCheckedSyncs(boolean nonCheckedSyncs)
           
 void setProgressCallback(IProgressCallback progressCallback)
           
 void setProtocolSpecs(ProtocolCommand protocolSpecs)
           
 void setResultsMapVec(Vector<Map<String,Object>> resultsMapVec)
           
 void setRpcConnection(RpcConnection rpcConnection)
           
 void setServerProtocolSpecsMap(Map<String,Object> serverProtocolSpecsMap)
           
 void setStateMap(Map<String,Object> stateMap)
           
 void setStreamingCallback(IStreamingCallback streamingCallback)
           
 void setStreamingCallbackKey(int streamingCallbackKey)
           
 void setSyncInPlace(boolean syncInPlace)
           
 void setUserCanceled(boolean userCanceled)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MAX_HANDLERS

public static final int MAX_HANDLERS
Max number of live handlers per command cycle. Value copied straight from the C++ API.

See Also:
Constant Field Values
Constructor Detail

CommandEnv

public CommandEnv(RpcCmdSpec cmdSpec,
                  RpcConnection rpcConnection,
                  ProtocolCommand protocolSpecs,
                  Map<String,Object> serverProtocolSpecsMap,
                  IProgressCallback progressCallback,
                  int cmdCallBackKey,
                  boolean syncInPlace,
                  boolean nonCheckedSyncs)
Method Detail

addHandler

public boolean addHandler(CommandEnv.RpcHandler handler)

handleResult

public void handleResult(Map<String,Object> resultMap)
Handle a result by either adding it to the resultsMapVec for later processing or passing it up to the streaming results callback handler.

Parameters:
resultMap -

getHandler

public CommandEnv.RpcHandler getHandler(String handlerName)

getCmdSpec

public RpcCmdSpec getCmdSpec()

setCmdSpec

public void setCmdSpec(RpcCmdSpec cmdSpec)

getResultsMapVec

public Vector<Map<String,Object>> getResultsMapVec()

setResultsMapVec

public void setResultsMapVec(Vector<Map<String,Object>> resultsMapVec)

getStateMap

public Map<String,Object> getStateMap()

setStateMap

public void setStateMap(Map<String,Object> stateMap)

getProtocolSpecs

public ProtocolCommand getProtocolSpecs()

setProtocolSpecs

public void setProtocolSpecs(ProtocolCommand protocolSpecs)

getRpcConnection

public RpcConnection getRpcConnection()

setRpcConnection

public void setRpcConnection(RpcConnection rpcConnection)

getHandlers

public CommandEnv.RpcHandler[] getHandlers()

setHandlers

public void setHandlers(CommandEnv.RpcHandler[] handlers)

newHandler

public void newHandler()

getServerProtocolSpecsMap

public Map<String,Object> getServerProtocolSpecsMap()

setServerProtocolSpecsMap

public void setServerProtocolSpecsMap(Map<String,Object> serverProtocolSpecsMap)

getProgressCallback

public IProgressCallback getProgressCallback()

setProgressCallback

public void setProgressCallback(IProgressCallback progressCallback)

getCmdCallBackKey

public int getCmdCallBackKey()

setCmdCallBackKey

public void setCmdCallBackKey(int cmdCallBackKey)

isUserCanceled

public boolean isUserCanceled()

setUserCanceled

public void setUserCanceled(boolean userCanceled)

isSyncInPlace

public boolean isSyncInPlace()

setSyncInPlace

public void setSyncInPlace(boolean syncInPlace)

getStreamingCallback

public IStreamingCallback getStreamingCallback()

setStreamingCallback

public void setStreamingCallback(IStreamingCallback streamingCallback)

getStreamingCallbackKey

public int getStreamingCallbackKey()

setStreamingCallbackKey

public void setStreamingCallbackKey(int streamingCallbackKey)

isNonCheckedSyncs

public boolean isNonCheckedSyncs()

setNonCheckedSyncs

public void setNonCheckedSyncs(boolean nonCheckedSyncs)


Copyright © 2011 Perforce Software. All Rights Reserved.