@Override public void readFrom(final ChannelBuffer bb) { super.readFrom(bb); final int datalen = this.getLengthU() - OFEchoRequest.MINIMUM_LENGTH; if (datalen > 0) { this.payload = new byte[datalen]; bb.readBytes(this.payload); } }
@Override public void readFrom(final ChannelBuffer data) { super.readFrom(data); this.portNumber = data.readShort(); data.readShort(); // pad }
@Override public void readFrom(final ChannelBuffer data) { super.readFrom(data); this.flags = data.readShort(); this.missSendLength = data.readShort(); }
@Override public void readFrom(final ChannelBuffer data) { super.readFrom(data); this.vendor = data.readInt(); if (this.vendorDataFactory == null) { throw new RuntimeException("OFVendorDataFactory not set"); } this.vendorData = this.vendorDataFactory.parseVendorData(this.vendor, data, super.getLengthU() - OFVendor.MINIMUM_LENGTH); }
@Override public void readFrom(final ChannelBuffer data) { super.readFrom(data); this.portNumber = data.readShort(); data.readInt(); // pad data.readShort(); // pad int availLength = this.length - OFQueueGetConfigReply.MINIMUM_LENGTH; this.queues.clear(); while (availLength > 0) { final OFPacketQueue queue = new OFPacketQueue(); queue.readFrom(data); this.queues.add(queue); availLength -= queue.getLength(); } }
@Override public void readFrom(final ChannelBuffer data) { super.readFrom(data); this.statisticType = OFStatisticsType.valueOf(data.readShort(), this.getType()); this.flags = data.readShort(); if (this.statisticsFactory == null) { throw new RuntimeException("OFStatisticsFactory not set"); } this.statistics = this.statisticsFactory.parseStatistics( this.getType(), this.statisticType, data, super.getLengthU() - OFStatisticsMessageBase.MINIMUM_LENGTH); }
@Override public void readFrom(final ChannelBuffer data) { super.readFrom(data); this.reason = data.readByte(); data.readerIndex(data.readerIndex() + 7); // skip 7 bytes of padding if (this.desc == null) { this.desc = new OFPhysicalPort(); } this.desc.readFrom(data); }
@Override public void readFrom(final ChannelBuffer data) { super.readFrom(data); this.errorType = data.readShort(); this.errorCode = data.readShort(); final int dataLength = this.getLengthU() - OFError.MINIMUM_LENGTH; if (dataLength > 0) { this.error = new byte[dataLength]; data.readBytes(this.error); if (this.errorType == OFErrorType.OFPET_HELLO_FAILED.getValue()) { this.errorIsAscii = true; } } }
@Override public void readFrom(final ChannelBuffer data) { super.readFrom(data); this.portNumber = data.readShort(); if (this.hardwareAddress == null) { this.hardwareAddress = new byte[OFPhysicalPort.OFP_ETH_ALEN]; } data.readBytes(this.hardwareAddress); this.config = data.readInt(); this.mask = data.readInt(); this.advertise = data.readInt(); data.readInt(); // pad }
@Override public void readFrom(final ChannelBuffer data) { super.readFrom(data); this.datapathId = data.readLong(); this.buffers = data.readInt(); this.tables = data.readByte(); data.readerIndex(data.readerIndex() + 3); // pad this.capabilities = data.readInt(); this.actions = data.readInt(); if (this.ports == null) { this.ports = new ArrayList<OFPhysicalPort>(); } else { this.ports.clear(); } final int portCount = (super.getLengthU() - 32) / OFPhysicalPort.MINIMUM_LENGTH; OFPhysicalPort port; for (int i = 0; i < portCount; ++i) { port = new OFPhysicalPort(); port.readFrom(data); this.ports.add(port); } }
@Override public void readFrom(final ChannelBuffer data) { super.readFrom(data); this.bufferId = data.readInt(); this.inPort = data.readShort(); this.actionsLength = data.readShort(); if (this.actionFactory == null) { throw new RuntimeException("ActionFactory not set"); } this.actions = this.actionFactory.parseActions(data, this.getActionsLengthU()); this.packetData = new byte[this.getLengthU() - OFPacketOut.MINIMUM_LENGTH - this.getActionsLengthU()]; data.readBytes(this.packetData); this.validate(); }
@Override public void readFrom(final ChannelBuffer data) { super.readFrom(data); this.bufferId = data.readInt(); this.totalLength = data.readShort(); this.inPort = data.readShort(); this.reason = OFPacketInReason.values()[U8.f(data.readByte())]; data.readByte(); // pad this.packetData = new byte[this.getLengthU() - OFPacketIn.MINIMUM_LENGTH]; data.readBytes(this.packetData); }
@Override public void readFrom(final ChannelBuffer data) { super.readFrom(data); if (this.match == null) { this.match = new OFMatch(); } this.match.readFrom(data); this.cookie = data.readLong(); this.command = data.readShort(); this.idleTimeout = data.readShort(); this.hardTimeout = data.readShort(); this.priority = data.readShort(); this.bufferId = data.readInt(); this.outPort = data.readShort(); this.flags = data.readShort(); if (this.actionFactory == null) { throw new RuntimeException("OFActionFactory not set"); } this.actions = this.actionFactory.parseActions(data, this.getLengthU() - OFFlowMod.MINIMUM_LENGTH); }
@Override public void readFrom(final ChannelBuffer data) { super.readFrom(data); if (this.match == null) { this.match = new OFMatch(); } this.match.readFrom(data); this.cookie = data.readLong(); this.priority = data.readShort(); int reasonIndex = 0xff & data.readByte(); if (reasonIndex >= OFFlowRemovedReason.values().length) { reasonIndex = OFFlowRemovedReason.values().length - 1; } this.reason = OFFlowRemovedReason.values()[reasonIndex]; data.readByte(); // pad this.durationSeconds = data.readInt(); this.durationNanoseconds = data.readInt(); this.idleTimeout = data.readShort(); data.readByte(); // pad data.readByte(); // pad this.packetCount = data.readLong(); this.byteCount = data.readLong(); }