Main Page
Cookbook/Overview ImageMeister the jcprops file Licensing Binary Installation & Configuration [ Win · Mac · Nix · OSX ] Changes Public API Source Code Main Page Java [ Common · Win · Mac · Nix ] Native Code [ Common · Win · Mac · Nix ] Manifest Native Code Overviews [ Common · Win · Mac · Nix · Strings ] Macros [ General · Native Macros ] Walkthroughs [ Java only · Java and native ] Building [ Win · Mac · Nix · OSX ] Distribution Issues |
All Packages This Package Class Hierarchy Class Search Index
Summary |
public interface AppCommand extends com.jconfig.DumpInfo { // Fields 6 public static final String copyrightString; public static final String kAppCommandOpenApp; public static final String kAppCommandOpenDoc; public static final String kAppCommandPlay; public static final String kAppCommandPrintDoc; public static final String kAppCommandQuit; // Methods 11 public abstract void addArg(Object); public abstract String asString(); public abstract void clearArgs(); public abstract Object getArg(int); public abstract String getCommand(); public abstract int getMaxNumArgs(); public abstract int getNumArgs(); public abstract Class[] getPermissibleArgumentType(int); public abstract boolean isNumArgsUnlimited(); public abstract boolean isSingleInstanceCapable(); public abstract AppCommand redup(); }
Represents a command which can be sent to an application or one of its instances. After retrieving an AppCommand from an AppFile or an AppProcess, you can add arguments to it, if desired, and then tell the AppFile or AppProcess to execute the command. In the case of an AppFile, if the command succeeds, it returns an AppProcess after executing the command.
For instance:
AppFile appFile; AppCommand openCommand; // first obtain the appFile, perhaps using one of the // FileRegistry.getApps() methods. // Then, try to get a command from the app for opening // with a document. openCommand = appFile.getCommand( AppCommand.kAppCommandOpenDoc ); // If 'openCommand' is not null, this app can accept commands of // this type if ( openCommand != null ) { // Add the file we want to open to the command. appCommand.addArg( "c:\\myfile.txt" ); // Tell the app to perform the command, and spawn a new // instance appProcess = appFile.performCommand( appCommand, 0 ); // if appProcess is non-null, the process was created successfully, // and 'c:\myfile.txt' was used to open it }
Some classes which implement this interface do not take arguments; if you try to add an argument to a class of this type, an IllegalArgumentException exception will be thrown. After obtaining an AppCommand object, use the getMaxNumArgs() method to determine how many arguments the object can take.
Currently, for those classes which implement this interface and which accept arguments, 'arg' must a String, a File, or a DiskObject, which is interpreted as follows:
if ( arg == null ) throw an IllegalArgumentException else if ( arg instanceof String ) add it to the list of arguments else if ( arg instanceof File ) add ( (File) arg ).getPath() to the list of arguments; else if ( arg instanceof DiskObject ) add ( ( (DiskObject) arg ).getFile() ).getPath() to the list of arguments else throw an IllegalArgumentExceptionIMPORTANT NOTE: The classes of objects which a specific instance's addArg() method can take is subject to change. Currently, several classes implement this interface; in the future, the objects which can be passed to the addArg() method may change. Use the getPermissibleArgumentType() method to determine exactly which type of object you can pass to the addArg() method.
WINDOWS NOTE: As of version 1.2.1, any arguments which are added to a command will be surrounded with quotes when the command line which is used to perform the command is created. The arguments will not be changed by this class, only when the command line is created.
Cross Reference |
Fields |
· copyrightString | Summary | Top |
public static final String copyrightString
· kAppCommandOpenDoc | Summary | Top |
public static final String kAppCommandOpenDoc
Name of command to open an application with one or more documents.
· kAppCommandOpenApp | Summary | Top |
public static final String kAppCommandOpenApp
Name of command to open an application with no documents.
· kAppCommandPrintDoc | Summary | Top |
public static final String kAppCommandPrintDoc
Name of command to tell an application to print one or more documents.
· kAppCommandPlay | Summary | Top |
public static final String kAppCommandPlay
Name of command to tell an application to play one or more documents.
· kAppCommandQuit | Summary | Top |
public static final String kAppCommandQuit
Name of command to tell an application to quit.
Methods |
· getCommand | Summary | Top |
public abstract String getCommand()
Return the name of this command.
· asString | Summary | Top |
public abstract String asString()
Return the command as a string.
· redup | Summary | Top |
public abstract AppCommand redup()
Create a new instance of this command ( not a clone ).
· getMaxNumArgs | Summary | Top |
public abstract int getMaxNumArgs()
Returns the maximum number of arguments this command can take. -1 is returned if this command can take an unlimited number.
· addArg | Summary | Top |
public abstract void addArg(Object arg)
Adds 'arg' to the end of the list of this command's arguments.
· getNumArgs | Summary | Top |
public abstract int getNumArgs()
Returns the current number of arguments for this command.
· getPermissibleArgumentType | Summary | Top |
public abstract Class[] getPermissibleArgumentType(int position)
Returns an array containing the classes which can be used as arguments for the indicated position in the argument list. If this command does not take commands, null is returned.
· clearArgs | Summary | Top |
public abstract void clearArgs()
Delete any arguments previously added to the command.
· getArg | Summary | Top |
public abstract Object getArg(int which)
Returns the indicated argument in this command's argument list. If 'which' is out of range, null is returned.
· isNumArgsUnlimited | Summary | Top |
public abstract boolean isNumArgsUnlimited()
Returns whether this command can take an unlimited number of arguments.
· isSingleInstanceCapable | Summary | Top |
public abstract boolean isSingleInstanceCapable()
Returns whether this command can be executed without creating a new process.
All Packages This Package Class Hierarchy Class Search IndexFreshly brewed Java API Documentation automatically generated with polardoc Version 1.0.7