public ID3v11Tag(AbstractTag mp3tag)
public ID3v11Tag()
    public ID3v11Tag(AbstractTag mp3tag)    {        release = 1;        majorVersion = 1;        revision = 0;        if (mp3tag != null)        {            if (mp3tag instanceof ID3v1Tag)            {                if (mp3tag instanceof ID3v11Tag)                {                    throw new UnsupportedOperationException("Copy Constructor not called. Please type cast the argument");                }                if (mp3tag instanceof ID3v1Tag)                {                    // id3v1_1 objects are also id3v1 objects                    ID3v1Tag id3old = (ID3v1Tag) mp3tag;                    this.title = new String(id3old.title);                    this.artist = new String(id3old.artist);                    this.album = new String(id3old.album);                    this.comment = new String(id3old.comment);                    this.year = new String(id3old.year);                    this.genre = id3old.genre;                }            }            else            {                // first change the tag to ID3v2_4 tag.                // id3v2_4 can take any tag.                ID3v24Tag id3tag;                id3tag = new ID3v24Tag(mp3tag);                ID3v24Frame frame;                String text;                if (id3tag.hasFrame("TIT2"))                {                    frame = (ID3v24Frame) id3tag.getFrame("TIT2");                    text = (String) ((FrameBodyTIT2) frame.getBody()).getText();                    this.title = ID3Tags.truncate(text, 30);                }                if (id3tag.hasFrame("TPE1"))                {                    frame = (ID3v24Frame) id3tag.getFrame("TPE1");                    text = (String) ((FrameBodyTPE1) frame.getBody()).getText();                    this.artist = ID3Tags.truncate(text, 30);                }                if (id3tag.hasFrame("TALB"))                {                    frame = (ID3v24Frame) id3tag.getFrame("TALB");                    text = (String) ((FrameBodyTALB) frame.getBody()).getText();                    this.album = ID3Tags.truncate(text, 30);                }                if (id3tag.hasFrame("TDRC"))                {                    frame = (ID3v24Frame) id3tag.getFrame("TDRC");                    text = (String) ((FrameBodyTDRC) frame.getBody()).getText();                    this.year = ID3Tags.truncate(text, 4);                }                if (id3tag.hasFrameOfType("COMM"))                {                    Iterator iterator = id3tag.getFrameOfType("COMM");                    text = "";                    while (iterator.hasNext())                    {                        frame = (ID3v24Frame) iterator.next();                        text += (((FrameBodyCOMM) frame.getBody()).getText() + " ");                    }                    this.comment = ID3Tags.truncate(text, 28);                }                if (id3tag.hasFrame("TCON"))                {                    frame = (ID3v24Frame) id3tag.getFrame("TCON");                    text = (String) ((FrameBodyTCON) frame.getBody()).getText();                    try                    {                        this.genre = (byte) ID3Tags.findNumber(text);                    }                    catch (TagException ex)                    {                    }                }                if (id3tag.hasFrame("TRCK"))                {                    frame = (ID3v24Frame) id3tag.getFrame("TRCK");                    text = (String) ((FrameBodyTRCK) frame.getBody()).getText();                    try                    {                        this.track = (byte) ID3Tags.findNumber(text);                    }                    catch (TagException ex)                    {                    }                }            }        }    }