本文整理了Java中org.jboss.errai.bus.client.api.QueueSession.getSessionId
方法的一些代码示例,展示了QueueSession.getSessionId
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。QueueSession.getSessionId
方法的具体详情如下:
包路径:org.jboss.errai.bus.client.api.QueueSession
类名称:QueueSession
方法名:getSessionId
[英]Returns the ID of this session, which uniquely identifies it within the scope of this client (or server for a server side session). This is not the ID of the underlying wrapped session (for example, it is not a Servlet Session ID).
[中]返回此会话的ID,该ID在此客户端(或服务器端会话的服务器)范围内唯一标识该会话。这不是底层包装会话的ID(例如,它不是Servlet会话ID)。
代码示例来源:origin: org.jboss.errai/errai-bus
private void addQueue(final QueueSession session, final MessageQueue queue) {
messageQueues.put(session, queue);
sessionLookup.put(session.getSessionId(), session);
}
代码示例来源:origin: org.jboss.errai/errai-bus
@Override
public void associateNewQueue(final QueueSession oldSession, final QueueSession newSession) {
sessionLookup.put(newSession.getSessionId(), oldSession);
messageQueues.put(newSession, getQueue(oldSession));
}
代码示例来源:origin: org.jboss.errai/errai-bus
public static String getPageFileName(final MessageQueue queue) {
return tempDir + "/queuecache/" + queue.getSession().getSessionId().replaceAll("\\-", "_");
}
代码示例来源:origin: org.jboss.errai/errai-bus
private LocalContext(String context, QueueSession session) {
if (session == null) {
throw new RuntimeException("no session");
}
this.context = createContextString(session.getSessionId() + "/" + context);
this.session = session;
this.ctx = getLocalContext();
}
代码示例来源:origin: org.jboss.errai/errai-bus
@Override
public void attachMonitor(final BusMonitor monitor) {
if (this.busMonitor != null) {
log.warn("new monitor attached, but a monitor was already attached: old monitor has been detached.");
}
this.busMonitor = monitor;
for (final Map.Entry<QueueSession, MessageQueue> entry : messageQueues.entrySet()) {
busMonitor.notifyQueueAttached(entry.getKey().getSessionId(), entry.getValue());
}
for (final String subject : subscriptions.keySet()) {
busMonitor.notifyNewSubscriptionEvent(new SubscriptionEvent(false, "None", 1, false, subject));
}
for (final Map.Entry<String, RemoteMessageCallback> entry : remoteSubscriptions.entrySet()) {
for (final MessageQueue queue : entry.getValue().getQueues()) {
busMonitor.notifyNewSubscriptionEvent(
new SubscriptionEvent(true, queue.getSession().getSessionId(), 1, false, entry.getKey())
);
}
}
monitor.attach(this);
}
代码示例来源:origin: org.jboss.errai/errai-bus
@SuppressWarnings("unchecked")
private static Message from(Map parts, QueueSession session, HttpServletRequest request) {
Message msg = createWithParts(parts)
.setResource("Session", session)
.setResource("SessionID", session.getSessionId())
.setResource(HttpServletRequest.class.getName(), request);
msg.setFlag(RoutingFlag.FromRemote);
return msg;
}
}
代码示例来源:origin: org.jboss.errai/errai-bus
@Override
public void wake() {
if (!queueRunning) return;
try {
if (deliveryHandler instanceof Wakeable) {
((Wakeable) deliveryHandler).onWake(this);
}
else {
deliveryHandler.noop(this);
}
fireActivationCallback();
}
catch (Throwable e) {
log.debug("unable to wake queue: " + session.getSessionId());
stopQueue();
}
}
代码示例来源:origin: org.jboss.errai/errai-bus
/**
* Unsubscribes a remote subscription and fires the appropriate listeners
*
* @param sessionContext
* - session context of queue
* @param queue
* - the message queue
* @param subject
* - the subject to unsubscribe from
*/
public void remoteUnsubscribe(final QueueSession sessionContext, final MessageQueue queue, final String subject) {
if (!remoteSubscriptions.containsKey(subject)) {
return;
}
final RemoteMessageCallback rmc = remoteSubscriptions.get(subject);
rmc.removeQueue(queue);
try {
fireUnsubscribeListeners(new SubscriptionEvent(true, rmc.getQueueCount() == 0, false, false, rmc.getQueueCount(),
sessionContext.getSessionId(), subject));
}
catch (Exception e) {
e.printStackTrace();
}
}
代码示例来源:origin: org.jboss.errai/errai-bus
private MessageQueue getQueueByMessage(final Message message) {
final MessageQueue queue = getQueue(getSession(message));
if (queue == null) {
throw new QueueUnavailableException("no queue available to send. (queue or session may have expired): " +
"(session id: " + getSession(message).getSessionId() + ")");
}
else {
return queue;
}
}
代码示例来源:origin: org.jboss.errai/errai-bus
private void fireQueueCloseListeners(final QueueCloseEvent event) {
if (isMonitor()) {
busMonitor.notifyQueueDetached(event.getQueue().getSession().getSessionId(), event.getQueue());
}
synchronized (queueClosedListeners) {
event.setDisposeListener(false);
for (Iterator<QueueClosedListener> iter = queueClosedListeners.iterator(); iter.hasNext(); ) {
iter.next().onQueueClosed(event);
if (event.isDisposeListener()) {
iter.remove();
event.setDisposeListener(false);
}
}
}
}
代码示例来源:origin: org.jboss.errai/errai-bus
@Override
public boolean deliver(final MessageQueue queue, final Message message) throws IOException {
try {
directSocketChannel.write("[" + BusToolsCli.encodeMessage(message) + "]");
return true;
}
catch (Throwable e) {
log.info("error writing to socket for queue " + queue.getSession().getSessionId());
LocalContext.get(queue.getSession()).destroy();
queue.stopQueue();
e.printStackTrace();
return false;
}
}
代码示例来源:origin: org.jboss.errai/errai-bus
if (message.isFlagSet(RoutingFlag.FromRemote)) {
busMonitor.notifyIncomingMessageFromRemote(
message.getResource(QueueSession.class, Resources.Session.name()).getSessionId(), message);
代码示例来源:origin: org.jboss.errai/errai-bus
private void send(final MessageQueue queue, final Message message, final boolean fireListeners) {
try {
if (isMonitor()) {
busMonitor.notifyOutgoingMessageToRemote(queue.getSession().getSessionId(), message);
}
enqueueForDelivery(queue, message);
}
catch (NoSubscribersToDeliverTo nstdt) {
// catch this so we can get a full trace
handleMessageDeliveryFailure(this, message, "No subscribers to deliver to", nstdt, false);
}
}
代码示例来源:origin: org.jboss.errai/errai-bus
@SuppressWarnings("unchecked")
public static Message createCommandMessage(QueueSession session, String json) {
if (json.length() == 0) return null;
Message msg = createWithPartsFromRawMap(ErraiProtocolEnvelopeMarshaller.INSTANCE.demarshall(JSONDecoder.decode(json),
new DecodingSession(MappingContextSingleton.get())))
.setResource("Session", session)
.setResource("SessionID", session.getSessionId());
msg.setFlag(RoutingFlag.FromRemote);
return msg;
}
代码示例来源:origin: org.jboss.errai/errai-bus
@Override
public void activate(final MessageQueue queue) {
try {
queue.poll(new OutputStreamWriteAdapter(asyncContext.getResponse().getOutputStream()));
queue.setActivationCallback(null);
queue.heartBeat();
}
catch (IOException e) {
log.debug("Closing queue with id: " + queue.getSession().getSessionId() + " due to IOException", e);
}
catch (final Throwable t) {
try {
writeExceptionToOutputStream((HttpServletResponse) asyncContext.getResponse(), t);
}
catch (Throwable t2) {
log.debug("Failed to write exception to dead client", t2);
}
}
finally {
asyncContext.complete();
}
}
});
代码示例来源:origin: org.jboss.errai/errai-bus
new SubscriptionEvent(true, sessionContext.getSessionId(), rmc.getQueueCount(), isNew, subject)
);
代码示例来源:origin: org.jboss.errai/errai-bus
@Override
public boolean copyFromBuffer(TimeUnit timeUnit, int timeout, MessageQueue queue, ByteWriteAdapter toAdapter)
throws IOException {
final MarkedByteWriteAdapter markedOutputStream = new MarkedByteWriteAdapter(toAdapter);
try {
queue.getBuffer().readWait(timeUnit, timeout, markedOutputStream, queue.getBufferColor(),
new MultiMessageFilter());
if (markedOutputStream.dataWasWritten() && markedOutputStream.getBytesWritten() > 2) {
queue.resetMessageCount();
return true;
}
}
catch (BufferOverflowException e) {
queue.getBufferColor().getSequence().set(queue.getBuffer().getHeadSequence());
log.warn("buffer data was evicted for session " + queue.getSession().getSessionId()
+ " due to overflow condition. (consider increasing buffer size with errai.bus.buffer_size "
+ "in ErraiService.properties)");
}
catch (InterruptedException e) {
e.printStackTrace();
}
return false;
}
}
代码示例来源:origin: org.jboss.errai/errai-bus
@Override
public boolean copyFromBuffer(final MessageQueue queue,
final ByteWriteAdapter toAdapter) throws IOException {
final MarkedByteWriteAdapter markedOutputStream = new MarkedByteWriteAdapter(toAdapter);
try {
queue.getBuffer().read(markedOutputStream, queue.getBufferColor(), new MultiMessageFilter());
if (markedOutputStream.dataWasWritten() && markedOutputStream.getBytesWritten() > 2) {
queue.resetMessageCount();
return true;
}
}
catch (BufferOverflowException e) {
queue.getBufferColor().getSequence().set(queue.getBuffer().getHeadSequence());
log.warn("buffer data was evicted for session " + queue.getSession().getSessionId()
+ " due to overflow condition. (consider increasing buffer size with errai.bus.buffer_size "
+ "in ErraiService.properties)");
}
return false;
}
代码示例来源:origin: org.jboss.errai/errai-bus
private Message createForwardMessageFor(final Message message, final String messageId) {
final Message forward = CommandMessage.create()
.set(ToSubject, CLUSTER_SERVICE)
.set(CommandType, ClusterCommands.MessageForward.name())
.set(Payload, ErraiProtocol.encodePayload(message.getParts()))
.set(BusId, busId);
if (message.hasPart(SessionID)) {
final String value = message.get(String.class, SessionID);
if (!IntrabusQueueSession.INSTANCE.getSessionId().equals(value)) {
forward.set(SessId, value);
}
}
if (messageId != null) {
forward.set(MessageId, messageId);
}
return forward;
}
代码示例来源:origin: org.jboss.errai/errai-bus
LOGGER.debug("set direct delivery handler on session: {}", session.getSessionId());
LOGGER.debug("activation key not match for session: {}", session.getSessionId());
sendMessage(queueChannel, WebSocketNegotiationMessage.getFailedNegotiation(error));
LOGGER.debug("reverse challange for session: {}", session.getSessionId());
sendMessage(queueChannel, WebSocketNegotiationMessage.getReverseChallenge(reverseToken));
return null;
内容来源于网络,如有侵权,请联系作者删除!