public void looseUnmarshal()

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));
        }
    }