in openwire-core/src/main/java/org/apache/activemq/openwire/codec/universal/BrokerInfoMarshaller.java [221:258]
public void looseUnmarshal(OpenWireFormat wireFormat, Object target, DataInput dataIn) throws IOException {
super.looseUnmarshal(wireFormat, target, dataIn);
BrokerInfo info = (BrokerInfo) target;
int version = wireFormat.getVersion();
info.setBrokerId((BrokerId) looseUnmarsalCachedObject(wireFormat, dataIn));
info.setBrokerURL(looseUnmarshalString(dataIn));
if (dataIn.readBoolean()) {
short size = dataIn.readShort();
BrokerInfo value[] = new BrokerInfo[size];
for (int i = 0; i < size; i++) {
value[i] = (BrokerInfo) looseUnmarsalNestedObject(wireFormat,dataIn);
}
info.setPeerBrokerInfos(value);
} else {
info.setPeerBrokerInfos(null);
}
info.setBrokerName(looseUnmarshalString(dataIn));
info.setSlaveBroker(dataIn.readBoolean());
info.setMasterBroker(dataIn.readBoolean());
info.setFaultTolerantConfiguration(dataIn.readBoolean());
if (version >= 2) {
info.setDuplexConnection(dataIn.readBoolean());
}
if (version >= 2) {
info.setNetworkConnection(dataIn.readBoolean());
}
if (version >= 2) {
info.setConnectionId(looseUnmarshalLong(wireFormat, dataIn));
}
if (version >= 3) {
info.setBrokerUploadUrl(looseUnmarshalString(dataIn));
}
if (version >= 3) {
info.setNetworkProperties(looseUnmarshalString(dataIn));
}
}