if (serviceGroup.checkHasStatus()) WlItemGroup wlItemGroup = wlService.itemGroupTableGet(serviceGroup.group()); if (wlItemGroup != null) statusMsg.domainType(wlService.itemGroupTableGet(serviceGroup.group()).openStreamList().get(i).domainType()); statusMsg.msgClass(MsgClasses.STATUS); statusMsg.streamId(wlService.itemGroupTableGet(serviceGroup.group()).openStreamList().get(i).streamId()); statusMsg.applyHasState(); statusMsg.applyHasGroupId(); statusMsg.groupId(wlItemGroup.groupId()); serviceGroup.status().copy(statusMsg.state()); ret = readMsg(wlService.itemGroupTableGet(serviceGroup.group()).openStreamList().get(i), null, statusMsg, _errorInfo); if (serviceGroup.checkHasMergedToGroup()) WlItemGroup wlItemGroup = wlService.itemGroupTableRemove(serviceGroup.group()); WlItemGroup newItemGroup = wlService.itemGroupTableGet(serviceGroup.mergedToGroup()); if (wlItemGroup != null) groupId.data(ByteBuffer.allocate(serviceGroup.mergedToGroup().length())); serviceGroup.mergedToGroup().copy(groupId); wlItemGroup.groupId(groupId); wlService.itemGroupTablePut(wlItemGroup.groupId(), wlItemGroup);
Service.ServiceGroup groupFilter = new Service.ServiceGroup(); groupStateList().add(groupFilter); groupFilter.action(filterEntry.action()); if (filterEntry.action() != FilterEntryActions.CLEAR) return groupFilter.decode(dIter);
Service.ServiceGroup destGroup = new Service.ServiceGroup(); destService.groupStateList().add(destGroup); ret = group.copy(destGroup); if (ret != CodecReturnCodes.SUCCESS) return ret;
Service.ServiceGroup rdmServiceGroupState = new Service.ServiceGroup(); Service.ServiceGroup rdmServiceGroupStateDec = new Service.ServiceGroup(); rdmServiceGroupState.clear(); rdmServiceGroupStateDec.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); int ret = rdmServiceGroupState.encode(encIter); assertEquals(CodecReturnCodes.SUCCESS, ret); dIter.clear(); dIter.setBufferAndRWFVersion(buffer, Codec.majorVersion(), Codec.minorVersion()); ret = rdmServiceGroupStateDec.decode(dIter); assertEquals(rdmServiceGroupState.flags(), rdmServiceGroupStateDec.flags());
clear(); elementList.clear(); element.clear(); applyHasMergedToGroup(); status().streamState(tmpStatus.streamState()); status().dataState(tmpStatus.dataState()); status().code(tmpStatus.code()); if (tmpStatus.text().length() > 0) status().text().data(text.data(), text.position(), text.length()); applyHasStatus();
Service.ServiceGroup destGroup = new Service.ServiceGroup(); destService.groupStateList().add(destGroup); ret = group.copy(destGroup); if (ret != CodecReturnCodes.SUCCESS) return ret;
if( serviceGroup.checkHasMergedToGroup() ) mergeToGroupId(clientSession, serviceId, serviceGroup.group(), serviceGroup.mergedToGroup()); mergeToGroupId(itemInfoList.get(itemInfoIndex).clientSession(), serviceId, serviceGroup.group(), serviceGroup.mergedToGroup()); if ( serviceGroup.checkHasStatus() ) if ( serviceGroup.status().streamState() == StreamStates.CLOSED_RECOVER ) removeGroupId(clientSession, serviceId, serviceGroup.group()); for(int itemInfoIndex = 0; itemInfoIndex < itemInfoList.size(); itemInfoIndex++ ) removeGroupId(itemInfoList.get(itemInfoIndex).clientSession(), serviceId, serviceGroup.group());
Service.ServiceGroup rdmServiceGroupState = new Service.ServiceGroup(); Service.ServiceGroup rdmServiceGroupState2 = new Service.ServiceGroup(); rdmServiceGroupState.clear(); rdmServiceGroupState2.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); int ret = rdmServiceGroupState.copy(rdmServiceGroupState2); assertEquals(rdmServiceGroupState.flags(), rdmServiceGroupState2.flags()); if (rdmServiceGroupState2.checkHasMergedToGroup()) assertEquals(rdmServiceGroupState.mergedToGroup().toString(), rdmServiceGroupState2.mergedToGroup().toString()); assertEquals(rdmServiceGroupState.group().toString(), rdmServiceGroupState2.group().toString()); if (rdmServiceGroupState2.checkHasStatus())
element.clear(); if (checkHasMergedToGroup()) ret = element.encode(encIter, mergedToGroup()); if (ret != CodecReturnCodes.SUCCESS) return ret; if (checkHasStatus()) ret = element.encode(encIter, status()); if (ret != CodecReturnCodes.SUCCESS) return ret; element.name(ElementNames.GROUP); element.dataType(DataTypes.BUFFER); ret = element.encode(encIter, group()); if (ret != CodecReturnCodes.SUCCESS) return ret;
destServiceGroup.clear(); destServiceGroup.flags(flags()); destServiceGroup.action(action()); if (checkHasMergedToGroup()) ByteBuffer byteBuffer = ByteBuffer.allocate(mergedToGroup().length()); mergedToGroup().copy(byteBuffer); destServiceGroup.mergedToGroup().data(byteBuffer); destServiceGroup.applyHasMergedToGroup(); if (checkHasStatus()) destServiceGroup.status().streamState(status().streamState()); destServiceGroup.status().dataState(status().dataState()); destServiceGroup.status().code(status().code()); if (status().text().length() > 0) ByteBuffer byteBuffer = ByteBuffer.allocate(status().text().length()); status().text().copy(byteBuffer); destServiceGroup.status().text().data(byteBuffer); destServiceGroup.applyHasStatus(); ByteBuffer byteBuffer = ByteBuffer.allocate(group().length()); group().copy(byteBuffer); destServiceGroup.group().data(byteBuffer);
Service.ServiceGroup group = rdmService.groupStateList().get(0); if (group.action() != FilterEntryActions.CLEAR)
stringBuf.append(tab); stringBuf.append("group: "); stringBuf.append(group().toHexString()); stringBuf.append(eol); if(checkHasMergedToGroup()) stringBuf.append(tab); stringBuf.append("mergedToGroup: "); stringBuf.append(mergedToGroup().toHexString()); stringBuf.append(eol); if (checkHasStatus()) stringBuf.append(tab); stringBuf.append("status: "); stringBuf.append(status()); stringBuf.append(eol);
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; }
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); }
private void verifyServiceGroupState(Service.ServiceGroup rdmServiceGroupState, Service.ServiceGroup rdmServiceGroupState2) { assertEquals(rdmServiceGroupState.flags(), rdmServiceGroupState2.flags()); if (rdmServiceGroupState2.checkHasMergedToGroup()) assertEquals(rdmServiceGroupState.mergedToGroup().toString(), rdmServiceGroupState2.mergedToGroup().toString()); assertEquals(rdmServiceGroupState.group().toString(), rdmServiceGroupState2.group().toString()); if (rdmServiceGroupState2.checkHasStatus()) { State decState = rdmServiceGroupState2.status(); State state = rdmServiceGroupState.status(); assertNotNull(decState); assertEquals(state.code(), decState.code()); assertEquals(state.dataState(), decState.dataState()); assertEquals(state.streamState(), decState.streamState()); assertEquals(state.text().toString(), decState.text().toString()); } }
/** * Instantiates a new service group. */ public ServiceGroup() { status = CodecFactory.createState(); group = CodecFactory.createBuffer(); mergedToGroup = CodecFactory.createBuffer(); clear(); }