Fix: Send the correct Java agent return code when disabling events
[deliverable/lttng-ust.git] / 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.026433 seconds and 5 git commands to generate.