+++ /dev/null
-
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-
-package org.opendaylight.controller.protocol_plugin.openflow.vendorextension.v6extension;
-
-import java.nio.ByteBuffer;
-
-import org.openflow.protocol.statistics.OFVendorStatistics;
-
-
-/**
- * This Class creates the OpenFlow Vendor Extension IPv6 Flow Stats Request
- * messages and also reads the Reply of a stats request message.
- *
- */
-
-public class V6StatsRequest extends OFVendorStatistics {
- private static final long serialVersionUID = 1L;
- protected int msgsubtype;
- protected short outPort;
- protected short match_len;
- protected byte tableId;
-
- public static final int NICIRA_VENDOR_ID = 0x00002320; //Nicira ID
- private static final int NXST_FLOW = 0x0; //Nicira Flow Stats Request Id
-
- public V6StatsRequest() {
- this.vendor = NICIRA_VENDOR_ID;
- this.msgsubtype = NXST_FLOW;
- this.match_len = 0;
- }
-
- /**
- * @param None. Being set with local variable (TBD).
- */
- public void setVendorId() {
- this.vendor = NICIRA_VENDOR_ID;
- }
-
- /**
- * @return vendor id
- */
- public int getVendorId() {
- return vendor;
- }
-
- /**
- * @param None. Being set with local variable (TBD).
- */
- public void setMsgtype() {
- this.msgsubtype = NXST_FLOW;
- }
-
- /**
- * @return vendor_msgtype
- */
- public int getMsgtype() {
- return msgsubtype;
- }
-
- /**
- * @param outPort the outPort to set
- */
- public void setOutPort(short outPort) {
- this.outPort = outPort;
- }
-
- /**
- * @return the outPort
- */
- public short getOutPort() {
- return outPort;
- }
-
- /**
- * @param match_len the match_len to set
- */
- public void setMatchLen(short match_len) {
- this.match_len = match_len;
- }
-
- /**
- * @return the match_len
- */
- public short getMatchLen() {
- return match_len;
- }
-
- /**
- * @param tableId the tableId to set
- */
- public void setTableId(byte tableId) {
- this.tableId = tableId;
- }
-
- /**
- * @return the tableId
- */
- public byte getTableId() {
- return tableId;
- }
-
- @Override
- public int getLength() {
- return 20;// 4(vendor)+4(msgsubtype)+4(pad)+2(outPort)+2(match_len)+1(tableid)+3(pad)
- }
-
- @Override
- public void readFrom(ByteBuffer data) {
- this.vendor = data.getInt();
- this.msgsubtype = data.getInt();
- data.getInt();//pad 4 bytes
- this.outPort = data.getShort();
- this.match_len = data.getShort();
- this.tableId = data.get();
- for (int i = 0; i < 3; i++) {
- data.get();//pad byte
- }
-
- }
-
- @Override
- public void writeTo(ByteBuffer data) {
- data.putInt(this.vendor);
- data.putInt(this.msgsubtype);
- data.putInt((int) 0x0);//pad0
- data.putShort(this.outPort);
- data.putShort(this.match_len);
- data.put(this.tableId);
- for (int i = 0; i < 3; i++) {
- data.put((byte) 0x0);//pad byte
- }
- }
-
- @Override
- public int hashCode() {
- final int prime = 31;
- int result = super.hashCode();
- result = prime * result + match_len;
- result = prime * result + msgsubtype;
- result = prime * result + outPort;
- result = prime * result + tableId;
- return result;
- }
-
- @Override
- public String toString() {
- return "V6StatsRequest [msgsubtype=" + msgsubtype + ", outPort="
- + outPort + ", match_len=" + match_len + ", tableId=" + tableId
- + "]";
- }
-
- @Override
- public boolean equals(Object obj) {
- if (this == obj)
- return true;
- if (!super.equals(obj))
- return false;
- if (getClass() != obj.getClass())
- return false;
- V6StatsRequest other = (V6StatsRequest) obj;
- if (match_len != other.match_len)
- return false;
- if (msgsubtype != other.msgsubtype)
- return false;
- if (outPort != other.outPort)
- return false;
- if (tableId != other.tableId)
- return false;
- return true;
- }
-}