org.jaudiotagger.tag.id3.framebody
Class FrameBodyPRIV

java.lang.Object
  extended by org.jaudiotagger.tag.id3.AbstractTagItem
      extended by org.jaudiotagger.tag.id3.AbstractTagFrameBody
          extended by org.jaudiotagger.tag.id3.framebody.AbstractID3v2FrameBody
              extended by org.jaudiotagger.tag.id3.framebody.FrameBodyPRIV
All Implemented Interfaces:
ID3v23FrameBody, ID3v24FrameBody

public class FrameBodyPRIV
extends AbstractID3v2FrameBody
implements ID3v24FrameBody, ID3v23FrameBody

Private frame.

This frame is used to contain information from a software producer that its program uses and does not fit into the other frames. The frame consists of an 'Owner identifier' string and the binary data. The 'Owner identifier' is a null-terminated string with a URL containing an email address, or a link to a location where an email address can be found, that belongs to the organisation responsible for the frame. Questions regarding the frame should be sent to the indicated email address. The tag may contain more than one "PRIV" frame but only with different contents. It is recommended to keep the number of "PRIV" frames as low as possible.

<Header for 'Private frame', ID: "PRIV">
Owner identifier<text string> $00
The private data<binary data>

For more details, please refer to the ID3 specifications:

Version:
$Id: FrameBodyPRIV.java,v 1.15 2009/11/12 13:25:22 paultaylor Exp $
Author:
: Paul Taylor, : Eric Farng

Field Summary
 
Fields inherited from class org.jaudiotagger.tag.id3.framebody.AbstractID3v2FrameBody
TYPE_BODY
 
Fields inherited from class org.jaudiotagger.tag.id3.AbstractTagFrameBody
objectList
 
Fields inherited from class org.jaudiotagger.tag.id3.AbstractTagItem
logger
 
Constructor Summary
FrameBodyPRIV()
          Creates a new FrameBodyPRIV datatype.
FrameBodyPRIV(java.nio.ByteBuffer byteBuffer, int frameSize)
          Creates a new FrameBodyPRIV datatype.
FrameBodyPRIV(FrameBodyPRIV body)
           
FrameBodyPRIV(java.lang.String owner, byte[] data)
          Creates a new FrameBodyPRIV datatype.
 
Method Summary
 byte[] getData()
           
 java.lang.String getIdentifier()
          The ID3v2 frame identifier
 java.lang.String getOwner()
           
 void setData(byte[] data)
           
 void setOwner(java.lang.String owner)
           
protected  void setupObjectList()
          Create the list of Datatypes that this body expects in the correct order This method needs to be implemented by concrete subclasses
 
Methods inherited from class org.jaudiotagger.tag.id3.framebody.AbstractID3v2FrameBody
createStructure, equals, getSize, read, setSize, setSize, write
 
Methods inherited from class org.jaudiotagger.tag.id3.AbstractTagFrameBody
getBriefDescription, getHeader, getLongDescription, getObject, getObjectValue, getTextEncoding, isSubsetOf, iterator, setHeader, setObjectValue, setTextEncoding, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

FrameBodyPRIV

public FrameBodyPRIV()
Creates a new FrameBodyPRIV datatype.


FrameBodyPRIV

public FrameBodyPRIV(FrameBodyPRIV body)

FrameBodyPRIV

public FrameBodyPRIV(java.lang.String owner,
                     byte[] data)
Creates a new FrameBodyPRIV datatype.

Parameters:
owner -
data -

FrameBodyPRIV

public FrameBodyPRIV(java.nio.ByteBuffer byteBuffer,
                     int frameSize)
              throws InvalidTagException
Creates a new FrameBodyPRIV datatype.

Parameters:
byteBuffer -
frameSize -
Throws:
InvalidTagException - if unable to create framebody from buffer
Method Detail

setData

public void setData(byte[] data)
Parameters:
data -

getData

public byte[] getData()
Returns:

getIdentifier

public java.lang.String getIdentifier()
The ID3v2 frame identifier

Specified by:
getIdentifier in class AbstractID3v2FrameBody
Returns:
the ID3v2 frame identifier for this frame type

setOwner

public void setOwner(java.lang.String owner)
Parameters:
owner -

getOwner

public java.lang.String getOwner()
Returns:

setupObjectList

protected void setupObjectList()
Description copied from class: AbstractTagFrameBody
Create the list of Datatypes that this body expects in the correct order This method needs to be implemented by concrete subclasses

Specified by:
setupObjectList in class AbstractTagFrameBody