org.jaudiotagger.tag.id3.framebody
Class FrameBodyTDRC

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

public class FrameBodyTDRC
extends AbstractFrameBodyTextInfo
implements ID3v24FrameBody


Field Summary
private  java.lang.String date
           
private static java.text.SimpleDateFormat formatDateIn
           
private static java.text.SimpleDateFormat formatDateOut
           
private static java.util.List<java.text.SimpleDateFormat> formatters
           
private static java.text.SimpleDateFormat formatTimeIn
           
private static java.text.SimpleDateFormat formatTimeOut
           
private static java.text.SimpleDateFormat formatYearIn
           
private static java.text.SimpleDateFormat formatYearOut
           
private  java.lang.String originalID
          Used when converting from v3 tags
private static int PRECISION_DAY
           
private static int PRECISION_HOUR
           
private static int PRECISION_MINUTE
           
private static int PRECISION_MONTH
           
private static int PRECISION_SECOND
           
private static int PRECISION_YEAR
           
private  java.lang.String reco
           
private  java.lang.String time
           
private  java.lang.String year
           
 
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
FrameBodyTDRC()
          Creates a new FrameBodyTDRC datatype.
FrameBodyTDRC(java.nio.ByteBuffer byteBuffer, int frameSize)
          Creates a new FrameBodyTDRC datatype from File
FrameBodyTDRC(byte textEncoding, java.lang.String text)
          Creates a new FrameBodyTDRC datatype.
FrameBodyTDRC(FrameBodyTDAT body)
          When converting v3 TDAT to v4 TDRC frame
FrameBodyTDRC(FrameBodyTDRC body)
           
FrameBodyTDRC(FrameBodyTIME body)
          When converting v3 TIME to v4 TDRC frame
FrameBodyTDRC(FrameBodyTRDA body)
          When converting v3 TRDA to v4 TDRC frame
FrameBodyTDRC(FrameBodyTYER body)
          When converting v3 YEAR to v4 TDRC frame
 
Method Summary
private  void extractID3v23Formats(java.util.Date dateRecord, int precision)
          Extract Format
private static java.lang.String formatAndParse(java.text.SimpleDateFormat formatDate, java.text.SimpleDateFormat parseDate, java.lang.String text)
          Synchronized because SimpleDatFormat arent thread safe
private static java.lang.String formatDateAsDate(java.util.Date d)
          Format Date Synchronized because SimpleDateFormat is invalid
private static java.lang.String formatDateAsTime(java.util.Date d)
          Format Date Synchronized because SimpleDateFormat is invalid
private static java.lang.String formatDateAsYear(java.util.Date d)
          Format Date Synchronized because SimpleDateFormat is invalid
 java.lang.String getDate()
           
 java.lang.String getFormattedText()
           
 java.lang.String getIdentifier()
          The ID3v2 frame identifier
 java.lang.String getOriginalID()
          Retrieve the original identifier
 java.lang.String getReco()
           
 java.lang.String getTime()
           
 java.lang.String getYear()
           
 void setDate(java.lang.String date)
           
 void setReco(java.lang.String reco)
           
 void setTime(java.lang.String time)
           
 void setYear(java.lang.String year)
           
 
Methods inherited from class org.jaudiotagger.tag.id3.framebody.AbstractFrameBodyTextInfo
addTextValue, getFirstTextValue, getNumberOfValues, getText, getValueAtIndex, setText, setupObjectList, write
 
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

originalID

private java.lang.String originalID
Used when converting from v3 tags


year

private java.lang.String year

time

private java.lang.String time

date

private java.lang.String date

reco

private java.lang.String reco

formatYearIn

private static java.text.SimpleDateFormat formatYearIn

formatYearOut

private static java.text.SimpleDateFormat formatYearOut

formatDateIn

private static java.text.SimpleDateFormat formatDateIn

formatDateOut

private static java.text.SimpleDateFormat formatDateOut

formatTimeIn

private static java.text.SimpleDateFormat formatTimeIn

formatTimeOut

private static java.text.SimpleDateFormat formatTimeOut

formatters

private static final java.util.List<java.text.SimpleDateFormat> formatters

PRECISION_SECOND

private static final int PRECISION_SECOND
See Also:
Constant Field Values

PRECISION_MINUTE

private static final int PRECISION_MINUTE
See Also:
Constant Field Values

PRECISION_HOUR

private static final int PRECISION_HOUR
See Also:
Constant Field Values

PRECISION_DAY

private static final int PRECISION_DAY
See Also:
Constant Field Values

PRECISION_MONTH

private static final int PRECISION_MONTH
See Also:
Constant Field Values

PRECISION_YEAR

private static final int PRECISION_YEAR
See Also:
Constant Field Values
Constructor Detail

FrameBodyTDRC

public FrameBodyTDRC()
Creates a new FrameBodyTDRC datatype.


FrameBodyTDRC

public FrameBodyTDRC(FrameBodyTDRC body)

FrameBodyTDRC

public FrameBodyTDRC(FrameBodyTYER body)
When converting v3 YEAR to v4 TDRC frame

Parameters:
body -

FrameBodyTDRC

public FrameBodyTDRC(FrameBodyTIME body)
When converting v3 TIME to v4 TDRC frame

Parameters:
body -

FrameBodyTDRC

public FrameBodyTDRC(FrameBodyTDAT body)
When converting v3 TDAT to v4 TDRC frame

Parameters:
body -

FrameBodyTDRC

public FrameBodyTDRC(FrameBodyTRDA body)
When converting v3 TRDA to v4 TDRC frame

Parameters:
body -

FrameBodyTDRC

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

Parameters:
textEncoding -
text -

FrameBodyTDRC

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

Parameters:
byteBuffer -
frameSize -
Throws:
InvalidTagException
Method Detail

getOriginalID

public java.lang.String getOriginalID()
Retrieve the original identifier

Returns:

formatAndParse

private static java.lang.String formatAndParse(java.text.SimpleDateFormat formatDate,
                                               java.text.SimpleDateFormat parseDate,
                                               java.lang.String text)
Synchronized because SimpleDatFormat arent thread safe

Parameters:
formatDate -
parseDate -
text -
Returns:

getFormattedText

public java.lang.String getFormattedText()

setYear

public void setYear(java.lang.String year)

setTime

public void setTime(java.lang.String time)

setDate

public void setDate(java.lang.String date)

setReco

public void setReco(java.lang.String reco)

getYear

public java.lang.String getYear()

getTime

public java.lang.String getTime()

getDate

public java.lang.String getDate()

getReco

public java.lang.String getReco()

formatDateAsYear

private static java.lang.String formatDateAsYear(java.util.Date d)
Format Date Synchronized because SimpleDateFormat is invalid

Parameters:
d -
Returns:

formatDateAsDate

private static java.lang.String formatDateAsDate(java.util.Date d)
Format Date Synchronized because SimpleDateFormat is invalid

Parameters:
d -
Returns:

formatDateAsTime

private static java.lang.String formatDateAsTime(java.util.Date d)
Format Date Synchronized because SimpleDateFormat is invalid

Parameters:
d -
Returns:

extractID3v23Formats

private void extractID3v23Formats(java.util.Date dateRecord,
                                  int precision)
Extract Format

Parameters:
dateRecord -
precision -

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