X-Git-Url: http://git.lttng.org/?a=blobdiff_plain;f=liblttng-ust-java-agent%2Fjava%2Flttng-ust-agent-common%2Forg%2Flttng%2Fust%2Fagent%2Fclient%2FILttngTcpClientListener.java;h=e6edb567d4e5c668166bff4334eb82ad1ba5f58a;hb=c0c0989ab70574e09b2f7e8b48c2da6af664a849;hp=662b998283eb33902fd6d2e6ff15d95c4571cf8b;hpb=3165c2f51abe3093f4c5512b499e33cb380b387d;p=lttng-ust.git diff --git a/liblttng-ust-java-agent/java/lttng-ust-agent-common/org/lttng/ust/agent/client/ILttngTcpClientListener.java b/liblttng-ust-java-agent/java/lttng-ust-agent-common/org/lttng/ust/agent/client/ILttngTcpClientListener.java index 662b9982..e6edb567 100644 --- a/liblttng-ust-java-agent/java/lttng-ust-agent-common/org/lttng/ust/agent/client/ILttngTcpClientListener.java +++ b/liblttng-ust-java-agent/java/lttng-ust-agent-common/org/lttng/ust/agent/client/ILttngTcpClientListener.java @@ -1,22 +1,16 @@ /* - * Copyright (C) 2015 - EfficiOS Inc., Alexandre Montplaisir + * SPDX-License-Identifier: LGPL-2.1-only * - * This library is free software; you can redistribute it and/or modify it - * under the terms of the GNU Lesser General Public License, version 2.1 only, - * as published by the Free Software Foundation. - * - * This library is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License - * for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with this library; if not, write to the Free Software Foundation, - * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * Copyright (C) 2015 EfficiOS Inc. + * Copyright (C) 2015 Alexandre Montplaisir */ package org.lttng.ust.agent.client; +import java.util.Collection; + +import org.lttng.ust.agent.session.EventRule; + /** * TCP client listener interface. * @@ -30,14 +24,14 @@ public interface ILttngTcpClientListener { /** * Callback for the TCP client to notify the listener agent that a request - * for enabling an event was sent from the session daemon. + * for enabling an event rule was sent from the session daemon. * - * @param eventName - * The name of the event that was requested to be enabled. + * @param eventRule + * The event rule that was requested to be enabled * @return Since we do not track individual sessions, right now this command * cannot fail. It will always return true. */ - boolean eventEnabled(String eventName); + boolean eventEnabled(EventRule eventRule); /** * Callback for the TCP client to notify the listener agent that a request @@ -51,9 +45,42 @@ public interface ILttngTcpClientListener { boolean eventDisabled(String eventName); /** - * List the all events currently enabled in the current tracing sessions. + * Callback for the TCP client to notify the listener agent that a request + * for enabling an application-specific context was sent from the session + * daemon. + * + * @param contextRetrieverName + * The name of the retriever in which the context is present. + * This is used to namespace the contexts. + * @param contextName + * The name of the context that was requested to be enabled + * @return Since we do not track individual sessions, right now this command + * cannot fail. It will always return true. + */ + boolean appContextEnabled(String contextRetrieverName, String contextName); + + /** + * Callback for the TCP client to notify the listener agent that a request + * for disabling an application-specific context was sent from the session + * daemon. + * + * @param contextRetrieverName + * The name of the retriever in which the context is present. + * This is used to namespace the contexts. + * @param contextName + * The name of the context that was requested to be disabled. + * @return True if the command completed successfully, false if we should + * report an error (context was not previously enabled for example) + */ + boolean appContextDisabled(String contextRetrieverName, String contextName); + + /** + * List the events that are available in the agent's tracing domain. + * + * In Java terms, this means loggers that have at least one LTTng log + * handler of their corresponding domain attached. * - * @return The list of enabled events + * @return The list of available events */ - Iterable listEnabledEvents(); + Collection listAvailableEvents(); }