package com.coremedia.iso.boxes.apple; import com.coremedia.iso.BoxParser; import com.coremedia.iso.IsoBufferWrapper; import com.coremedia.iso.IsoFile; import com.coremedia.iso.IsoOutputStream; import com.coremedia.iso.Utf8; import com.coremedia.iso.boxes.AbstractFullBox; import com.coremedia.iso.boxes.Box; import java.io.IOException; /** * Apple Name box. Allowed as subbox of "----" box. * * @see AppleGenericBox */ public final class AppleNameBox extends AbstractFullBox { public static final String TYPE = "name"; private String name; public AppleNameBox() { super(IsoFile.fourCCtoBytes(TYPE)); } protected long getContentSize() { return Utf8.convert(name).length; } protected void getContent(IsoOutputStream os) throws IOException { os.writeStringNoTerm(name); } public String getName() { return name; } public void setName(String name) { this.name = name; } @Override public void parse(IsoBufferWrapper in, long size, BoxParser boxParser, Box lastMovieFragmentBox) throws IOException { super.parse(in, size, boxParser, lastMovieFragmentBox); setName(in.readString((int) (size - 4))); } }