Fix: Send the correct Java agent return code when disabling events
authorAlexandre Montplaisir <alexmonthy@efficios.com>
Thu, 6 Aug 2015 17:41:50 +0000 (13:41 -0400)
committerMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Thu, 6 Aug 2015 20:03:51 +0000 (16:03 -0400)
When receiving a "disable event" command from the sessiond for
an event that is not known, the Java agent should send the
"unknown logger name" return code, not the "invalid command" one.

Signed-off-by: Alexandre Montplaisir <alexmonthy@efficios.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
liblttng-ust-java-agent/java/lttng-ust-agent-common/org/lttng/ust/agent/client/SessiondDisableEventCommand.java

index 39d14b0db6e157c6c936c83f5744e51e84bacbbb..31d91e72e5a6d6e7e86e2bc5ae6f42d5fc6c625d 100644 (file)
@@ -47,6 +47,27 @@ class SessiondDisableEventCommand implements ISessiondCommand {
        @Override
        public ILttngAgentResponse execute(AbstractLttngAgent<?> agent) {
                boolean success = agent.eventDisabled(this.eventName);
-               return (success ? ILttngAgentResponse.SUCESS_RESPONSE : ILttngAgentResponse.FAILURE_RESPONSE);
+               return (success ? ILttngAgentResponse.SUCESS_RESPONSE : DISABLE_EVENT_FAILURE_RESPONSE);
        }
+
+       /**
+        * Response sent when the disable-event command asks to disable an
+        * unknown event.
+        */
+       private static final ILttngAgentResponse DISABLE_EVENT_FAILURE_RESPONSE = new ILttngAgentResponse() {
+
+               @Override
+               public ReturnCode getReturnCode() {
+                       return ReturnCode.CODE_UNK_LOGGER_NAME;
+               }
+
+               @Override
+               public byte[] getBytes() {
+                       byte data[] = new byte[INT_SIZE];
+                       ByteBuffer buf = ByteBuffer.wrap(data);
+                       buf.order(ByteOrder.BIG_ENDIAN);
+                       buf.putInt(getReturnCode().getCode());
+                       return data;
+               }
+       };
 }
This page took 0.027325 seconds and 5 git commands to generate.