blob: 99c88fac3ea5626234116cf7051b172bd18b0925 [file] [log] [blame]
/*
*
* 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.queue;
import org.apache.qpid.AMQException;
import org.apache.qpid.AMQConnectionException;
import org.apache.qpid.framing.*;
import org.apache.qpid.server.AMQChannel;
import org.apache.qpid.server.output.ProtocolOutputConverter;
import org.apache.qpid.server.output.ProtocolOutputConverterRegistry;
import org.apache.qpid.server.virtualhost.VirtualHost;
import org.apache.qpid.server.protocol.AMQProtocolSession;
import org.apache.qpid.server.store.MessageStore;
import org.apache.qpid.transport.Sender;
import javax.security.sasl.SaslServer;
import java.util.HashMap;
import java.util.Map;
import java.security.Principal;
/**
* A protocol session that can be used for testing purposes.
*/
public class MockProtocolSession implements AMQProtocolSession
{
private MessageStore _messageStore;
private Map<Integer, AMQChannel> _channelMap = new HashMap<Integer, AMQChannel>();
public MockProtocolSession(MessageStore messageStore)
{
_messageStore = messageStore;
}
public void dataBlockReceived(AMQDataBlock message) throws Exception
{
}
public void writeFrame(AMQDataBlock frame)
{
}
public AMQShortString getContextKey()
{
return null;
}
public void setContextKey(AMQShortString contextKey)
{
}
public AMQChannel getChannel(int channelId)
{
AMQChannel channel = _channelMap.get(channelId);
if (channel == null)
{
throw new IllegalArgumentException("Invalid channel id: " + channelId);
}
else
{
return channel;
}
}
public void addChannel(AMQChannel channel)
{
if (channel == null)
{
throw new IllegalArgumentException("Channel must not be null");
}
else
{
_channelMap.put(channel.getChannelId(), channel);
}
}
public void closeChannel(int channelId) throws AMQException
{
}
public void closeChannelOk(int channelId)
{
}
public boolean channelAwaitingClosure(int channelId)
{
return false;
}
public void removeChannel(int channelId)
{
_channelMap.remove(channelId);
}
public void initHeartbeats(int delay)
{
}
public void closeSession() throws AMQException
{
}
public void closeConnection(int channelId, AMQConnectionException e, boolean closeIoSession) throws AMQException
{
}
public Object getKey()
{
return null;
}
public String getLocalFQDN()
{
return null;
}
public SaslServer getSaslServer()
{
return null;
}
public void setSaslServer(SaslServer saslServer)
{
}
public FieldTable getClientProperties()
{
return null;
}
public void setClientProperties(FieldTable clientProperties)
{
}
public Object getClientIdentifier()
{
return null;
}
public VirtualHost getVirtualHost()
{
return null; //To change body of implemented methods use File | Settings | File Templates.
}
public void setVirtualHost(VirtualHost virtualHost)
{
//To change body of implemented methods use File | Settings | File Templates.
}
public void addSessionCloseTask(Task task)
{
//To change body of implemented methods use File | Settings | File Templates.
}
public void removeSessionCloseTask(Task task)
{
//To change body of implemented methods use File | Settings | File Templates.
}
public ProtocolOutputConverter getProtocolOutputConverter()
{
return ProtocolOutputConverterRegistry.getConverter(this);
}
public void setAuthorizedID(Principal authorizedID)
{
//To change body of implemented methods use File | Settings | File Templates.
}
public Principal getAuthorizedID()
{
return null; //To change body of implemented methods use File | Settings | File Templates.
}
public MethodRegistry getMethodRegistry()
{
return null; //To change body of implemented methods use File | Settings | File Templates.
}
public void methodFrameReceived(int channelId, AMQMethodBody body)
{
//To change body of implemented methods use File | Settings | File Templates.
}
public void contentHeaderReceived(int channelId, ContentHeaderBody body)
{
//To change body of implemented methods use File | Settings | File Templates.
}
public void contentBodyReceived(int channelId, ContentBody body)
{
//To change body of implemented methods use File | Settings | File Templates.
}
public void heartbeatBodyReceived(int channelId, HeartbeatBody body)
{
//To change body of implemented methods use File | Settings | File Templates.
}
public MethodDispatcher getMethodDispatcher()
{
return null; //To change body of implemented methods use File | Settings | File Templates.
}
public ProtocolSessionIdentifier getSessionIdentifier()
{
return null;
}
public byte getProtocolMajorVersion()
{
return getProtocolVersion().getMajorVersion();
}
public byte getProtocolMinorVersion()
{
return getProtocolVersion().getMinorVersion();
}
public ProtocolVersion getProtocolVersion()
{
return ProtocolVersion.getLatestSupportedVersion(); //To change body of implemented methods use File | Settings | File Templates.
}
public VersionSpecificRegistry getRegistry()
{
return null; //To change body of implemented methods use File | Settings | File Templates.
}
public void setSender(Sender<java.nio.ByteBuffer> sender)
{
// FIXME AS TODO
}
public void init()
{
// TODO Auto-generated method stub
}
}