Exemple #1
0
  public void parse(ByteBuffer is) {
    super.parse(is);
    if ((flags & 0x1) != 0) // self ref
    return;
    type = NIOUtils.readString(is, 4);
    recordSize = is.getShort();
    version = is.getShort();
    kind = is.getShort();
    volumeName = NIOUtils.readPascalStringL(is, 27);
    volumeCreateDate = is.getInt();
    volumeSignature = is.getShort();
    volumeType = is.getShort();
    parentDirId = is.getInt();
    fileName = NIOUtils.readPascalStringL(is, 63);
    fileNumber = is.getInt();
    createdLocalDate = is.getInt();
    fileTypeName = NIOUtils.readString(is, 4);
    creatorName = NIOUtils.readString(is, 4);
    nlvlFrom = is.getShort();
    nlvlTo = is.getShort();
    volumeAttributes = is.getInt();
    fsId = is.getShort();
    NIOUtils.skip(is, 10);

    extra = new ArrayList<ExtraField>();
    while (true) {
      short type = is.getShort();
      if (type == -1) break;
      int len = is.getShort();
      byte[] bs = NIOUtils.toArray(NIOUtils.read(is, (len + 1) & 0xfffffffe));
      if (bs == null) break;
      extra.add(new ExtraField(type, len, bs));
    }
  }
Exemple #2
0
 public void parse(IsoInputStream in, long size, BoxFactory boxFactory, Box lastMovieFragmentBox)
     throws IOException {
   super.parse(in, size, boxFactory, lastMovieFragmentBox);
   language = in.readIso639();
   title = in.readString();
 }