public void processNotification(Signal signal) { Logger _logger = ejbContainerUtil.getLogger(); try { MessageSignal messageSignal = (MessageSignal) signal; byte[] payload = messageSignal.getMessage(); int size = payload.length; long ejbID = bytesToLong(payload, 0); if (size == 8) { _logger.log(Level.WARNING, "ReadOnlyBeanMessageCallBack: " + " Got message for ejbID: " + ejbID); _readOnlyBeanService.handleRefreshAllRequest(ejbID); } else { byte[] pkData = new byte[size - 8]; System.arraycopy(payload, 8, pkData, 0, pkData.length); _readOnlyBeanService.handleRefreshRequest(ejbID, pkData); _logger.log(Level.WARNING, "ReadOnlyBeanMessageCallBack: " + " Handled message for ejbID: " + ejbID); } } catch (Exception ex) { _logger.log(Level.WARNING, "ReadOnlyBeanMessageCallBack: " + "Got exception while handling message", ex); } }
@Override public void processNotification(Signal signal) { Object message = null; MessageSignal messageSignal = null; // logger.log(Level.INFO, "Source Member: " + signal.getMemberToken() + " group : " + signal.getGroupName()); if (signal instanceof MessageSignal) { messageSignal = (MessageSignal) signal; message = ((MessageSignal) signal).getMessage(); // logger.log(Level.INFO, "\t\t*** Message received: " // + ((MessageSignal) signal).getTargetComponent() + "; " // + ((MessageSignal) signal).getMemberToken()); if (messageSignal != null) { handleMessage(messageSignal.getMemberToken(), messageSignal.getTargetComponent(), (byte[]) message); } } }