You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ro...@apache.org on 2012/03/13 16:56:54 UTC

svn commit: r1300204 [6/8] - in /qpid/branches/java-config-and-management/qpid/java: ./ broker-plugins/experimental/shutdown/src/main/java/org/apache/qpid/shutdown/ broker-plugins/extras/src/main/java/org/apache/qpid/extras/exchanges/diagnostic/ broker...

Copied: qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Exchange.java (from r1300169, qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java)
URL: http://svn.apache.org/viewvc/qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Exchange.java?p2=qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Exchange.java&p1=qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java&r1=1300169&r2=1300204&rev=1300204&view=diff
==============================================================================
--- qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java (original)
+++ qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Exchange.java Tue Mar 13 15:56:45 2012
@@ -18,26 +18,22 @@
  * under the License.
  *
  */
-package org.apache.qpid.server.queue;
-
-import org.apache.qpid.framing.AMQShortString;
-import org.apache.qpid.server.virtualhost.VirtualHost;
+package org.apache.qpid.server.model;
 
 import java.util.Collection;
 
-public interface QueueRegistry
+public interface Exchange extends ConfiguredObject
 {
-    VirtualHost getVirtualHost();
-
-    void registerQueue(AMQQueue queue);
 
-    void unregisterQueue(AMQShortString name);
+    //atribute names
+    String EXCHANGE_TYPE = "exchangeType";
 
-    AMQQueue getQueue(AMQShortString name);
+    String getExchangeType();
 
-    Collection<AMQShortString> getQueueNames();
+    //children
+    Collection<Binding> getBindings();
+    Collection<Publisher> getPublishers();
 
-    Collection<AMQQueue> getQueues();
 
-    AMQQueue getQueue(String queue);
+    // Statistics
 }

Copied: qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/IllegalStateTransitionException.java (from r1300169, qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java)
URL: http://svn.apache.org/viewvc/qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/IllegalStateTransitionException.java?p2=qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/IllegalStateTransitionException.java&p1=qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java&r1=1300169&r2=1300204&rev=1300204&view=diff
==============================================================================
--- qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java (original)
+++ qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/IllegalStateTransitionException.java Tue Mar 13 15:56:45 2012
@@ -18,26 +18,26 @@
  * under the License.
  *
  */
-package org.apache.qpid.server.queue;
+package org.apache.qpid.server.model;
 
-import org.apache.qpid.framing.AMQShortString;
-import org.apache.qpid.server.virtualhost.VirtualHost;
-
-import java.util.Collection;
-
-public interface QueueRegistry
+public class IllegalStateTransitionException extends RuntimeException
 {
-    VirtualHost getVirtualHost();
-
-    void registerQueue(AMQQueue queue);
-
-    void unregisterQueue(AMQShortString name);
-
-    AMQQueue getQueue(AMQShortString name);
-
-    Collection<AMQShortString> getQueueNames();
-
-    Collection<AMQQueue> getQueues();
-
-    AMQQueue getQueue(String queue);
+    public IllegalStateTransitionException()
+    {
+    }
+
+    public IllegalStateTransitionException(final String message)
+    {
+        super(message);
+    }
+
+    public IllegalStateTransitionException(final String message, final Throwable cause)
+    {
+        super(message, cause);
+    }
+
+    public IllegalStateTransitionException(final Throwable cause)
+    {
+        super(cause);
+    }
 }

Copied: qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/LifetimePolicy.java (from r1300169, qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java)
URL: http://svn.apache.org/viewvc/qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/LifetimePolicy.java?p2=qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/LifetimePolicy.java&p1=qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java&r1=1300169&r2=1300204&rev=1300204&view=diff
==============================================================================
--- qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java (original)
+++ qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/LifetimePolicy.java Tue Mar 13 15:56:45 2012
@@ -18,26 +18,10 @@
  * under the License.
  *
  */
-package org.apache.qpid.server.queue;
+package org.apache.qpid.server.model;
 
-import org.apache.qpid.framing.AMQShortString;
-import org.apache.qpid.server.virtualhost.VirtualHost;
-
-import java.util.Collection;
-
-public interface QueueRegistry
+public enum LifetimePolicy
 {
-    VirtualHost getVirtualHost();
-
-    void registerQueue(AMQQueue queue);
-
-    void unregisterQueue(AMQShortString name);
-
-    AMQQueue getQueue(AMQShortString name);
-
-    Collection<AMQShortString> getQueueNames();
-
-    Collection<AMQQueue> getQueues();
-
-    AMQQueue getQueue(String queue);
+    PERMANENT,
+    AUTO_DELETE
 }

Added: qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Port.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Port.java?rev=1300204&view=auto
==============================================================================
--- qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Port.java (added)
+++ qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Port.java Tue Mar 13 15:56:45 2012
@@ -0,0 +1,57 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+package org.apache.qpid.server.model;
+
+import java.security.AccessControlException;
+import java.util.Collection;
+
+public interface Port extends ConfiguredObject
+{
+    String getBindingAddress();
+
+    int getPort();
+
+    Collection<Transport> getTransports();
+
+    void addTransport(Transport transport) throws IllegalStateException,
+                                                  AccessControlException,
+                                                  IllegalArgumentException;
+
+    Transport removeTransport(Transport transport) throws IllegalStateException,
+                                                          AccessControlException,
+                                                          IllegalArgumentException;
+
+
+    Collection<Protocol> getProtocols();
+
+    void addProtocol(Protocol protocol) throws IllegalStateException,
+                                               AccessControlException,
+                                               IllegalArgumentException;
+
+    Protocol removeProtocol(Protocol protocol) throws IllegalStateException,
+                                                      AccessControlException,
+                                                      IllegalArgumentException;
+
+
+    //children
+    Collection<VirtualHostAlias> getVirtualHostBindings();
+    Collection<Connection> getConnections();
+}

Copied: qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Protocol.java (from r1300169, qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java)
URL: http://svn.apache.org/viewvc/qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Protocol.java?p2=qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Protocol.java&p1=qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java&r1=1300169&r2=1300204&rev=1300204&view=diff
==============================================================================
--- qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java (original)
+++ qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Protocol.java Tue Mar 13 15:56:45 2012
@@ -18,26 +18,13 @@
  * under the License.
  *
  */
-package org.apache.qpid.server.queue;
+package org.apache.qpid.server.model;
 
-import org.apache.qpid.framing.AMQShortString;
-import org.apache.qpid.server.virtualhost.VirtualHost;
-
-import java.util.Collection;
-
-public interface QueueRegistry
+public enum Protocol
 {
-    VirtualHost getVirtualHost();
-
-    void registerQueue(AMQQueue queue);
-
-    void unregisterQueue(AMQShortString name);
-
-    AMQQueue getQueue(AMQShortString name);
-
-    Collection<AMQShortString> getQueueNames();
-
-    Collection<AMQQueue> getQueues();
-
-    AMQQueue getQueue(String queue);
+    AMQP_0_8,
+    AMQP_0_9,
+    AMQP_0_9_1,
+    AMQP_0_10,
+    // AMQP_1_0
 }

Copied: qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Publisher.java (from r1300169, qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java)
URL: http://svn.apache.org/viewvc/qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Publisher.java?p2=qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Publisher.java&p1=qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java&r1=1300169&r2=1300204&rev=1300204&view=diff
==============================================================================
--- qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java (original)
+++ qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Publisher.java Tue Mar 13 15:56:45 2012
@@ -18,26 +18,8 @@
  * under the License.
  *
  */
-package org.apache.qpid.server.queue;
+package org.apache.qpid.server.model;
 
-import org.apache.qpid.framing.AMQShortString;
-import org.apache.qpid.server.virtualhost.VirtualHost;
-
-import java.util.Collection;
-
-public interface QueueRegistry
+public interface Publisher
 {
-    VirtualHost getVirtualHost();
-
-    void registerQueue(AMQQueue queue);
-
-    void unregisterQueue(AMQShortString name);
-
-    AMQQueue getQueue(AMQShortString name);
-
-    Collection<AMQShortString> getQueueNames();
-
-    Collection<AMQQueue> getQueues();
-
-    AMQQueue getQueue(String queue);
 }

Copied: qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Queue.java (from r1300169, qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java)
URL: http://svn.apache.org/viewvc/qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Queue.java?p2=qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Queue.java&p1=qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java&r1=1300169&r2=1300204&rev=1300204&view=diff
==============================================================================
--- qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java (original)
+++ qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Queue.java Tue Mar 13 15:56:45 2012
@@ -18,26 +18,13 @@
  * under the License.
  *
  */
-package org.apache.qpid.server.queue;
-
-import org.apache.qpid.framing.AMQShortString;
-import org.apache.qpid.server.virtualhost.VirtualHost;
+package org.apache.qpid.server.model;
 
 import java.util.Collection;
 
-public interface QueueRegistry
+public interface Queue extends ConfiguredObject
 {
-    VirtualHost getVirtualHost();
-
-    void registerQueue(AMQQueue queue);
-
-    void unregisterQueue(AMQShortString name);
-
-    AMQQueue getQueue(AMQShortString name);
-
-    Collection<AMQShortString> getQueueNames();
-
-    Collection<AMQQueue> getQueues();
-
-    AMQQueue getQueue(String queue);
+    //children
+    Collection<Binding> getBindings();
+    Collection<Subscription> getSubscriptions();
 }

Copied: qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Session.java (from r1300169, qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java)
URL: http://svn.apache.org/viewvc/qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Session.java?p2=qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Session.java&p1=qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java&r1=1300169&r2=1300204&rev=1300204&view=diff
==============================================================================
--- qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java (original)
+++ qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Session.java Tue Mar 13 15:56:45 2012
@@ -18,26 +18,12 @@
  * under the License.
  *
  */
-package org.apache.qpid.server.queue;
-
-import org.apache.qpid.framing.AMQShortString;
-import org.apache.qpid.server.virtualhost.VirtualHost;
+package org.apache.qpid.server.model;
 
 import java.util.Collection;
 
-public interface QueueRegistry
+public interface Session extends ConfiguredObject
 {
-    VirtualHost getVirtualHost();
-
-    void registerQueue(AMQQueue queue);
-
-    void unregisterQueue(AMQShortString name);
-
-    AMQQueue getQueue(AMQShortString name);
-
-    Collection<AMQShortString> getQueueNames();
-
-    Collection<AMQQueue> getQueues();
-
-    AMQQueue getQueue(String queue);
+    Collection<Subscription> getSubscriptions();
+    Collection<Publisher> getPublishers();
 }

Copied: qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/State.java (from r1300169, qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java)
URL: http://svn.apache.org/viewvc/qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/State.java?p2=qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/State.java&p1=qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java&r1=1300169&r2=1300204&rev=1300204&view=diff
==============================================================================
--- qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java (original)
+++ qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/State.java Tue Mar 13 15:56:45 2012
@@ -18,26 +18,13 @@
  * under the License.
  *
  */
-package org.apache.qpid.server.queue;
+package org.apache.qpid.server.model;
 
-import org.apache.qpid.framing.AMQShortString;
-import org.apache.qpid.server.virtualhost.VirtualHost;
-
-import java.util.Collection;
-
-public interface QueueRegistry
+public enum State
 {
-    VirtualHost getVirtualHost();
-
-    void registerQueue(AMQQueue queue);
-
-    void unregisterQueue(AMQShortString name);
-
-    AMQQueue getQueue(AMQShortString name);
-
-    Collection<AMQShortString> getQueueNames();
-
-    Collection<AMQQueue> getQueues();
-
-    AMQQueue getQueue(String queue);
+    INITIALISING,
+    QUIESCED,
+    STOPPED,
+    ACTIVE,
+    DELETED
 }

Added: qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Statistics.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Statistics.java?rev=1300204&view=auto
==============================================================================
--- qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Statistics.java (added)
+++ qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Statistics.java Tue Mar 13 15:56:45 2012
@@ -0,0 +1,25 @@
+package org.apache.qpid.server.model;
+
+import java.util.Collection;
+
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ * <p/>
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * <p/>
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+public interface Statistics
+{
+    Collection<String> getStatisticNames();
+    public Number getStatistic(String name);
+}

Copied: qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Subscription.java (from r1300169, qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java)
URL: http://svn.apache.org/viewvc/qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Subscription.java?p2=qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Subscription.java&p1=qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java&r1=1300169&r2=1300204&rev=1300204&view=diff
==============================================================================
--- qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java (original)
+++ qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Subscription.java Tue Mar 13 15:56:45 2012
@@ -18,26 +18,8 @@
  * under the License.
  *
  */
-package org.apache.qpid.server.queue;
+package org.apache.qpid.server.model;
 
-import org.apache.qpid.framing.AMQShortString;
-import org.apache.qpid.server.virtualhost.VirtualHost;
-
-import java.util.Collection;
-
-public interface QueueRegistry
+public interface Subscription extends ConfiguredObject
 {
-    VirtualHost getVirtualHost();
-
-    void registerQueue(AMQQueue queue);
-
-    void unregisterQueue(AMQShortString name);
-
-    AMQQueue getQueue(AMQShortString name);
-
-    Collection<AMQShortString> getQueueNames();
-
-    Collection<AMQQueue> getQueues();
-
-    AMQQueue getQueue(String queue);
 }

Copied: qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Transport.java (from r1300169, qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java)
URL: http://svn.apache.org/viewvc/qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Transport.java?p2=qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Transport.java&p1=qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java&r1=1300169&r2=1300204&rev=1300204&view=diff
==============================================================================
--- qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java (original)
+++ qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/Transport.java Tue Mar 13 15:56:45 2012
@@ -18,26 +18,10 @@
  * under the License.
  *
  */
-package org.apache.qpid.server.queue;
+package org.apache.qpid.server.model;
 
-import org.apache.qpid.framing.AMQShortString;
-import org.apache.qpid.server.virtualhost.VirtualHost;
-
-import java.util.Collection;
-
-public interface QueueRegistry
+public enum Transport
 {
-    VirtualHost getVirtualHost();
-
-    void registerQueue(AMQQueue queue);
-
-    void unregisterQueue(AMQShortString name);
-
-    AMQQueue getQueue(AMQShortString name);
-
-    Collection<AMQShortString> getQueueNames();
-
-    Collection<AMQQueue> getQueues();
-
-    AMQQueue getQueue(String queue);
+    TCP,
+    SSL
 }

Added: qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/VirtualHost.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/VirtualHost.java?rev=1300204&view=auto
==============================================================================
--- qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/VirtualHost.java (added)
+++ qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/VirtualHost.java Tue Mar 13 15:56:45 2012
@@ -0,0 +1,46 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+package org.apache.qpid.server.model;
+
+import java.security.AccessControlException;
+import java.util.Collection;
+import java.util.Map;
+
+public interface VirtualHost extends ConfiguredObject
+{
+    String getReplicationGroupName();
+
+    //children
+    Collection<VirtualHostAlias> getAliases();
+    Collection<Connection> getConnections();
+    Collection<Queue> getQueues();
+    Collection<Exchange> getExchanges();
+
+    Exchange createExchange(String name, State initialState, boolean durable,
+                            LifetimePolicy lifetime, long ttl, String type, Map<String, Object> attributes)
+            throws AccessControlException, IllegalArgumentException;
+
+    Queue createQueue(String name, State initialState, boolean durable,
+                      LifetimePolicy lifetime, long ttl, Map<String, Object> attributes)
+                    throws AccessControlException, IllegalArgumentException;
+
+    void deleteQueue(Queue queue) throws AccessControlException, IllegalStateException;
+}

Copied: qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/VirtualHostAlias.java (from r1300169, qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java)
URL: http://svn.apache.org/viewvc/qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/VirtualHostAlias.java?p2=qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/VirtualHostAlias.java&p1=qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java&r1=1300169&r2=1300204&rev=1300204&view=diff
==============================================================================
--- qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/QueueRegistry.java (original)
+++ qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/VirtualHostAlias.java Tue Mar 13 15:56:45 2012
@@ -18,26 +18,20 @@
  * under the License.
  *
  */
-package org.apache.qpid.server.queue;
-
-import org.apache.qpid.framing.AMQShortString;
-import org.apache.qpid.server.virtualhost.VirtualHost;
+package org.apache.qpid.server.model;
 
+import java.security.AccessControlException;
 import java.util.Collection;
 
-public interface QueueRegistry
+public interface VirtualHostAlias extends ConfiguredObject
 {
+    // parents
+    Port getPort();
     VirtualHost getVirtualHost();
 
-    void registerQueue(AMQQueue queue);
-
-    void unregisterQueue(AMQShortString name);
-
-    AMQQueue getQueue(AMQShortString name);
+    // children
+    Collection<AuthenticationMethod> getAuthenticationMethods();
 
-    Collection<AMQShortString> getQueueNames();
 
-    Collection<AMQQueue> getQueues();
 
-    AMQQueue getQueue(String queue);
 }

Added: qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractAdapter.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractAdapter.java?rev=1300204&view=auto
==============================================================================
--- qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractAdapter.java (added)
+++ qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractAdapter.java Tue Mar 13 15:56:45 2012
@@ -0,0 +1,176 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+package org.apache.qpid.server.model.adapter;
+
+import org.apache.qpid.server.model.ConfigurationChangeListener;
+import org.apache.qpid.server.model.ConfiguredObject;
+import org.apache.qpid.server.model.IllegalStateTransitionException;
+import org.apache.qpid.server.model.State;
+
+import java.security.AccessControlException;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.UUID;
+
+abstract class AbstractAdapter implements ConfiguredObject
+{
+    private final Map<String,Object> _attributes = new HashMap<String, Object>();
+    private final Map<Class<? extends ConfiguredObject>, ConfiguredObject> _parents =
+            new HashMap<Class<? extends ConfiguredObject>, ConfiguredObject>();
+    private final Collection<ConfigurationChangeListener> _changeListeners =
+            new ArrayList<ConfigurationChangeListener>();
+
+    private final UUID _id;
+
+    protected AbstractAdapter()
+    {
+        _id = UUID.randomUUID();
+    }
+
+    public final UUID getId()
+    {
+        return _id;
+    }
+
+    public State getDesiredState()
+    {
+        return null;  //TODO
+    }
+
+    public State setDesiredState(final State currentState, final State desiredState)
+            throws IllegalStateTransitionException, AccessControlException
+    {
+        return null;  //TODO
+    }
+
+    public void addChangeListener(final ConfigurationChangeListener listener)
+    {
+        if(listener == null)
+        {
+            throw new NullPointerException("Cannot add a null listener");
+        }
+        synchronized (this)
+        {
+            if(!_changeListeners.contains(listener))
+            {
+                _changeListeners.add(listener);
+            }
+        }
+    }
+
+    public boolean removeChangeListener(final ConfigurationChangeListener listener)
+    {
+        if(listener == null)
+        {
+            throw new NullPointerException("Cannot remove a null listener");
+        }
+        synchronized (this)
+        {
+            return _changeListeners.remove(listener);
+        }
+    }
+
+
+    protected void childAdded(ConfiguredObject child)
+    {
+        synchronized (this)
+        {
+            for(ConfigurationChangeListener listener : _changeListeners)
+            {
+                listener.childAdded(this, child);
+            }
+        }
+    }
+
+
+    protected void childRemoved(ConfiguredObject child)
+    {
+        synchronized (this)
+        {
+            for(ConfigurationChangeListener listener : _changeListeners)
+            {
+                listener.childRemoved(this, child);
+            }
+        }
+    }
+
+    public Object getAttribute(final String name)
+    {
+        synchronized (this)
+        {
+            return _attributes.get(name);
+        }
+    }
+
+    public Object setAttribute(final String name, final Object expected, final Object desired)
+            throws IllegalStateException, AccessControlException, IllegalArgumentException
+    {
+        synchronized (this)
+        {
+            Object currentValue = _attributes.get(name);
+            if((currentValue == null && expected == null)
+               || (currentValue != null && currentValue.equals(expected)))
+            {
+                _attributes.put(name, desired);
+                return desired;
+            }
+            else
+            {
+                return currentValue;
+            }
+        }
+    }
+
+    public <T extends ConfiguredObject> T getParent(final Class<T> clazz)
+    {
+        synchronized (this)
+        {
+            return (T) _parents.get(clazz);
+        }
+    }
+
+    protected <T extends ConfiguredObject> void addParent(Class<T> clazz, T parent)
+    {
+        synchronized (this)
+        {
+            _parents.put(clazz, parent);
+        }
+    }
+
+    protected  <T extends ConfiguredObject> void removeParent(Class<T> clazz)
+    {
+        synchronized (this)
+        {
+            _parents.remove(clazz);
+        }
+    }
+
+    public Collection<String> getAttributeNames()
+    {
+        synchronized(_attributes)
+        {
+            return new ArrayList<String>(_attributes.keySet());
+        }
+    }
+
+}

Added: qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/BindingAdapter.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/BindingAdapter.java?rev=1300204&view=auto
==============================================================================
--- qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/BindingAdapter.java (added)
+++ qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/BindingAdapter.java Tue Mar 13 15:56:45 2012
@@ -0,0 +1,121 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+package org.apache.qpid.server.model.adapter;
+
+import java.security.AccessControlException;
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.qpid.server.model.Binding;
+import org.apache.qpid.server.model.Exchange;
+import org.apache.qpid.server.model.LifetimePolicy;
+import org.apache.qpid.server.model.Queue;
+import org.apache.qpid.server.model.State;
+import org.apache.qpid.server.model.Statistics;
+
+final class BindingAdapter extends AbstractAdapter implements Binding
+{
+    private final org.apache.qpid.server.binding.Binding _binding;
+    private Statistics _statistics = NoStatistics.getInstance();
+    private final ExchangeAdapter _exchange;
+    private QueueAdapter _queue;
+
+    public BindingAdapter(final org.apache.qpid.server.binding.Binding binding, 
+                          ExchangeAdapter exchangeAdapter,
+                          QueueAdapter queueAdapter)
+    {
+        _binding = binding;
+        _exchange = exchangeAdapter;
+        _queue = queueAdapter;
+        addParent(Queue.class, queueAdapter);
+        addParent(Exchange.class, exchangeAdapter);
+    }
+
+
+    public ExchangeAdapter getExchange()
+    {
+        return _exchange;
+    }
+
+    public QueueAdapter getQueue()
+    {
+        return _queue;
+    }
+
+    public String getName()
+    {
+        return _binding.getBindingKey();
+    }
+
+    public String setName(final String currentName, final String desiredName)
+            throws IllegalStateException, AccessControlException
+    {
+        return null;  //TODO
+    }
+
+    public State getActualState()
+    {
+        return null;  //TODO
+    }
+
+    public boolean isDurable()
+    {
+        return _binding.getQueue().isDurable() && _binding.getExchange().isDurable();
+    }
+
+    public void setDurable(final boolean durable)
+            throws IllegalStateException, AccessControlException, IllegalArgumentException
+    {
+        //TODO
+    }
+
+    public LifetimePolicy getLifetimePolicy()
+    {
+        return LifetimePolicy.PERMANENT;
+    }
+
+    public LifetimePolicy setLifetimePolicy(final LifetimePolicy expected, final LifetimePolicy desired)
+            throws IllegalStateException, AccessControlException, IllegalArgumentException
+    {
+        return null;  //TODO
+    }
+
+    public long getTimeToLive()
+    {
+        return 0;  //TODO
+    }
+
+    public long setTimeToLive(final long expected, final long desired)
+            throws IllegalStateException, AccessControlException, IllegalArgumentException
+    {
+        return 0;  //TODO
+    }
+
+    public Statistics getStatistics()
+    {
+        return _statistics;
+    }
+
+    public Map<String, Object> getArguments()
+    {
+        return new HashMap<String, Object> (_binding.getArguments());
+    }
+}

Added: qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/BrokerAdapter.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/BrokerAdapter.java?rev=1300204&view=auto
==============================================================================
--- qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/BrokerAdapter.java (added)
+++ qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/BrokerAdapter.java Tue Mar 13 15:56:45 2012
@@ -0,0 +1,215 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+package org.apache.qpid.server.model.adapter;
+
+import java.net.InetSocketAddress;
+import java.security.AccessControlException;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.Map;
+import org.apache.qpid.server.model.AuthenticationProvider;
+import org.apache.qpid.server.model.Broker;
+import org.apache.qpid.server.model.LifetimePolicy;
+import org.apache.qpid.server.model.Port;
+import org.apache.qpid.server.model.State;
+import org.apache.qpid.server.model.Statistics;
+import org.apache.qpid.server.model.VirtualHost;
+import org.apache.qpid.server.registry.ApplicationRegistry;
+import org.apache.qpid.server.registry.IApplicationRegistry;
+import org.apache.qpid.server.transport.QpidAcceptor;
+import org.apache.qpid.server.virtualhost.VirtualHostRegistry;
+
+public class BrokerAdapter extends AbstractAdapter implements Broker, VirtualHostRegistry.RegistryChangeListener
+{
+
+
+    private final IApplicationRegistry _applicationRegistry;
+    private String _name;
+    private final Map<org.apache.qpid.server.virtualhost.VirtualHost, VirtualHostAdapter> _vhostAdapters =
+            new HashMap<org.apache.qpid.server.virtualhost.VirtualHost, VirtualHostAdapter>();
+    private final StatisticsAdapter _statistics;
+    
+    private static final BrokerAdapter INSTANCE = new BrokerAdapter(ApplicationRegistry.getInstance());
+
+    private BrokerAdapter(final IApplicationRegistry instance)
+    {
+        _applicationRegistry = instance;
+        _name = "Broker";
+        _statistics = new StatisticsAdapter(instance);
+
+        instance.getVirtualHostRegistry().addRegistryChangeListener(this);
+        populateVhosts();
+    }
+
+    private void populateVhosts()
+    {
+        synchronized(_vhostAdapters)
+        {
+            Collection<org.apache.qpid.server.virtualhost.VirtualHost> actualVhosts =
+                    _applicationRegistry.getVirtualHostRegistry().getVirtualHosts();
+            for(org.apache.qpid.server.virtualhost.VirtualHost vh : actualVhosts)
+            {
+                if(!_vhostAdapters.containsKey(vh))
+                {
+                    _vhostAdapters.put(vh, new VirtualHostAdapter(vh));
+                }
+            }
+
+        }
+    }
+
+    public static Broker getInstance()
+    {
+        return INSTANCE;
+    }
+
+    public Collection<VirtualHost> getVirtualHosts()
+    {
+        Collection<org.apache.qpid.server.virtualhost.VirtualHost> actualVhosts =
+                _applicationRegistry.getVirtualHostRegistry().getVirtualHosts();
+
+
+        synchronized(_vhostAdapters)
+        {
+            return new ArrayList<VirtualHost>(_vhostAdapters.values());
+        }
+
+    }
+
+    public Collection<Port> getPorts()
+    {
+        Map<InetSocketAddress, QpidAcceptor> acceptors = _applicationRegistry.getAcceptors();
+
+        return null;  //TODO
+    }
+
+    public Collection<AuthenticationProvider> getAuthenticationProviders()
+    {
+        return null;  //TODO
+    }
+
+    public VirtualHost createVirtualHost(final String name,
+                                         final State initialState,
+                                         final boolean durable,
+                                         final LifetimePolicy lifetime,
+                                         final long ttl,
+                                         final Map<String, Object> attributes)
+            throws AccessControlException, IllegalArgumentException
+    {
+        return null;  //TODO
+    }
+
+    public void deleteVirtualHost(final VirtualHost vhost)
+        throws AccessControlException, IllegalStateException
+    {
+        //TODO
+        throw new UnsupportedOperationException("Not yet implemented");
+    }
+
+    public String getName()
+    {
+        return _name;
+    }
+
+    public String setName(final String currentName, final String desiredName)
+            throws IllegalStateException, AccessControlException
+    {
+        return null;  //TODO
+    }
+
+
+    public State getActualState()
+    {
+        return null;  //TODO
+    }
+
+
+    public boolean isDurable()
+    {
+        return true;
+    }
+
+    public void setDurable(final boolean durable)
+            throws IllegalStateException, AccessControlException, IllegalArgumentException
+    {
+        throw new IllegalStateException();
+    }
+
+    public LifetimePolicy getLifetimePolicy()
+    {
+        return LifetimePolicy.PERMANENT;
+    }
+
+    public LifetimePolicy setLifetimePolicy(final LifetimePolicy expected, final LifetimePolicy desired)
+            throws IllegalStateException, AccessControlException, IllegalArgumentException
+    {
+        throw new IllegalStateException();
+    }
+
+    public long getTimeToLive()
+    {
+        return 0;
+    }
+
+    public long setTimeToLive(final long expected, final long desired)
+            throws IllegalStateException, AccessControlException, IllegalArgumentException
+    {
+        throw new IllegalStateException();
+    }
+
+    public Statistics getStatistics()
+    {
+        return _statistics;
+    }
+
+
+    public void virtualHostRegistered(org.apache.qpid.server.virtualhost.VirtualHost virtualHost)
+    {
+        VirtualHostAdapter adapter = null;
+        synchronized (_vhostAdapters)
+        {
+            if(!_vhostAdapters.containsKey(virtualHost))
+            {
+                adapter = new VirtualHostAdapter(virtualHost);
+                _vhostAdapters.put(virtualHost, adapter);
+            }
+        }
+        if(adapter != null)
+        {
+            childAdded(adapter);
+        }
+    }
+
+    public void virtualHostUnregistered(org.apache.qpid.server.virtualhost.VirtualHost virtualHost)
+    {
+        VirtualHostAdapter adapter = null;
+
+        synchronized (_vhostAdapters)
+        {
+            adapter = _vhostAdapters.remove(virtualHost);
+        }
+        if(adapter != null)
+        {
+            childRemoved(adapter);
+        }
+    }
+}

Added: qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/ConnectionAdapter.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/ConnectionAdapter.java?rev=1300204&view=auto
==============================================================================
--- qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/ConnectionAdapter.java (added)
+++ qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/ConnectionAdapter.java Tue Mar 13 15:56:45 2012
@@ -0,0 +1,130 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+package org.apache.qpid.server.model.adapter;
+
+import java.security.AccessControlException;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import org.apache.qpid.server.model.Connection;
+import org.apache.qpid.server.model.LifetimePolicy;
+import org.apache.qpid.server.model.Session;
+import org.apache.qpid.server.model.State;
+import org.apache.qpid.server.model.Statistics;
+import org.apache.qpid.server.protocol.AMQConnectionModel;
+import org.apache.qpid.server.protocol.AMQSessionModel;
+
+final class ConnectionAdapter extends AbstractAdapter implements Connection
+{
+
+    private AMQConnectionModel _connection;
+
+    private final Map<AMQSessionModel, SessionAdapter> _sessionAdapters =
+            new HashMap<AMQSessionModel, SessionAdapter>();
+    private final Statistics _statistics;
+
+    public ConnectionAdapter(final AMQConnectionModel conn)
+    {
+        _connection = conn;
+        _statistics = new StatisticsAdapter(conn);
+    }
+
+    public Collection<Session> getSessions()
+    {
+        List<AMQSessionModel> actualSessions = _connection.getSessionModels();
+
+        synchronized (_sessionAdapters)
+        {
+            for(AMQSessionModel session : _sessionAdapters.keySet())
+            {
+                if(!actualSessions.contains(session))
+                {
+                    _sessionAdapters.remove(session);
+                }
+            }
+            for(AMQSessionModel session : actualSessions)
+            {
+                if(!_sessionAdapters.containsKey(session))
+                {
+                    _sessionAdapters.put(session, new SessionAdapter(session));
+                }
+            }
+            return new ArrayList<Session>(_sessionAdapters.values());
+        }
+    }
+
+    public String getName()
+    {
+        return _connection.getLogSubject().toLogString();
+    }
+
+    public String setName(final String currentName, final String desiredName)
+            throws IllegalStateException, AccessControlException
+    {
+        return null;  //TODO
+    }
+
+    public State getActualState()
+    {
+        return null;  //TODO
+    }
+
+    public boolean isDurable()
+    {
+        return false;  //TODO
+    }
+
+    public void setDurable(final boolean durable)
+            throws IllegalStateException, AccessControlException, IllegalArgumentException
+    {
+        //TODO
+    }
+
+    public LifetimePolicy getLifetimePolicy()
+    {
+        return null;  //TODO
+    }
+
+    public LifetimePolicy setLifetimePolicy(final LifetimePolicy expected, final LifetimePolicy desired)
+            throws IllegalStateException, AccessControlException, IllegalArgumentException
+    {
+        return null;  //TODO
+    }
+
+    public long getTimeToLive()
+    {
+        return 0;  //TODO
+    }
+
+    public long setTimeToLive(final long expected, final long desired)
+            throws IllegalStateException, AccessControlException, IllegalArgumentException
+    {
+        return 0;  //TODO
+    }
+
+    public Statistics getStatistics()
+    {
+        return _statistics;
+    }
+
+}

Added: qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/ExchangeAdapter.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/ExchangeAdapter.java?rev=1300204&view=auto
==============================================================================
--- qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/ExchangeAdapter.java (added)
+++ qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/ExchangeAdapter.java Tue Mar 13 15:56:45 2012
@@ -0,0 +1,181 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+package org.apache.qpid.server.model.adapter;
+
+import java.security.AccessControlException;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Map;
+import org.apache.qpid.server.binding.Binding;
+import org.apache.qpid.server.model.Exchange;
+import org.apache.qpid.server.model.LifetimePolicy;
+import org.apache.qpid.server.model.Publisher;
+import org.apache.qpid.server.model.State;
+import org.apache.qpid.server.model.Statistics;
+
+final class ExchangeAdapter extends AbstractAdapter implements Exchange, org.apache.qpid.server.exchange.Exchange.BindingListener
+{
+
+    private final org.apache.qpid.server.exchange.Exchange _exchange;
+    private final Map<Binding, BindingAdapter> _bindingAdapters =
+            new HashMap<Binding, BindingAdapter>();
+    private VirtualHostAdapter _vhost;
+
+
+    public ExchangeAdapter(final VirtualHostAdapter virtualHostAdapter,
+                           final org.apache.qpid.server.exchange.Exchange exchange)
+    {
+        _vhost = virtualHostAdapter;
+        _exchange = exchange;
+        exchange.addBindingListener(this);
+        populateBindings();
+    }
+
+    private void populateBindings()
+    {
+        Collection<Binding> actualBindings = _exchange.getBindings();
+        synchronized (_bindingAdapters)
+        {
+            for(Binding binding : actualBindings)
+            {
+                if(!_bindingAdapters.containsKey(binding))
+                {
+                    QueueAdapter queueAdapter = _vhost.getQueueAdapter(binding.getQueue());
+                    BindingAdapter adapter = new BindingAdapter(binding, this, queueAdapter);
+                    _bindingAdapters.put(binding, adapter);
+
+                    queueAdapter.bindingRegistered(binding, adapter);
+                }
+            }
+        }
+
+    }
+
+    public String getExchangeType()
+    {
+        return _exchange.getType().getName().toString();
+    }
+
+    public Collection<org.apache.qpid.server.model.Binding> getBindings()
+    {
+        synchronized (_bindingAdapters)
+        {
+            return new ArrayList<org.apache.qpid.server.model.Binding>(_bindingAdapters.values());
+        }
+
+    }
+
+    public Collection<Publisher> getPublishers()
+    {
+        // TODO
+        return Collections.emptyList();
+    }
+
+    public String getName()
+    {
+        return _exchange.getName();
+    }
+
+    public String setName(final String currentName, final String desiredName)
+            throws IllegalStateException, AccessControlException
+    {
+        return null;  //TODO
+    }
+
+    public State getActualState()
+    {
+        return null;  //TODO
+    }
+
+    public boolean isDurable()
+    {
+        return _exchange.isDurable();
+    }
+
+    public void setDurable(final boolean durable)
+            throws IllegalStateException, AccessControlException, IllegalArgumentException
+    {
+        //TODO
+    }
+
+    public LifetimePolicy getLifetimePolicy()
+    {
+        return _exchange.isAutoDelete() ? LifetimePolicy.AUTO_DELETE : LifetimePolicy.PERMANENT;
+    }
+
+    public LifetimePolicy setLifetimePolicy(final LifetimePolicy expected, final LifetimePolicy desired)
+            throws IllegalStateException, AccessControlException, IllegalArgumentException
+    {
+        return null;  //TODO
+    }
+
+    public long getTimeToLive()
+    {
+        return 0;  //TODO
+    }
+
+    public long setTimeToLive(final long expected, final long desired)
+            throws IllegalStateException, AccessControlException, IllegalArgumentException
+    {
+        return 0;  //TODO
+    }
+
+    public Statistics getStatistics()
+    {
+        return NoStatistics.getInstance();
+    }
+
+    public void bindingAdded(org.apache.qpid.server.exchange.Exchange exchange, Binding binding)
+    {
+        BindingAdapter adapter = null;
+        synchronized (_bindingAdapters)
+        {
+            if(!_bindingAdapters.containsKey(binding))
+            {
+                QueueAdapter queueAdapter = _vhost.getQueueAdapter(binding.getQueue());
+                adapter = new BindingAdapter(binding, this, queueAdapter);
+                _bindingAdapters.put(binding,adapter);
+                queueAdapter.bindingRegistered(binding,adapter);
+            }
+        }
+        if(adapter != null)
+        {
+            childAdded(adapter);
+        }
+    }
+
+    public void bindingRemoved(org.apache.qpid.server.exchange.Exchange exchange, Binding binding)
+    {
+        BindingAdapter adapter = null;
+        synchronized (_bindingAdapters)
+        {
+            adapter = _bindingAdapters.remove(binding);
+        }
+        if(adapter != null)
+        {
+            _vhost.getQueueAdapter(binding.getQueue()).bindingUnregistered(binding);
+            childRemoved(adapter);
+        }
+    }
+}

Added: qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/NoStatistics.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/NoStatistics.java?rev=1300204&view=auto
==============================================================================
--- qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/NoStatistics.java (added)
+++ qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/NoStatistics.java Tue Mar 13 15:56:45 2012
@@ -0,0 +1,46 @@
+package org.apache.qpid.server.model.adapter;
+
+import org.apache.qpid.server.model.Statistics;
+
+import java.util.Collection;
+import java.util.Collections;
+
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ * <p/>
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * <p/>
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+public class NoStatistics implements Statistics
+{
+    private static final NoStatistics INSTANCE = new NoStatistics();
+
+    private NoStatistics()
+    {
+    }
+
+    public Collection<String> getStatisticNames()
+    {
+        return Collections.emptyList();
+    }
+
+    public Number getStatistic(String name)
+    {
+        return null;
+    }
+
+    public static NoStatistics getInstance()
+    {
+        return INSTANCE;
+    }
+}

Added: qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/QueueAdapter.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/QueueAdapter.java?rev=1300204&view=auto
==============================================================================
--- qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/QueueAdapter.java (added)
+++ qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/QueueAdapter.java Tue Mar 13 15:56:45 2012
@@ -0,0 +1,221 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+package org.apache.qpid.server.model.adapter;
+
+import java.security.AccessControlException;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Map;
+import org.apache.qpid.server.binding.Binding;
+import org.apache.qpid.server.model.LifetimePolicy;
+import org.apache.qpid.server.model.Queue;
+import org.apache.qpid.server.model.State;
+import org.apache.qpid.server.model.Statistics;
+import org.apache.qpid.server.model.Subscription;
+import org.apache.qpid.server.queue.AMQQueue;
+
+final class QueueAdapter extends AbstractAdapter implements Queue
+{
+
+    private final AMQQueue _queue;
+    private final Map<Binding, BindingAdapter> _bindingAdapters =
+            new HashMap<Binding, BindingAdapter>();
+    private Map<org.apache.qpid.server.subscription.Subscription, SubscriptionAdapter> _subscriptionAdapters =
+            new HashMap<org.apache.qpid.server.subscription.Subscription, SubscriptionAdapter>();
+
+
+    private final VirtualHostAdapter _vhost;
+    private QueueStatisticsAdapter _statistics;
+
+    public QueueAdapter(final VirtualHostAdapter virtualHostAdapter, final AMQQueue queue)
+    {
+        _vhost = virtualHostAdapter;
+        _queue = queue;
+        _statistics = new QueueStatisticsAdapter(queue);
+    }
+
+    public Collection<org.apache.qpid.server.model.Binding> getBindings()
+    {
+        synchronized (_bindingAdapters)
+        {
+            return new ArrayList<org.apache.qpid.server.model.Binding>(_bindingAdapters.values());
+        }
+    }
+
+    public Collection<Subscription> getSubscriptions()
+    {
+        Collection<org.apache.qpid.server.subscription.Subscription> actualSubscriptions = _queue.getConsumers();
+
+        synchronized (_subscriptionAdapters)
+        {
+            Iterator<org.apache.qpid.server.subscription.Subscription> iter = _subscriptionAdapters.keySet().iterator();
+            while(iter.hasNext())
+            {
+                org.apache.qpid.server.subscription.Subscription subscription = iter.next();
+                if(!actualSubscriptions.contains(subscription))
+                {
+                    iter.remove();
+                }
+            }
+            for(org.apache.qpid.server.subscription.Subscription subscription : actualSubscriptions)
+            {
+                if(!_subscriptionAdapters.containsKey(subscription))
+                {
+                    _subscriptionAdapters.put(subscription, _vhost.getOrCreateAdapter(subscription));
+                }
+            }
+            return new ArrayList<Subscription>(_subscriptionAdapters.values());
+        }
+
+    }
+
+    public String getName()
+    {
+        return _queue.getName();
+    }
+
+    public String setName(final String currentName, final String desiredName)
+            throws IllegalStateException, AccessControlException
+    {
+        return null;  //TODO
+    }
+
+    public State getActualState()
+    {
+        return null;  //TODO
+    }
+
+    public boolean isDurable()
+    {
+        return _queue.isDurable();
+    }
+
+    public void setDurable(final boolean durable)
+            throws IllegalStateException, AccessControlException, IllegalArgumentException
+    {
+        //TODO
+    }
+
+    public LifetimePolicy getLifetimePolicy()
+    {
+        return _queue.isAutoDelete() ? LifetimePolicy.AUTO_DELETE : LifetimePolicy.PERMANENT;
+    }
+
+    public LifetimePolicy setLifetimePolicy(final LifetimePolicy expected, final LifetimePolicy desired)
+            throws IllegalStateException, AccessControlException, IllegalArgumentException
+    {
+        return null;  //TODO
+    }
+
+    public long getTimeToLive()
+    {
+        return 0;  //TODO
+    }
+
+    public long setTimeToLive(final long expected, final long desired)
+            throws IllegalStateException, AccessControlException, IllegalArgumentException
+    {
+        return 0;  //TODO
+    }
+
+    public Statistics getStatistics()
+    {
+        return _statistics;
+    }
+
+    void bindingRegistered(Binding binding, BindingAdapter adapter)
+    {
+        synchronized (_bindingAdapters)
+        {
+            _bindingAdapters.put(binding, adapter);
+        }
+        childAdded(adapter);
+    }
+
+    void bindingUnregistered(Binding binding)
+    {
+        BindingAdapter adapter = null;
+        synchronized (_bindingAdapters)
+        {
+            adapter = _bindingAdapters.remove(binding);
+        }
+        if(adapter != null)
+        {
+            childRemoved(adapter);
+        }
+    }
+
+    private static class QueueStatisticsAdapter implements Statistics
+    {
+        private static final String MSGS_QUEUE_SIZE = "msgs-queue-size";
+        private static final String BYTES_QUEUE_SIZE = "bytes-queue-size";
+        private static final String BYTES_TOTAL_IN = "bytes-total-in";
+        private static final String BYTES_TOTAL_OUT = "bytes-total-out";
+        private static final String MSGS_QUEUE_UNDELIVERED_SIZE = "msgs-queue-undelivered-size";
+        
+        private static final Collection<String> STATISTIC_NAMES = 
+                Collections.unmodifiableCollection(Arrays.asList(MSGS_QUEUE_SIZE,BYTES_QUEUE_SIZE, BYTES_TOTAL_IN,
+                                                                 BYTES_TOTAL_OUT,MSGS_QUEUE_UNDELIVERED_SIZE));
+        
+        
+        private final AMQQueue _queue;
+
+        public QueueStatisticsAdapter(AMQQueue queue)
+        {
+            _queue = queue;
+        }
+
+        public Collection<String> getStatisticNames()
+        {
+            return STATISTIC_NAMES;
+        }
+
+        public Number getStatistic(String name)
+        {
+            if(MSGS_QUEUE_SIZE.equals(name))
+            {
+                return _queue.getMessageCount();
+            }
+            else if(BYTES_QUEUE_SIZE.equals(name))
+            {
+                return _queue.getQueueDepth();
+            }
+            else
+                if(BYTES_TOTAL_IN.equals(name))
+            {
+                return _queue.getTotalEnqueueSize();
+            }
+            else if(BYTES_TOTAL_OUT.equals(name))
+            {
+                return _queue.getTotalDequeueSize();
+            }
+            else if(MSGS_QUEUE_UNDELIVERED_SIZE.equals(name))
+            {
+                return _queue.getUndeliveredMessageCount();
+            }
+            return null;
+        }
+    }
+}

Added: qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/SessionAdapter.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/SessionAdapter.java?rev=1300204&view=auto
==============================================================================
--- qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/SessionAdapter.java (added)
+++ qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/SessionAdapter.java Tue Mar 13 15:56:45 2012
@@ -0,0 +1,105 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+package org.apache.qpid.server.model.adapter;
+
+import java.security.AccessControlException;
+import java.util.Collection;
+import org.apache.qpid.server.model.LifetimePolicy;
+import org.apache.qpid.server.model.Publisher;
+import org.apache.qpid.server.model.Session;
+import org.apache.qpid.server.model.State;
+import org.apache.qpid.server.model.Statistics;
+import org.apache.qpid.server.model.Subscription;
+import org.apache.qpid.server.protocol.AMQSessionModel;
+
+final class SessionAdapter extends AbstractAdapter implements Session
+{
+    private AMQSessionModel _session;
+
+    public SessionAdapter(final AMQSessionModel session)
+    {
+        _session = session;
+    }
+
+    public Collection<Subscription> getSubscriptions()
+    {
+        return null;  //TODO
+    }
+
+    public Collection<Publisher> getPublishers()
+    {
+        return null;  //TODO
+    }
+
+    public String getName()
+    {
+        return String.valueOf(_session.getID());
+    }
+
+    public String setName(final String currentName, final String desiredName)
+            throws IllegalStateException, AccessControlException
+    {
+        return null;  //TODO
+    }
+
+    public State getActualState()
+    {
+        return null;  //TODO
+    }
+
+    public boolean isDurable()
+    {
+        return false;  //TODO
+    }
+
+    public void setDurable(final boolean durable)
+            throws IllegalStateException, AccessControlException, IllegalArgumentException
+    {
+        //TODO
+    }
+
+    public LifetimePolicy getLifetimePolicy()
+    {
+        return null;  //TODO
+    }
+
+    public LifetimePolicy setLifetimePolicy(final LifetimePolicy expected, final LifetimePolicy desired)
+            throws IllegalStateException, AccessControlException, IllegalArgumentException
+    {
+        return null;  //TODO
+    }
+
+    public long getTimeToLive()
+    {
+        return 0;  //TODO
+    }
+
+    public long setTimeToLive(final long expected, final long desired)
+            throws IllegalStateException, AccessControlException, IllegalArgumentException
+    {
+        return 0;  //TODO
+    }
+
+    public Statistics getStatistics()
+    {
+        return NoStatistics.getInstance();
+    }
+}

Added: qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/StatisticsAdapter.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/StatisticsAdapter.java?rev=1300204&view=auto
==============================================================================
--- qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/StatisticsAdapter.java (added)
+++ qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/StatisticsAdapter.java Tue Mar 13 15:56:45 2012
@@ -0,0 +1,87 @@
+package org.apache.qpid.server.model.adapter;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import org.apache.qpid.server.model.Statistics;
+import org.apache.qpid.server.stats.StatisticsCounter;
+import org.apache.qpid.server.stats.StatisticsGatherer;
+
+/**
+* Licensed to the Apache Software Foundation (ASF) under one or more
+* contributor license agreements.  See the NOTICE file distributed with
+* this work for additional information regarding copyright ownership.
+* The ASF licenses this file to You under the Apache License, Version 2.0
+* (the "License"); you may not use this file except in compliance with
+* the License.  You may obtain a copy of the License at
+* <p/>
+* http://www.apache.org/licenses/LICENSE-2.0
+* <p/>
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+class StatisticsAdapter implements Statistics
+{
+
+    private final Map<String, StatisticsCounter> _statistics =
+            new HashMap<String, StatisticsCounter>();
+                  
+
+    private static final Collection<String> STATISTIC_NAMES;
+    
+    static 
+    {
+        List<String> names = new ArrayList<String>(16);
+        for(String stat : new String[] {"bytes-in", "bytes-out", "msgs-in", "msgs-out"})
+        {
+            for(String type : new String[] {"total","rate","peak"})
+            {
+                names.add(stat + "-" + type);
+            }
+        }
+        STATISTIC_NAMES = Collections.unmodifiableCollection(names);
+    }
+    
+    public StatisticsAdapter(StatisticsGatherer applicationRegistry)
+    {
+        _statistics.put("bytes-out", applicationRegistry.getDataDeliveryStatistics());
+        _statistics.put("bytes-in", applicationRegistry.getDataReceiptStatistics());
+        _statistics.put("msgs-out", applicationRegistry.getMessageDeliveryStatistics());
+        _statistics.put("msgs-in", applicationRegistry.getMessageReceiptStatistics());
+    }
+
+    
+    public Collection<String> getStatisticNames()
+    {
+        return STATISTIC_NAMES;
+    }
+
+    public Number getStatistic(String name)
+    {
+        if(name.endsWith("-total"))
+        {
+            StatisticsCounter counter = _statistics.get(name.substring(0,name.length()-6));
+            return counter == null ? null : counter.getTotal();
+        }
+        else if(name.endsWith("-rate"))
+        {
+            StatisticsCounter counter = _statistics.get(name.substring(0,name.length()-5));
+            return counter == null ? null : counter.getRate();
+        }
+        else if(name.endsWith("-peak"))
+        {
+            StatisticsCounter counter = _statistics.get(name.substring(0,name.length()-5));
+            return counter == null ? null : counter.getPeak();
+        }
+
+        return null;
+    }
+    
+    
+}

Added: qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/SubscriptionAdapter.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/SubscriptionAdapter.java?rev=1300204&view=auto
==============================================================================
--- qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/SubscriptionAdapter.java (added)
+++ qpid/branches/java-config-and-management/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/SubscriptionAdapter.java Tue Mar 13 15:56:45 2012
@@ -0,0 +1,93 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+package org.apache.qpid.server.model.adapter;
+
+import org.apache.qpid.server.model.LifetimePolicy;
+import org.apache.qpid.server.model.State;
+import org.apache.qpid.server.model.Statistics;
+import org.apache.qpid.server.model.Subscription;
+
+import java.security.AccessControlException;
+
+public class SubscriptionAdapter extends AbstractAdapter implements Subscription
+{
+
+    private org.apache.qpid.server.subscription.Subscription _subscription;
+
+    public SubscriptionAdapter(final org.apache.qpid.server.subscription.Subscription subscription)
+    {
+        _subscription = subscription;
+    }
+
+    public String getName()
+    {
+        return String.valueOf(_subscription.getSubscriptionID());
+    }
+
+    public String setName(final String currentName, final String desiredName)
+            throws IllegalStateException, AccessControlException
+    {
+        return null;  //TODO
+    }
+
+    public State getActualState()
+    {
+        return null;  //TODO
+    }
+
+    public boolean isDurable()
+    {
+        return false;  //TODO
+    }
+
+    public void setDurable(final boolean durable)
+            throws IllegalStateException, AccessControlException, IllegalArgumentException
+    {
+        //TODO
+    }
+
+    public LifetimePolicy getLifetimePolicy()
+    {
+        return null;  //TODO
+    }
+
+    public LifetimePolicy setLifetimePolicy(final LifetimePolicy expected, final LifetimePolicy desired)
+            throws IllegalStateException, AccessControlException, IllegalArgumentException
+    {
+        return null;  //TODO
+    }
+
+    public long getTimeToLive()
+    {
+        return 0;  //TODO
+    }
+
+    public long setTimeToLive(final long expected, final long desired)
+            throws IllegalStateException, AccessControlException, IllegalArgumentException
+    {
+        return 0;  //TODO
+    }
+
+    public Statistics getStatistics()
+    {
+        return NoStatistics.getInstance();
+    }
+}



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org