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 String LINE_SEPARATOR
          Sequence used by operating system to separate lines in text files.
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()
           
 RpcPacketFieldRule getFieldRule()
           
 IFilterCallback getFilterCallback()
           
 CommandEnv.RpcHandler getHandler(String handlerName)
           
 CommandEnv.RpcHandler[] getHandlers()
           
 IProgressCallback getProgressCallback()
           
 ProtocolCommand getProtocolSpecs()
           
 List<Map<String,Object>> getResultMaps()
           
 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 isDontWriteTicket()
           
 boolean isNonCheckedSyncs()
           
 boolean isStreamCmd()
           
 boolean isSyncInPlace()
           
 boolean isUserCanceled()
           
 void newHandler()
           
 void setCmdCallBackKey(int cmdCallBackKey)
           
 void setCmdSpec(RpcCmdSpec cmdSpec)
           
 void setDontWriteTicket(boolean dontWriteTicket)
           
 void setFieldRule(RpcPacketFieldRule fieldRule)
           
 void setFilterCallback(IFilterCallback filterCallback)
           
 void setHandlers(CommandEnv.RpcHandler[] handlers)
           
 void setNonCheckedSyncs(boolean nonCheckedSyncs)
           
 void setProgressCallback(IProgressCallback progressCallback)
           
 void setProtocolSpecs(ProtocolCommand protocolSpecs)
           
 void setResultMaps(List<Map<String,Object>> resultMaps)
           
 void setRpcConnection(RpcConnection rpcConnection)
           
 void setServerProtocolSpecsMap(Map<String,Object> serverProtocolSpecsMap)
           
 void setStateMap(Map<String,Object> stateMap)
           
 void setStreamCmd(boolean streamCmd)
           
 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

LINE_SEPARATOR

public static final String LINE_SEPARATOR
Sequence used by operating system to separate lines in text files. Default to "\n" if it is not available.

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)

getResultMaps

public List<Map<String,Object>> getResultMaps()

setResultMaps

public void setResultMaps(List<Map<String,Object>> resultMaps)

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)

isDontWriteTicket

public boolean isDontWriteTicket()

setDontWriteTicket

public void setDontWriteTicket(boolean dontWriteTicket)

isStreamCmd

public boolean isStreamCmd()

setStreamCmd

public void setStreamCmd(boolean streamCmd)

getFieldRule

public RpcPacketFieldRule getFieldRule()

setFieldRule

public void setFieldRule(RpcPacketFieldRule fieldRule)

getFilterCallback

public IFilterCallback getFilterCallback()

setFilterCallback

public void setFilterCallback(IFilterCallback filterCallback)


Copyright © 2015 Perforce Software. All Rights Reserved.