Package py4j.commands
Class CallCommand
java.lang.Object
py4j.commands.AbstractCommand
py4j.commands.CallCommand
- All Implemented Interfaces:
Command
A CallCommand is responsible for parsing a call command and calling the method on the target object.
Currently, the call command assumes that a command is well-formed and that there is no communication problem (e.g., the source virtual machine disconnected in the middle of a command). This is a reasonable assumption because the two virtual machines are assumed to be on the same host.
TODO: Make the call command more robust to communication errors and ill-formed protocol.
- Author:
- Barthelemy Dagenais
-
Field Summary
FieldsFields inherited from class py4j.commands.AbstractCommand
commandName, connection, gateway
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
execute
(String commandName, BufferedReader reader, BufferedWriter writer) Methods inherited from class py4j.commands.AbstractCommand
getArguments, getCommandName, getStringArguments, init, invokeMethod
-
Field Details
-
CALL_COMMAND_NAME
- See Also:
-
-
Constructor Details
-
CallCommand
public CallCommand()
-
-
Method Details
-
execute
public void execute(String commandName, BufferedReader reader, BufferedWriter writer) throws Py4JException, IOException - Specified by:
execute
in interfaceCommand
- Specified by:
execute
in classAbstractCommand
- Parameters:
commandName
- The command name that was extracted of the command.reader
- The reader from which to read the command parts. Each command part are expected to be on a separate line and readable throughBufferedReader.readLine()
.writer
- The writer to which the return value should be written.- Throws:
Py4JException
- If an error occurs while executing the command. All exceptions except IOException caused by the reader and the writer should be wrapper in aPy4JException
instance.IOException
- If an error occurs while using the reader or the writer.
-