org.farng.mp3.id3
Class FrameBodyLINK

java.lang.Object
  extended by org.farng.mp3.AbstractMP3FileItem
      extended by org.farng.mp3.AbstractMP3FragmentBody
          extended by org.farng.mp3.id3.AbstractID3v2FrameBody
              extended by org.farng.mp3.id3.FrameBodyLINK
All Implemented Interfaces:
MP3MetadataContainer

public class FrameBodyLINK
extends AbstractID3v2FrameBody

4.20.   Linked information

   To keep information duplication as low as possible this frame may be
   used to link information from another ID3v2 tag that might reside in
   another audio file or alone in a binary file. It is RECOMMENDED that

   this method is only used when the files are stored on a CD-ROM or
   other circumstances when the risk of file separation is low. The
   frame contains a frame identifier, which is the frame that should be
   linked into this tag, a URL [URL] field, where a reference to the
   file where the frame is given, and additional ID data, if needed.

   Data should be retrieved from the first tag found in the file to
   which this link points. There may be more than one "LINK" frame in a
   tag, but only one with the same contents. A linked frame is to be
   considered as part of the tag and has the same restrictions as if it

   was a physical part of the tag (i.e. only one "RVRB" frame allowed,
   whether it's linked or not).

     <Header for 'Linked information', ID: "LINK">

     Frame identifier        $xx xx xx xx
     URL                     <text string> $00
     ID and additional data  <text string(s)>

   Frames that may be linked and need no additional data are "ASPI",
   "ETCO", "EQU2", "MCID", "MLLT", "OWNE", "RVA2", "RVRB", "SYTC", the

   text information frames and the URL link frames.

   The "AENC", "APIC", "GEOB" and "TXXX" frames may be linked with

   the content descriptor as additional ID data.

   The "USER" frame may be linked with the language field as additional
   ID data.
  

   The "PRIV" frame may be linked with the owner identifier as
   additional ID data.

   The "COMM", "SYLT" and "USLT"

frames may be linked with three bytes
   of language descriptor directly followed by a content descriptor as
   additional ID data.

Version:
$Revision: 3 $
Author:
Eric Farng

Constructor Summary
FrameBodyLINK()
          Creates a new FrameBodyLINK object.
FrameBodyLINK(FrameBodyLINK body)
          Creates a new FrameBodyLINK object.
FrameBodyLINK(java.io.RandomAccessFile file)
          Creates a new FrameBodyLINK object.
FrameBodyLINK(java.lang.String frameIdentifier, java.lang.String url, java.lang.String additionalData)
          Creates a new FrameBodyLINK object.
 
Method Summary
 java.lang.String getAdditionalData()
           
 void getAdditionalData(java.lang.String additionalData)
           
 java.lang.String getFrameIdentifier()
           
 void getFrameIdentifier(java.lang.String frameIdentifier)
           
 java.lang.String getIdentifier()
           
protected  void setupObjectList()
          Create the order of MP3Object objects that this body expects.
 
Methods inherited from class org.farng.mp3.id3.AbstractID3v2FrameBody
equals, readHeader, writeHeader
 
Methods inherited from class org.farng.mp3.AbstractMP3FragmentBody
appendToObjectList, getBriefDescription, getDescription, getObject, getObjectListIterator, getSize, has6ByteHeader, isSubsetOf, iterator, read, setObject, toString, write
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

FrameBodyLINK

public FrameBodyLINK()
Creates a new FrameBodyLINK object.


FrameBodyLINK

public FrameBodyLINK(FrameBodyLINK body)
Creates a new FrameBodyLINK object.


FrameBodyLINK

public FrameBodyLINK(java.lang.String frameIdentifier,
                     java.lang.String url,
                     java.lang.String additionalData)
Creates a new FrameBodyLINK object.


FrameBodyLINK

public FrameBodyLINK(java.io.RandomAccessFile file)
              throws java.io.IOException,
                     InvalidTagException
Creates a new FrameBodyLINK object.

Throws:
java.io.IOException
InvalidTagException
Method Detail

getAdditionalData

public java.lang.String getAdditionalData()

getAdditionalData

public void getAdditionalData(java.lang.String additionalData)

getFrameIdentifier

public java.lang.String getFrameIdentifier()

getFrameIdentifier

public void getFrameIdentifier(java.lang.String frameIdentifier)

getIdentifier

public java.lang.String getIdentifier()
Specified by:
getIdentifier in class AbstractMP3FileItem

setupObjectList

protected void setupObjectList()
Description copied from class: AbstractMP3FragmentBody
Create the order of MP3Object objects that this body expects. This method needs to be overwritten.

Specified by:
setupObjectList in class AbstractMP3FragmentBody