org.jaudiotagger.tag.id3.framebody
Class FrameBodyTXXX

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.AbstractFrameBodyTextInfo
                  extended by org.jaudiotagger.tag.id3.framebody.FrameBodyTXXX
All Implemented Interfaces:
ID3v23FrameBody, ID3v24FrameBody

public class FrameBodyTXXX
extends AbstractFrameBodyTextInfo
implements ID3v24FrameBody, ID3v23FrameBody

User defined text information frame

This frame is intended for one-string text information concerning the audio file in a similar way to the other "T"-frames. The frame body consists of a description of the string, represented as a terminated string, followed by the actual string. There may be more than one "TXXX" frame in each tag, but only one with the same description.

Text encoding $xx Description $00 (00) Value


Field Summary
static java.lang.String AMAZON_ASIN
           
static java.lang.String BARCODE
           
static java.lang.String CATALOG_NO
           
static java.lang.String MOOD
           
static java.lang.String MUSIC_BRAINZ_ALBUM_ARTISTID
           
static java.lang.String MUSIC_BRAINZ_ALBUMID
           
static java.lang.String MUSIC_BRAINZ_ARTISTID
           
static java.lang.String MUSIC_BRAINZ_DISCID
           
static java.lang.String MUSICBRAINZ_ALBUM_COUNTRY
           
static java.lang.String MUSICBRAINZ_ALBUM_STATUS
           
static java.lang.String MUSICBRAINZ_ALBUM_TYPE
           
static java.lang.String MUSICIP_ID
           
 
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
FrameBodyTXXX()
          Creates a new FrameBodyTXXX datatype.
FrameBodyTXXX(java.nio.ByteBuffer byteBuffer, int frameSize)
          Creates a new FrameBodyTXXX datatype.
FrameBodyTXXX(byte textEncoding, java.lang.String description, java.lang.String text)
          Creates a new FrameBodyTXXX datatype.
FrameBodyTXXX(FrameBodyTMOO body)
          Convert from V4 TMOO Frame to V3 Frame
FrameBodyTXXX(FrameBodyTXXX body)
           
 
Method Summary
 java.lang.String getDescription()
           
 java.lang.String getIdentifier()
          The ID3v2 frame identifier
 void setDescription(java.lang.String description)
          Set the desciption field
protected  void setupObjectList()
          This is different to other text Frames
 void write(java.io.ByteArrayOutputStream tagBuffer)
          Because TXXX frames also have a text encoded description we need to check this as well.
 
Methods inherited from class org.jaudiotagger.tag.id3.framebody.AbstractFrameBodyTextInfo
addTextValue, getFirstTextValue, getNumberOfValues, getText, getValueAtIndex, setText
 
Methods inherited from class org.jaudiotagger.tag.id3.framebody.AbstractID3v2FrameBody
createStructure, equals, getSize, read, setSize, setSize
 
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
 

Field Detail

MUSIC_BRAINZ_ARTISTID

public static final java.lang.String MUSIC_BRAINZ_ARTISTID
See Also:
Constant Field Values

MUSIC_BRAINZ_ALBUM_ARTISTID

public static final java.lang.String MUSIC_BRAINZ_ALBUM_ARTISTID
See Also:
Constant Field Values

MUSIC_BRAINZ_ALBUMID

public static final java.lang.String MUSIC_BRAINZ_ALBUMID
See Also:
Constant Field Values

MUSIC_BRAINZ_DISCID

public static final java.lang.String MUSIC_BRAINZ_DISCID
See Also:
Constant Field Values

MUSICBRAINZ_ALBUM_TYPE

public static final java.lang.String MUSICBRAINZ_ALBUM_TYPE
See Also:
Constant Field Values

MUSICBRAINZ_ALBUM_STATUS

public static final java.lang.String MUSICBRAINZ_ALBUM_STATUS
See Also:
Constant Field Values

MUSICBRAINZ_ALBUM_COUNTRY

public static final java.lang.String MUSICBRAINZ_ALBUM_COUNTRY
See Also:
Constant Field Values

AMAZON_ASIN

public static final java.lang.String AMAZON_ASIN
See Also:
Constant Field Values

MUSICIP_ID

public static final java.lang.String MUSICIP_ID
See Also:
Constant Field Values

BARCODE

public static final java.lang.String BARCODE
See Also:
Constant Field Values

CATALOG_NO

public static final java.lang.String CATALOG_NO
See Also:
Constant Field Values

MOOD

public static final java.lang.String MOOD
See Also:
Constant Field Values
Constructor Detail

FrameBodyTXXX

public FrameBodyTXXX()
Creates a new FrameBodyTXXX datatype.


FrameBodyTXXX

public FrameBodyTXXX(FrameBodyTMOO body)
Convert from V4 TMOO Frame to V3 Frame

Parameters:
body -

FrameBodyTXXX

public FrameBodyTXXX(FrameBodyTXXX body)

FrameBodyTXXX

public FrameBodyTXXX(byte textEncoding,
                     java.lang.String description,
                     java.lang.String text)
Creates a new FrameBodyTXXX datatype.

Parameters:
textEncoding -
description -
text -

FrameBodyTXXX

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

Parameters:
byteBuffer -
frameSize -
Throws:
InvalidTagException
Method Detail

setDescription

public void setDescription(java.lang.String description)
Set the desciption field

Parameters:
description -

getDescription

public java.lang.String getDescription()
Returns:
the description field

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

write

public void write(java.io.ByteArrayOutputStream tagBuffer)
Because TXXX frames also have a text encoded description we need to check this as well. *

Overrides:
write in class AbstractFrameBodyTextInfo

setupObjectList

protected void setupObjectList()
This is different to other text Frames

Overrides:
setupObjectList in class AbstractFrameBodyTextInfo