org.jaudiotagger.tag.id3
Class ID3Frames

java.lang.Object
  extended by org.jaudiotagger.tag.datatype.AbstractValuePair<java.lang.String,java.lang.String>
      extended by org.jaudiotagger.tag.datatype.AbstractStringStringValuePair
          extended by org.jaudiotagger.tag.id3.ID3Frames
Direct Known Subclasses:
ID3v22Frames, ID3v23Frames, ID3v24Frames, ID3v2ChapterFrames

public abstract class ID3Frames
extends AbstractStringStringValuePair

Subclasses Defines ID3 frames for their Tag Version

Here we specify how frames are mapped between different Tag Versions

Version:
$Id: ID3Frames.java,v 1.18 2009/11/12 15:42:57 paultaylor Exp $
Author:
Paul Taylor

Field Summary
protected  java.util.TreeSet<java.lang.String> binaryFrames
          These frames are Binary
protected  java.util.TreeSet<java.lang.String> commonFrames
          These frames are Common , this is a loose term
static java.util.Map<java.lang.String,java.lang.String> convertv22Tov23
          Mapping from v22 to v23
static java.util.Map<java.lang.String,java.lang.String> convertv23Tov22
           
static java.util.Map<java.lang.String,java.lang.String> convertv23Tov24
           
static java.util.Map<java.lang.String,java.lang.String> convertv24Tov23
           
protected  java.util.TreeSet<java.lang.String> discardIfFileAlteredFrames
          These frames should be lost if file changes
protected  java.util.TreeSet<java.lang.String> extensionFrames
          These frames are extensions to the Specification for that Tag Version
static java.util.Map<java.lang.String,java.lang.String> forcev22Tov23
           
static java.util.Map<java.lang.String,java.lang.String> forcev23Tov22
           
static java.util.Map<java.lang.String,java.lang.String> forcev23Tov24
           
static java.util.Map<java.lang.String,java.lang.String> forcev24Tov23
           
protected  java.util.TreeSet<java.lang.String> multipleFrames
          Holds frames whereby multiple occurences are allowed
protected  java.util.TreeSet<java.lang.String> supportedFrames
          These frames are part of the Official Specification for that Tag Version
 
Fields inherited from class org.jaudiotagger.tag.datatype.AbstractStringStringValuePair
lkey
 
Fields inherited from class org.jaudiotagger.tag.datatype.AbstractValuePair
idToValue, iterator, value, valueList, valueToId
 
Constructor Summary
ID3Frames()
           
 
Method Summary
 boolean isBinary(java.lang.String frameID)
           
 boolean isCommon(java.lang.String frameID)
           
 boolean isDiscardIfFileAltered(java.lang.String frameID)
          If file changes discard these frames
 boolean isExtensionFrames(java.lang.String frameID)
           
 boolean isMultipleAllowed(java.lang.String frameID)
          Are multiple ocurrences of frame allowed
 boolean isSupportedFrames(java.lang.String frameID)
           
private static void loadID3v22ID3v23Mapping()
           
private static void loadID3v23ID3v24Mapping()
           
 
Methods inherited from class org.jaudiotagger.tag.datatype.AbstractStringStringValuePair
createMaps, getIdForValue, getValueForId
 
Methods inherited from class org.jaudiotagger.tag.datatype.AbstractValuePair
getAlphabeticalValueList, getIdToValueMap, getSize, getValueToIdMap
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

multipleFrames

protected java.util.TreeSet<java.lang.String> multipleFrames
Holds frames whereby multiple occurences are allowed


discardIfFileAlteredFrames

protected java.util.TreeSet<java.lang.String> discardIfFileAlteredFrames
These frames should be lost if file changes


supportedFrames

protected java.util.TreeSet<java.lang.String> supportedFrames
These frames are part of the Official Specification for that Tag Version


extensionFrames

protected java.util.TreeSet<java.lang.String> extensionFrames
These frames are extensions to the Specification for that Tag Version


commonFrames

protected java.util.TreeSet<java.lang.String> commonFrames
These frames are Common , this is a loose term


binaryFrames

protected java.util.TreeSet<java.lang.String> binaryFrames
These frames are Binary


convertv22Tov23

public static final java.util.Map<java.lang.String,java.lang.String> convertv22Tov23
Mapping from v22 to v23


convertv23Tov22

public static final java.util.Map<java.lang.String,java.lang.String> convertv23Tov22

forcev22Tov23

public static final java.util.Map<java.lang.String,java.lang.String> forcev22Tov23

forcev23Tov22

public static final java.util.Map<java.lang.String,java.lang.String> forcev23Tov22

convertv23Tov24

public static final java.util.Map<java.lang.String,java.lang.String> convertv23Tov24

convertv24Tov23

public static final java.util.Map<java.lang.String,java.lang.String> convertv24Tov23

forcev23Tov24

public static final java.util.Map<java.lang.String,java.lang.String> forcev23Tov24

forcev24Tov23

public static final java.util.Map<java.lang.String,java.lang.String> forcev24Tov23
Constructor Detail

ID3Frames

public ID3Frames()
Method Detail

isDiscardIfFileAltered

public boolean isDiscardIfFileAltered(java.lang.String frameID)
If file changes discard these frames

Parameters:
frameID -
Returns:

isMultipleAllowed

public boolean isMultipleAllowed(java.lang.String frameID)
Are multiple ocurrences of frame allowed

Parameters:
frameID -
Returns:

isSupportedFrames

public boolean isSupportedFrames(java.lang.String frameID)
Parameters:
frameID -
Returns:
true if frames with this id are part of the specification

isCommon

public boolean isCommon(java.lang.String frameID)
Parameters:
frameID -
Returns:
true if frames with this id are considered common

isBinary

public boolean isBinary(java.lang.String frameID)
Parameters:
frameID -
Returns:
true if frames with this id are binary (non textual data)

isExtensionFrames

public boolean isExtensionFrames(java.lang.String frameID)
Parameters:
frameID -
Returns:
true if frame is a known extension

loadID3v23ID3v24Mapping

private static void loadID3v23ID3v24Mapping()

loadID3v22ID3v23Mapping

private static void loadID3v22ID3v23Mapping()