Receive the event filter string in the Java agent
[lttng-ust.git] / liblttng-ust-java-agent / java / lttng-ust-agent-common / org / lttng / ust / agent / client / LttngTcpSessiondClient.java
index 3e9e24dd65463d2100d7d8095595919a24cddbcb..6cf971384260524869026351e868cfd5a4b608c2 100644 (file)
@@ -31,8 +31,6 @@ import java.nio.ByteOrder;
 import java.util.concurrent.CountDownLatch;
 import java.util.concurrent.TimeUnit;
 
-import org.lttng.ust.agent.AbstractLttngAgent;
-
 /**
  * Client for agents to connect to a local session daemon, using a TCP socket.
  *
@@ -44,8 +42,8 @@ public class LttngTcpSessiondClient implements Runnable {
        private static final String ROOT_PORT_FILE = "/var/run/lttng/agent.port";
        private static final String USER_PORT_FILE = "/.lttng/agent.port";
 
-       private static int protocolMajorVersion = 1;
-       private static int protocolMinorVersion = 0;
+       private static final int PROTOCOL_MAJOR_VERSION = 2;
+       private static final int PROTOCOL_MINOR_VERSION = 0;
 
        /** Command header from the session deamon. */
        private final CountDownLatch registrationLatch = new CountDownLatch(1);
@@ -56,21 +54,26 @@ public class LttngTcpSessiondClient implements Runnable {
        private DataInputStream inFromSessiond;
        private DataOutputStream outToSessiond;
 
-       private final AbstractLttngAgent<?> logAgent;
+       private final ILttngTcpClientListener logAgent;
+       private final int domainValue;
        private final boolean isRoot;
 
-
        /**
         * Constructor
         *
         * @param logAgent
-        *            The logging agent this client will operate on.
+        *            The listener this client will operate on, typically an LTTng
+        *            agent.
+        * @param domainValue
+        *            The integer to send to the session daemon representing the
+        *            tracing domain to handle.
         * @param isRoot
         *            True if this client should connect to the root session daemon,
         *            false if it should connect to the user one.
         */
-       public LttngTcpSessiondClient(AbstractLttngAgent<?> logAgent, boolean isRoot) {
+       public LttngTcpSessiondClient(ILttngTcpClientListener logAgent, int domainValue, boolean isRoot) {
                this.logAgent = logAgent;
+               this.domainValue = domainValue;
                this.isRoot = isRoot;
        }
 
@@ -206,10 +209,10 @@ public class LttngTcpSessiondClient implements Runnable {
                ByteBuffer buf = ByteBuffer.wrap(data);
                String pid = ManagementFactory.getRuntimeMXBean().getName().split("@")[0];
 
-               buf.putInt(logAgent.getDomain().value());
+               buf.putInt(domainValue);
                buf.putInt(Integer.parseInt(pid));
-               buf.putInt(protocolMajorVersion);
-               buf.putInt(protocolMinorVersion);
+               buf.putInt(PROTOCOL_MAJOR_VERSION);
+               buf.putInt(PROTOCOL_MINOR_VERSION);
                this.outToSessiond.write(data, 0, data.length);
                this.outToSessiond.flush();
        }
@@ -248,7 +251,7 @@ public class LttngTcpSessiondClient implements Runnable {
                        case CMD_LIST:
                        {
                                ISessiondCommand listLoggerCmd = new SessiondListLoggersCommand();
-                               ILttngAgentResponse response = listLoggerCmd.execute(logAgent);
+                               LttngAgentResponse response = listLoggerCmd.execute(logAgent);
                                responseData = response.getBytes();
                                break;
                        }
@@ -256,11 +259,11 @@ public class LttngTcpSessiondClient implements Runnable {
                        {
                                if (inputData == null) {
                                        /* Invalid command */
-                                       responseData = ILttngAgentResponse.FAILURE_RESPONSE.getBytes();
+                                       responseData = LttngAgentResponse.FAILURE_RESPONSE.getBytes();
                                        break;
                                }
                                ISessiondCommand enableCmd = new SessiondEnableEventCommand(inputData);
-                               ILttngAgentResponse response = enableCmd.execute(logAgent);
+                               LttngAgentResponse response = enableCmd.execute(logAgent);
                                responseData = response.getBytes();
                                break;
                        }
@@ -268,11 +271,11 @@ public class LttngTcpSessiondClient implements Runnable {
                        {
                                if (inputData == null) {
                                        /* Invalid command */
-                                       responseData = ILttngAgentResponse.FAILURE_RESPONSE.getBytes();
+                                       responseData = LttngAgentResponse.FAILURE_RESPONSE.getBytes();
                                        break;
                                }
                                ISessiondCommand disableCmd = new SessiondDisableEventCommand(inputData);
-                               ILttngAgentResponse response = disableCmd.execute(logAgent);
+                               LttngAgentResponse response = disableCmd.execute(logAgent);
                                responseData = response.getBytes();
                                break;
                        }
This page took 0.030768 seconds and 4 git commands to generate.