@Override public boolean sendMessage(String targetMemberName, String token, byte[] data) { try { groupHandle.sendMessage(targetMemberName, token, data); return true; } catch (MemberNotInViewException memEx) { final String msg = "Error during groupHandle.sendMessage(" + targetMemberName + "," + token + ") failed because " + targetMemberName + " is not alive?"; logSendMsgFailure(memEx, targetMemberName, msg); } catch (GMSException gmsEx) { try { groupHandle.sendMessage(targetMemberName, token, data); return true; } catch (GMSException gmsEx2) { final String msg = "Error during groupHandle.sendMessage(" + targetMemberName + ", " + token + "; size=" + (data == null ? -1 : data.length) + ")"; logSendMsgFailure(gmsEx2, targetMemberName, msg); } } return false; }
/** * This is called by the container after it has called refresh * * @param ejbID * the ejbID that uniquely identifies the container * @param pk * The primary key of the bean(s) that is to be refreshed */ public void notifyRefresh(long ejbID, byte[] pk) { int size = pk.length; byte[] payload = new byte[size + 8]; Logger _logger = ejbContainerUtil.getLogger(); longToBytes(ejbID, payload, 0); System.arraycopy(pk, 0, payload, 8, size); try { gms.getGroupHandle().sendMessage(GMS_READ_ONLY_COMPONENT_NAME, payload); _logger.log(Level.WARNING, "ReadOnlyBeanMessageCallBack: " + " Sent message for ejbID: " + ejbID); } catch (Exception ex) { _logger.log(Level.WARNING, "ReadOnlyBeanMessageCallBack: " + "Got exception during notifyRefresh", ex); } }
/** * This is called by the container after it has called refresh * * @param ejbID * the ejbID that uniquely identifies the container * @param pk * The primary key of the bean(s) that is to be refreshed */ public void notifyRefreshAll(long ejbID) { byte[] payload = new byte[8]; Logger _logger = ejbContainerUtil.getLogger(); longToBytes(ejbID, payload, 0); try { gms.getGroupHandle().sendMessage(GMS_READ_ONLY_COMPONENT_NAME, payload); } catch (Exception ex) { _logger.log(Level.WARNING, "ReadOnlyBeanMessageCallBack: " + "Got exception during notifyRefreshAll", ex); } }