public static void push(ViewState vs, Message message) { ArrayOptimized.pushArrayInetWithPort(vs.addresses, message); ArrayOptimized.pushArrayEndpt(vs.view, message); ArrayOptimized.pushArrayViewID(vs.previous, message); ViewID.push(vs.id, message); Group.push(vs.group, message); message.pushString(vs.version); }
public static ViewState pop(Message message) { try { return new ViewState( message.popString(), Group.pop(message), ViewID.pop(message), ArrayOptimized.popArrayViewID(message), ArrayOptimized.popArrayEndpt(message), ArrayOptimized.popArrayInetWithPort(message)); } catch (AppiaGroupException ex) { throw new MessageException("Error poping view state.", ex); } }
public static ViewState peek(Message message) { try { ViewState vs = new ViewState( message.popString(), Group.pop(message), ViewID.pop(message), ArrayOptimized.popArrayViewID(message), ArrayOptimized.popArrayEndpt(message), ArrayOptimized.popArrayInetWithPort(message)); ViewState.push(vs, message); return vs; } catch (AppiaGroupException ex) { throw new MessageException("Error peeking view state from message.", ex); } }