|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--com.tuneology.avm.burner.ShellBurner
An abstract class implementing a shell command for writing CD-R data.
Field Summary | |
protected AtipInfo |
atipInfo
|
protected CDRDrive |
drive
|
protected int |
maxMediaWriteSpeed
|
protected java.lang.String |
msInfo
|
protected ProgressListener |
pm
|
protected java.lang.String |
shellEncoding
|
Constructor Summary | |
protected |
ShellBurner(CDRDrive drive)
|
Method Summary | |
void |
burnSession(int speed,
int mode,
boolean multi,
java.lang.String mcn,
java.lang.String[] tracks,
boolean[] types,
DiscInfo info,
java.io.File tempDir,
ProgressListener pm)
Burns a session on a CD-R. |
protected abstract void |
cleanupErase()
|
protected abstract void |
cleanupMsinfo()
|
protected abstract void |
cleanupSession(java.io.File tempDir)
|
void |
createCopy(CDDrive src,
int speed,
boolean onTheFly,
ProgressListener pm)
|
void |
erase(int mode)
|
protected abstract java.util.ArrayList |
getAtipCmd()
Returns the command required to read the ATIP info from the disc. |
AtipInfo |
getAtipInfo()
|
protected abstract java.util.ArrayList |
getCopyCmd(CDDrive src,
int speed,
boolean onTheFly)
Returns the command required to create a copy of the disc in the src drive. |
protected abstract java.util.ArrayList |
getEraseCmd(int mode)
Returns the command required to erase the disc in the given mode. |
java.lang.String |
getMsinfo()
Returns multisession info for the disc in the drive. |
protected abstract java.util.ArrayList |
getMsinfoCmd()
Returns the command required to read the multisession info from the disc. |
protected abstract java.util.ArrayList |
getSessionCmd(int speed,
int mode,
boolean multi,
java.lang.String mcn,
java.lang.String[] tracks,
boolean[] types,
DiscInfo cdText,
java.io.File tempDir)
|
protected abstract java.util.ArrayList |
getStreamingCmd(int speed,
int mode,
boolean multi,
java.lang.String mcn,
boolean type,
TocEntry cdText)
|
protected abstract boolean |
readAtipOutput(java.lang.String str)
Called for each line of output from the program while reading the ATIP info from a disc. |
protected abstract boolean |
readCopyOutput(java.lang.String str)
Called for each line of output from the program while copying a disc. |
protected abstract boolean |
readEraseOutput(java.lang.String str)
Called for each line of output from the program while erasing a disc. |
protected abstract boolean |
readMsinfoOutput(java.lang.String str)
Called for each line of output from the program while reading the multisession info from a disc. |
protected abstract boolean |
readSessionOutput(java.lang.String str)
Called for each line of output from the program while writing a session. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
protected CDRDrive drive
protected ProgressListener pm
protected java.lang.String msInfo
protected int maxMediaWriteSpeed
protected AtipInfo atipInfo
protected java.lang.String shellEncoding
Constructor Detail |
protected ShellBurner(CDRDrive drive)
Method Detail |
public void burnSession(int speed, int mode, boolean multi, java.lang.String mcn, java.lang.String[] tracks, boolean[] types, DiscInfo info, java.io.File tempDir, ProgressListener pm) throws java.lang.Exception
speed
- The speed at which to burn the CD.mode
- The mode in which to burn the CD, one of: DAO_MODE, RAW96R_MODE, RAW16_MODE, RAW96P_MODE.
If the DUMMY_MODE bit is set, the operation is tested but no data is burned to disc.multi
- When burning multisession discs, set this flag to true for all sessions except the last.mcn
- Media Catalog Number for audio CD (optional).tracks
- A list of files containing track data.types
- A list of boolean values, true if the corresponding track is data, false for audio.
If null, assumes all tracks are audio.info
- The CD-TEXT info for each audio track (optional). The values written are:
DiscInfo.artist, TocEntry.artist, TocEntry.album, TocEntry.title.tempDir
- The directory to use for temp files.pm
- The status indicator (optional).java.lang.Exception
- if there is an error.public void createCopy(CDDrive src, int speed, boolean onTheFly, ProgressListener pm) throws java.lang.Exception
public java.lang.String getMsinfo() throws java.lang.Exception
java.io.IOException
- if there is an error reading or writing a file.java.lang.InterruptedException
- if the java thread is interrupted.ProcessException
- if there is an error running a process.public void erase(int mode) throws java.lang.Exception
java.lang.Exception
- public AtipInfo getAtipInfo() throws java.lang.Exception
java.lang.Exception
- protected abstract java.util.ArrayList getStreamingCmd(int speed, int mode, boolean multi, java.lang.String mcn, boolean type, TocEntry cdText) throws java.lang.Exception
java.lang.Exception
- protected abstract java.util.ArrayList getSessionCmd(int speed, int mode, boolean multi, java.lang.String mcn, java.lang.String[] tracks, boolean[] types, DiscInfo cdText, java.io.File tempDir) throws java.lang.Exception
java.lang.Exception
- protected abstract boolean readSessionOutput(java.lang.String str) throws java.lang.Exception
str
- the line of output.java.lang.Exception
- protected abstract void cleanupSession(java.io.File tempDir) throws java.lang.Exception
protected abstract void cleanupErase() throws java.lang.Exception
protected abstract void cleanupMsinfo() throws java.lang.Exception
protected abstract java.util.ArrayList getEraseCmd(int mode)
mode
- the desired erase modeprotected abstract boolean readEraseOutput(java.lang.String str)
str
- the line of output.protected abstract java.util.ArrayList getMsinfoCmd()
protected abstract boolean readMsinfoOutput(java.lang.String str)
str
- the line of output.protected abstract java.util.ArrayList getAtipCmd()
protected abstract boolean readAtipOutput(java.lang.String str)
str
- the line of output.protected abstract java.util.ArrayList getCopyCmd(CDDrive src, int speed, boolean onTheFly) throws java.lang.Exception
java.lang.Exception
- protected abstract boolean readCopyOutput(java.lang.String str) throws java.lang.Exception
str
- the line of output.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |