+++ /dev/null
-/**
-* Copyright 2011, Big Switch Networks, Inc.
-* Originally created by David Erickson & Rob Sherwood, Stanford University
-*
-* Licensed under the Apache License, Version 2.0 (the "License"); you may
-* not use this file except in compliance with the License. You may obtain
-* a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-* License for the specific language governing permissions and limitations
-* under the License.
-**/
-
-package org.openflow.protocol.vendor;
-
-import org.jboss.netty.buffer.ChannelBuffer;
-
-/**
- * Basic implementation of OFVendorData that just treats the data as a
- * byte array. This is used if there's an OFVendor message where there's
- * no registered OFVendorId or no specific OFVendorDataType that can be
- * determined from the data.
- *
- * @author Rob Vaterlaus (rob.vaterlaus@bigswitch.com)
- */
-public class OFByteArrayVendorData implements OFVendorData {
-
- protected byte[] bytes;
-
- /**
- * Construct vendor data with an empty byte array.
- */
- public OFByteArrayVendorData() {
- }
-
- /**
- * Construct vendor data with the specified byte array.
- * @param bytes
- */
- public OFByteArrayVendorData(byte[] bytes) {
- this.bytes = bytes;
- }
-
- /**
- * Get the associated byte array for this vendor data.
- * @return the byte array containing the raw vendor data.
- */
- public byte[] getBytes() {
- return bytes;
- }
-
- /**
- * Set the byte array for the vendor data.
- * @param bytes the raw byte array containing the vendor data.
- */
- public void setBytes(byte[] bytes) {
- this.bytes = bytes;
- }
-
- /**
- * Get the length of the vendor data. In this case it's just then length
- * of the underlying byte array.
- * @return the length of the vendor data
- */
- @Override
- public int getLength() {
- return (bytes != null) ? bytes.length : 0;
- }
-
- /**
- * Read the vendor data from the ChannelBuffer into the byte array.
- * @param data the channel buffer from which we're deserializing
- * @param length the length to the end of the enclosing message
- */
- @Override
- public void readFrom(ChannelBuffer data, int length) {
- bytes = new byte[length];
- data.readBytes(bytes);
- }
-
- /**
- * Write the vendor data bytes to the ChannelBuffer
- * @param data the channel buffer to which we're serializing
- */
- @Override
- public void writeTo(ChannelBuffer data) {
- if (bytes != null)
- data.writeBytes(bytes);
- }
-}