/* 9P Protocol JAVA
 * P9P/type/data9P.java
 * Autor: Jaime Garzon (2006) jgarzon@gmail.com
 *
 * Esta clase es una implementacion del tipo de dato
 * data, usado en el protocolo 9P de Plan9P.
 * Los metodos Write y Read, permiten escribir el valor
 * de la forma little-endian en un Buffer o leerlo de un
 * array de bytes, respectivamente.
 *
 * Este tipo de dato es simplemente una serie de valores
 * byte de logitud no autocontenida, la logitud debe ser conocida.
*/

package P9P.type;
import java.io.*;

public class data9P extends type9P {

   public byte[] value;

   /* CONSTRUCTORES */

   public data9P() {};


   /* METODOS */

   public void read(byte[] b, int i) {}

   public void read(byte[] b, int i, int sz) {
      value=new byte[sz];
      int x=0;
      for (int j=i+4; j<(i+4+sz); j++) {
         value[x]=b[j];
         x++;
      }
   }

   public void write(ByteArrayOutputStream buf) {
      buf.write(value,0,len());
   }

   public int len() {
      return value.length;
   }

   public String toString() {
      return value+" ";
   }
}