org.jaudiotagger.tag.id3.framebody
Class FrameBodyTIPL

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.FrameBodyTIPL
All Implemented Interfaces:
ID3v24FrameBody

public class FrameBodyTIPL
extends AbstractID3v2FrameBody
implements ID3v24FrameBody

The 'Involved people list' is intended as a mapping between functions like producer and names. Every odd field is a function and every even is an name or a comma delimited list of names.


Field Summary
static java.lang.String ARRANGER
           
static java.lang.String DJMIXER
           
static java.lang.String ENGINEER
           
static java.lang.String MIXER
           
static java.lang.String PRODUCER
           
 
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
FrameBodyTIPL()
          Creates a new FrameBodyTIPL datatype.
FrameBodyTIPL(java.nio.ByteBuffer byteBuffer, int frameSize)
          Creates a new FrameBodyTIPL data type.
FrameBodyTIPL(byte textEncoding, java.lang.String text)
          Creates a new FrameBodyTIPL data type.
FrameBodyTIPL(FrameBodyIPLS body)
          Convert from V3 to V4 Frame
 
Method Summary
 void addPair(java.lang.String text)
          Parse text as a null separated pairing of name and function
 void addPair(java.lang.String function, java.lang.String name)
          Add pair
 java.lang.String getIdentifier()
          The ID3v2 frame identifier
 java.lang.String getKeyAtIndex(int index)
          Get key at index
 int getNumberOfPairs()
           
 PairedTextEncodedStringNullTerminated.ValuePairs getPairing()
           
 java.lang.String getText()
           
 java.lang.String getUserFriendlyValue()
           
 java.lang.String getValueAtIndex(int index)
          Get value at index
 void resetPairs()
          Remove all Pairs
 void setText(java.lang.String text)
          Set the text, decoded as pairs of involvee - involvment
protected  void setupObjectList()
          Consists of a text encoding , and then a series of null terminated Strings, there should be an even number of Strings as they are paired as involvement/involvee
 void write(java.io.ByteArrayOutputStream tagBuffer)
          Because have a text encoding we need to check the data values do not contain characters that cannot be encoded in current encoding before we write data.
 
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

ENGINEER

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

MIXER

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

DJMIXER

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

PRODUCER

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

ARRANGER

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

FrameBodyTIPL

public FrameBodyTIPL()
Creates a new FrameBodyTIPL datatype.


FrameBodyTIPL

public FrameBodyTIPL(byte textEncoding,
                     java.lang.String text)
Creates a new FrameBodyTIPL data type.

Parameters:
textEncoding -
text -

FrameBodyTIPL

public FrameBodyTIPL(java.nio.ByteBuffer byteBuffer,
                     int frameSize)
              throws InvalidTagException
Creates a new FrameBodyTIPL data type.

Parameters:
byteBuffer -
frameSize -
Throws:
InvalidTagException

FrameBodyTIPL

public FrameBodyTIPL(FrameBodyIPLS body)
Convert from V3 to V4 Frame

Parameters:
body -
Method Detail

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

setText

public void setText(java.lang.String text)
Set the text, decoded as pairs of involvee - involvment

Parameters:
text -

addPair

public void addPair(java.lang.String text)
Parse text as a null separated pairing of name and function

Parameters:
text -

addPair

public void addPair(java.lang.String function,
                    java.lang.String name)
Add pair

Parameters:
function -
name -

resetPairs

public void resetPairs()
Remove all Pairs


write

public void write(java.io.ByteArrayOutputStream tagBuffer)
Because have a text encoding we need to check the data values do not contain characters that cannot be encoded in current encoding before we write data. If they do change the encoding.

Overrides:
write in class AbstractID3v2FrameBody

setupObjectList

protected void setupObjectList()
Consists of a text encoding , and then a series of null terminated Strings, there should be an even number of Strings as they are paired as involvement/involvee

Specified by:
setupObjectList in class AbstractTagFrameBody

getPairing

public PairedTextEncodedStringNullTerminated.ValuePairs getPairing()

getKeyAtIndex

public java.lang.String getKeyAtIndex(int index)
Get key at index

Parameters:
index -
Returns:
value at index

getValueAtIndex

public java.lang.String getValueAtIndex(int index)
Get value at index

Parameters:
index -
Returns:
value at index

getNumberOfPairs

public int getNumberOfPairs()
Returns:
number of text pairs

getText

public java.lang.String getText()

getUserFriendlyValue

public java.lang.String getUserFriendlyValue()
Overrides:
getUserFriendlyValue in class AbstractTagFrameBody
Returns:
the text value that the user would expect to see for this framebody type, this should be overrridden for all framebodies


Copyright © 2005-2010 java.net. All Rights Reserved.