diff options
Diffstat (limited to 'jetty-client/src/main/java/org/eclipse/jetty/client/HttpDestination.java')
-rw-r--r-- | jetty-client/src/main/java/org/eclipse/jetty/client/HttpDestination.java | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpDestination.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpDestination.java index 692fc71a3e..169eb9a00b 100644 --- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpDestination.java +++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpDestination.java @@ -36,12 +36,15 @@ import org.eclipse.jetty.io.ClientConnectionFactory; import org.eclipse.jetty.io.ssl.SslClientConnectionFactory; import org.eclipse.jetty.util.BlockingArrayQueue; import org.eclipse.jetty.util.Promise; +import org.eclipse.jetty.util.annotation.ManagedAttribute; +import org.eclipse.jetty.util.annotation.ManagedObject; import org.eclipse.jetty.util.component.ContainerLifeCycle; import org.eclipse.jetty.util.component.Dumpable; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; -public abstract class HttpDestination implements Destination, Closeable, Dumpable +@ManagedObject +public abstract class HttpDestination extends ContainerLifeCycle implements Destination, Closeable, Dumpable { protected static final Logger LOG = Log.getLogger(HttpDestination.class); @@ -130,12 +133,14 @@ public abstract class HttpDestination implements Destination, Closeable, Dumpabl } @Override + @ManagedAttribute(value = "The destination scheme", readonly = true) public String getScheme() { return origin.getScheme(); } @Override + @ManagedAttribute(value = "The destination host", readonly = true) public String getHost() { // InetSocketAddress.getHostString() transforms the host string @@ -144,11 +149,18 @@ public abstract class HttpDestination implements Destination, Closeable, Dumpabl } @Override + @ManagedAttribute(value = "The destination port", readonly = true) public int getPort() { return origin.getAddress().getPort(); } + @ManagedAttribute(value = "The number of queued requests", readonly = true) + public int getQueuedRequestCount() + { + return exchanges.size(); + } + public Origin.Address getConnectAddress() { return proxy == null ? origin.getAddress() : proxy.getAddress(); @@ -205,7 +217,7 @@ public abstract class HttpDestination implements Destination, Closeable, Dumpabl return queue.offer(exchange); } - protected abstract void send(); + public abstract void send(); public void newConnection(Promise<Connection> promise) { |