Service.ServiceGroup group = rdmService.groupStateList().get(0); if (group.action() != FilterEntryActions.CLEAR)
private void buildRDMServiceGroup(List<Service.ServiceGroup> groupStateList, int action) { int flags = Service.ServiceGroupFlags.HAS_MERGED_TO_GROUP | Service.ServiceGroupFlags.HAS_STATUS; State state = CodecFactory.createState(); state.text().data("state"); state.code(StateCodes.FAILOVER_COMPLETED); state.dataState(DataStates.SUSPECT); state.streamState(StreamStates.OPEN); Service.ServiceGroup rdmServiceGroupState = new Service.ServiceGroup(); rdmServiceGroupState.clear(); rdmServiceGroupState.flags(flags); rdmServiceGroupState.action(action); rdmServiceGroupState.group().data("group"); if (rdmServiceGroupState.checkHasMergedToGroup()) { rdmServiceGroupState.mergedToGroup().data("mergedToGroup"); } if (rdmServiceGroupState.checkHasStatus()) { rdmServiceGroupState.status().text().data("state"); rdmServiceGroupState.status().code(StateCodes.FAILOVER_COMPLETED); rdmServiceGroupState.status().dataState(DataStates.SUSPECT); rdmServiceGroupState.status().streamState(StreamStates.OPEN); } groupStateList.add(rdmServiceGroupState); }
Service.ServiceGroup groupFilter = new Service.ServiceGroup(); groupStateList().add(groupFilter); groupFilter.action(filterEntry.action()); if (filterEntry.action() != FilterEntryActions.CLEAR)
rdmServiceGroupState.action(action); rdmServiceGroupState.group().data("group"); if (rdmServiceGroupState.checkHasMergedToGroup())
rdmServiceGroupState.action(action); rdmServiceGroupState.group().data("group"); if (rdmServiceGroupState.checkHasMergedToGroup())
private int encodeGroupFilter(EncodeIterator encIter) { int ret = CodecReturnCodes.SUCCESS; for (Service.ServiceGroup group : groupStateList) { filterEntry.clear(); filterEntry.flags(FilterEntryFlags.NONE); filterEntry.id(Directory.ServiceFilterIds.GROUP); filterEntry.action(group.action()); if (filterEntry.action() == FilterEntryActions.CLEAR) { ret = filterEntry.encode(encIter); if (ret != CodecReturnCodes.SUCCESS) return ret; continue; } ret = filterEntry.encodeInit(encIter, 0); if (ret != CodecReturnCodes.SUCCESS) return ret; ret = group.encode(encIter); if (ret != CodecReturnCodes.SUCCESS) return ret; ret = filterEntry.encodeComplete(encIter, true); if (ret != CodecReturnCodes.SUCCESS) return ret; } return ret; }