summaryrefslogtreecommitdiff
path: root/java/cluster/src/main/java/org/apache/qpid/server/cluster/ClusteredProtocolSession.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/cluster/src/main/java/org/apache/qpid/server/cluster/ClusteredProtocolSession.java')
-rw-r--r--java/cluster/src/main/java/org/apache/qpid/server/cluster/ClusteredProtocolSession.java133
1 files changed, 0 insertions, 133 deletions
diff --git a/java/cluster/src/main/java/org/apache/qpid/server/cluster/ClusteredProtocolSession.java b/java/cluster/src/main/java/org/apache/qpid/server/cluster/ClusteredProtocolSession.java
deleted file mode 100644
index eea660c4f0..0000000000
--- a/java/cluster/src/main/java/org/apache/qpid/server/cluster/ClusteredProtocolSession.java
+++ /dev/null
@@ -1,133 +0,0 @@
-/*
- *
- * 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.cluster;
-
-import org.apache.mina.common.IoSession;
-import org.apache.qpid.AMQException;
-import org.apache.qpid.codec.AMQCodecFactory;
-import org.apache.qpid.server.AMQChannel;
-import org.apache.qpid.server.virtualhost.VirtualHostRegistry;
-import org.apache.qpid.server.virtualhost.VirtualHost;
-import org.apache.qpid.server.exchange.ExchangeRegistry;
-import org.apache.qpid.server.protocol.AMQMinaProtocolSession;
-import org.apache.qpid.server.protocol.AMQProtocolSession;
-import org.apache.qpid.server.queue.AMQMessage;
-import org.apache.qpid.server.queue.QueueRegistry;
-import org.apache.qpid.server.registry.ApplicationRegistry;
-import org.apache.qpid.server.registry.IApplicationRegistry;
-import org.apache.qpid.server.state.AMQStateManager;
-
-public class ClusteredProtocolSession extends AMQMinaProtocolSession
-{
- private MemberHandle _peer;
-
- public ClusteredProtocolSession(IoSession session, VirtualHostRegistry virtualHostRegistry, AMQCodecFactory codecFactory, AMQStateManager stateManager) throws AMQException
-// public ClusteredProtocolSession(IoSession session, QueueRegistry queueRegistry,
-// ExchangeRegistry exchangeRegistry, AMQCodecFactory codecFactory) throws AMQException
- {
- super(session, virtualHostRegistry, codecFactory, stateManager);
-// super(session, queueRegistry, exchangeRegistry, codecFactory);
- }
-
- public boolean isPeerSession()
- {
- return _peer != null;
- }
-
- public void setSessionPeer(MemberHandle peer)
- {
- _peer = peer;
- }
-
- public MemberHandle getSessionPeer()
- {
- return _peer;
- }
-
- public AMQChannel getChannel(int channelId)
- throws AMQException
- {
- AMQChannel channel = super.getChannel(channelId);
- if (isPeerSession() && channel == null)
- {
- channel = new OneUseChannel(channelId, getVirtualHost());
- addChannel(channel);
- }
- return channel;
- }
-
- public static boolean isPeerSession(IoSession session)
- {
- return isPeerSession(getAMQProtocolSession(session));
- }
-
- public static boolean isPeerSession(AMQProtocolSession session)
- {
- return session instanceof ClusteredProtocolSession && ((ClusteredProtocolSession) session).isPeerSession();
- }
-
- public static void setSessionPeer(AMQProtocolSession session, MemberHandle peer)
- {
- ((ClusteredProtocolSession) session).setSessionPeer(peer);
- }
-
- public static MemberHandle getSessionPeer(AMQProtocolSession session)
- {
- return ((ClusteredProtocolSession) session).getSessionPeer();
- }
-
- public static MemberHandle getSessionPeer(IoSession session)
- {
- return getSessionPeer(getAMQProtocolSession(session));
- }
-
- /**
- * Cleans itself up after delivery of a message (publish frame, header and optional body frame(s))
- */
- private class OneUseChannel extends AMQChannel
- {
- public OneUseChannel(int channelId, VirtualHost virtualHost)
- throws AMQException
- {
- super(ClusteredProtocolSession.this,channelId,
- virtualHost.getMessageStore(),
- virtualHost.getExchangeRegistry());
- }
-
- protected void routeCurrentMessage() throws AMQException
- {
- super.routeCurrentMessage();
- removeChannel(getChannelId());
- }
- }
-
- public static boolean isPayloadFromPeer(AMQMessage payload)
- {
- return isPeerSession(payload.getPublisher());
- }
-
- public static boolean canRelay(AMQMessage payload, MemberHandle target)
- {
- //can only relay client messages that have not already been relayed to the given target
- return !isPayloadFromPeer(payload) && !payload.checkToken(target);
- }
-
-}