py4j
Class Gateway

java.lang.Object
  extended by py4j.Gateway

public class Gateway
extends Object

A Gateway manages various states: entryPoint, references to objects returned to a Python program, etc.

This class is not intended to be directly accessed by users.

Author:
Barthelemy Dagenais

Constructor Summary
Gateway(Object entryPoint)
           
Gateway(Object entryPoint, CallbackClient cbClient)
           
 
Method Summary
 void closeConnection()
           Called when a connection is closed.
 void deleteObject(String objectId)
           
protected  AtomicInteger getArgCounter()
           
protected  Map<String,Object> getBindings()
           
 CallbackClient getCallbackClient()
           
 Object getEntryPoint()
           
protected  String getNextObjectId()
           
protected  AtomicInteger getObjCounter()
           
 Object getObject(String objectId)
           
protected  Object getObjectFromId(String targetObjectId)
           
 py4j.reflection.ReflectionEngine getReflectionEngine()
           
 ReturnObject getReturnObject(Object object)
           
 ReturnObject invoke(String fqn, List<Object> args)
           Invokes a constructor and returned the constructed object.
 ReturnObject invoke(String methodName, String targetObjectId, List<Object> args)
           Invokes a method.
protected  boolean isArray(Object object)
           
protected  boolean isList(Object object)
           
protected  boolean isMap(Object object)
           
protected  boolean isPrimitiveObject(Object object)
           
protected  boolean isSet(Object object)
           
 boolean isStarted()
           
protected  String putNewObject(Object object)
           
 Object putObject(String id, Object object)
           
 void setStarted(boolean isStarted)
           
 void shutdown()
          Releases all objects that were referenced by this Gateway.
 void startup()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Gateway

public Gateway(Object entryPoint)

Gateway

public Gateway(Object entryPoint,
               CallbackClient cbClient)
Method Detail

closeConnection

public void closeConnection()

Called when a connection is closed.


deleteObject

public void deleteObject(String objectId)

getArgCounter

protected AtomicInteger getArgCounter()

getBindings

protected Map<String,Object> getBindings()

getCallbackClient

public CallbackClient getCallbackClient()

getEntryPoint

public Object getEntryPoint()

getNextObjectId

protected String getNextObjectId()

getObjCounter

protected AtomicInteger getObjCounter()

getObject

public Object getObject(String objectId)
Parameters:
objectId -
Returns:
The object associated with the id or null if the object id is unknown.

getObjectFromId

protected Object getObjectFromId(String targetObjectId)

getReflectionEngine

public py4j.reflection.ReflectionEngine getReflectionEngine()

getReturnObject

public ReturnObject getReturnObject(Object object)

invoke

public ReturnObject invoke(String fqn,
                           List<Object> args)

Invokes a constructor and returned the constructed object.

Parameters:
fqn - The fully qualified name of the class.
args -
Returns:

invoke

public ReturnObject invoke(String methodName,
                           String targetObjectId,
                           List<Object> args)

Invokes a method.

Parameters:
methodName -
targetObjectId -
args -
Returns:

isArray

protected boolean isArray(Object object)

isList

protected boolean isList(Object object)

isMap

protected boolean isMap(Object object)

isPrimitiveObject

protected boolean isPrimitiveObject(Object object)

isSet

protected boolean isSet(Object object)

isStarted

public boolean isStarted()

putNewObject

protected String putNewObject(Object object)

putObject

public Object putObject(String id,
                        Object object)

setStarted

public void setStarted(boolean isStarted)

shutdown

public void shutdown()

Releases all objects that were referenced by this Gateway.


startup

public void startup()