| package com.jetbrains.python.debugger.pydev; |
| |
| import com.jetbrains.python.debugger.PyDebugValue; |
| import com.jetbrains.python.debugger.PyDebuggerException; |
| |
| |
| public class ConsoleExecCommand extends AbstractFrameCommand<String> { |
| private final String myExpression; |
| |
| public ConsoleExecCommand(final RemoteDebugger debugger, final String threadId, final String frameId, final String expression) { |
| super(debugger, CONSOLE_EXEC, threadId, frameId); |
| myExpression = expression; |
| } |
| |
| @Override |
| protected void buildPayload(Payload payload) { |
| super.buildPayload(payload); |
| payload.add("FRAME").add(myExpression); |
| } |
| |
| @Override |
| public boolean isResponseExpected() { |
| return true; |
| } |
| |
| @Override |
| protected ResponseProcessor<String> createResponseProcessor() { |
| return new ResponseProcessor<String>() { |
| @Override |
| protected String parseResponse(ProtocolFrame response) throws PyDebuggerException { |
| final PyDebugValue value = ProtocolParser.parseValue(response.getPayload(), getDebugger().getDebugProcess()); |
| return value.getValue(); |
| } |
| }; |
| } |
| } |