diff options
Diffstat (limited to 'plugins/org.eclipse.net4j.jms.server/src/org/eclipse/net4j/jms/internal/server/protocol/JMSServerMessageRequest.java')
-rw-r--r-- | plugins/org.eclipse.net4j.jms.server/src/org/eclipse/net4j/jms/internal/server/protocol/JMSServerMessageRequest.java | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/plugins/org.eclipse.net4j.jms.server/src/org/eclipse/net4j/jms/internal/server/protocol/JMSServerMessageRequest.java b/plugins/org.eclipse.net4j.jms.server/src/org/eclipse/net4j/jms/internal/server/protocol/JMSServerMessageRequest.java new file mode 100644 index 0000000000..c865de7cb6 --- /dev/null +++ b/plugins/org.eclipse.net4j.jms.server/src/org/eclipse/net4j/jms/internal/server/protocol/JMSServerMessageRequest.java @@ -0,0 +1,54 @@ +/*************************************************************************** + * Copyright (c) 2004 - 2007 Eike Stepper, Germany. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Eike Stepper - initial API and implementation + **************************************************************************/ +package org.eclipse.net4j.jms.internal.server.protocol; + +import org.eclipse.net4j.IChannel; +import org.eclipse.net4j.internal.jms.MessageImpl; +import org.eclipse.net4j.internal.jms.util.MessageUtil; +import org.eclipse.net4j.jms.JMSProtocolConstants; +import org.eclipse.net4j.signal.Request; +import org.eclipse.net4j.util.stream.ExtendedDataOutputStream; + +import java.io.IOException; + +/** + * @author Eike Stepper + */ +public class JMSServerMessageRequest extends Request +{ + private int sessionID; + + private long consumerID; + + private MessageImpl message; + + public JMSServerMessageRequest(IChannel channel, int sessionID, long consumerID, MessageImpl message) + { + super(channel); + this.sessionID = sessionID; + this.consumerID = consumerID; + this.message = message; + } + + @Override + protected short getSignalID() + { + return JMSProtocolConstants.SIGNAL_SERVER_MESSAGE; + } + + @Override + protected void requesting(ExtendedDataOutputStream out) throws IOException + { + out.writeInt(sessionID); + out.writeLong(consumerID); + MessageUtil.write(out, message); + } +} |