com.tffenterprises.music.tag.id3v2
Class Flags_3_0_NoSync

java.lang.Object
  extended by com.tffenterprises.music.tag.id3v2.Flags
      extended by com.tffenterprises.music.tag.id3v2.Flags_3_0
          extended by com.tffenterprises.music.tag.id3v2.Flags_3_0_NoSync
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable

 class Flags_3_0_NoSync
extends Flags_3_0
implements java.io.Serializable, java.lang.Cloneable

Flags_3_0 implements the flags for version 3.0 of ID3v2 (aka ID3v2.3.0). Flags_3_0_NoSync behaves the same as its superclass, except that it does no unsynchronization of the output. It is written as a bug verification for iTunes 3.0, which is suspected of not handling tag de-unsynchronization correctly (or at all).

Version:
1.0d1 $Date: 2002/09/19 20:55:31 $
Author:
Guillaume Lessard

Nested Class Summary
 
Nested classes/interfaces inherited from class com.tffenterprises.music.tag.id3v2.Flags
Flags.InputProcessingStream
 
Field Summary
 
Fields inherited from class com.tffenterprises.music.tag.id3v2.Flags_3_0
CRC_EXTFLAG, EXTENDED_HEADER_FLAG
 
Fields inherited from class com.tffenterprises.music.tag.id3v2.Flags
DEFAULT, EXPERIMENTAL_FLAG, UNSYNCHRONIZATION_FLAG
 
Constructor Summary
protected Flags_3_0_NoSync()
          Default constructor.
protected Flags_3_0_NoSync(byte flags)
          Constructs a Flags_3_0 object with the given flags and zeroed extended flags.
protected Flags_3_0_NoSync(byte flags, short extFlags)
          Constructs a Flags_3_0 object with the given flags extended flags.
 
Method Summary
protected  java.io.OutputStream processUnsynchronization(java.io.OutputStream out)
          This bypasses unsynchronization in ID3v2.3 tags.
 
Methods inherited from class com.tffenterprises.music.tag.id3v2.Flags_3_0
checkExtFlagMask, checkVersion, equals, getExtFlags, processCRC32ExtFlag, processExtendedFlags, processInput, processOutput, readExtendedHeader, setExtFlagMask, setExtFlags, toString, unsetExtFlagMask, updateChecksum, usesCRC32, usesExtendedHeader
 
Methods inherited from class com.tffenterprises.music.tag.id3v2.Flags
check, clone, getChecksum, getFlags, getNewInstance, getNewInstance, getNewInstance, getVersion, hashCode, isChanged, isMarkedExperimental, set, setChanged, setFlags, unset, updateChecksum, usesUnsynchronization
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Flags_3_0_NoSync

protected Flags_3_0_NoSync()
Default constructor. Constructs a Flags_3_0 object with zeroed flags. This should not be called by normal users of Flags objects. Use the factory method newInstance() instead.


Flags_3_0_NoSync

protected Flags_3_0_NoSync(byte flags)
Constructs a Flags_3_0 object with the given flags and zeroed extended flags. This should not be called by normal users of Flags objects. Use the factory method newInstance() instead.

Parameters:
flags - the flags used to initialize the object.

Flags_3_0_NoSync

protected Flags_3_0_NoSync(byte flags,
                           short extFlags)
Constructs a Flags_3_0 object with the given flags extended flags. This should not be called by normal users of Flags objects. Use the factory method newInstance() instead.

Parameters:
flags - the flags used to initialize the object.
extFlags - the extended flags used to initialize the object.
Method Detail

processUnsynchronization

protected java.io.OutputStream processUnsynchronization(java.io.OutputStream out)
This bypasses unsynchronization in ID3v2.3 tags. This class is a bug verification for iTunes 3.0, which is suspected of not handling tag de-unsynchronization correctly (or at all).

Overrides:
processUnsynchronization in class Flags
Parameters:
out - an output stream to which the tag is being written.
Returns:
at output stream to which the tag is to be written.