Appendix B HORB Commands


B.1 HORBC: The HORB Compiler

HORBC Command line syntax

horbc [options] file...

Description

'horbc' is the compiler for the HORB system. horbc compiles from Java source files into Java class files. A input file can be either a Java source file or a Java classname (fully qualified class/inteface name, not class file). When you compile 'foo.java' by;

        C:> horbc foo.java

horbc generates foo.class, foo_Proxy.java, foo_Proxy.class, foo_Skeleton.java and foo_Skeleton.class. If you give a classname instead of a Java source file, for example foo, by;

        C:> horbc foo

the same files except foo.class are generated. 

Classes that are remotely called or remotely passed have to be compiled by horbc. Other classes that are client side classes need not be compiled by horbc. These classes should be compiled by javac (Sun Java compiler). However, you can use horbc instead of javac. In this case, use -c option with horbc to eliminate generating a proxy class and a skeleton class, like;

        C:> horbc -c Client.java

Options

-? or -h or -help
Show help message.
-v or -verbose
Show debug output of HORBC.
-version
Show HORBC version.
-verboseproxy
Proxy and Skeleton generate debug messages.
-c
Don't generate Proxy and Skeleton. Foo.java is just compiled into Foo.class.
-major num
set major version number of proxy and skeleton classes to num. When a client calls a remote object via a proxy and a skeleton, these major version numbers are checked to see the versions match. Usually you should increment num by one, when you alter signature of the class. The value range of num is short.
-minor num
set minor version number of proxy and skeleton classes to num. This minor version number is not checked.
-ignoresuper
Ignores superclass of the class. You don't need to generate proxy/skeleton classes for the superclass. This flag is used when you compile a subclass of Applet for example.
-nomethodsynch
By default, all stub methods in a proxy class are synchronous methods so that the proxy can be shared by some threads. (It does not mean a remote method is a synchronous method.) This option makes methods non-synchronous.
-proxyonly
Generate proxy but not skeleton.
-skeletononly
Generate skeleton class but not Proxy.
-nocompile
Don't compile _Proxy.java and _Skeleton.java into class files.
-delete
Delete _PRoxy.java and _Skeleton.java.
-O
Turn on optimizer.
-g
Generate debug symbol tables.
-warn
Turns on generating warning messages.
-d <dir> | -dir <dir>
Specifies the root directory to store class files. When you specify;
horbc -d d:\users\hirano foo.java
causes class package1.foo in foo.java to be saved in:
d:\users\hirano\package1\foo.class
-classpath <paths>
Overrrides CLASSPATH used to look up classes. See the manual of Sun javac.

NOTE

You should install Sun Java JDK before using horbc.


B.2 HORB: The HORB Server

HORB Command Line Syntax

     horb [options]

Description

'horb' is the server program of the HORB system. You have to run this program in order to run your server objects. In this context a server object means an object that is remotely created by a client object residing on another machine. Server objects are automatically loaded from class files by requests from client objects and executed in the same process as horb. Thus, you have to set the CLASSPATH environment variable to point to the correct directory containing your class files before invoking horb.

Options

-? or -h or -help
Show help message.
-v or -verbose
Show debug output of HORB server.
-version
Show HORBC version.
-port <num> or -p <num>
Use port number <num> to accept connections
-conf file
Read configuration file.
-start class objectID
Start class as a daemon object named objectID. Example: -start horb.examples.clientServer.Server myServer. If you need to start multiple objects, use a configuration file.
-acl file|URL
Load an ACL file from file or URL. An example of URL is horb://hostname/SystemACLMaster#ACL_NAME. If you need to load multiple ACL files, use a configuration file.
-aclmaster
Make this HORB process an ACL master server. ACL clients may download ACL files from this HORB process.
-ioci <class>
Specify Inter-Object Communication Interface class
(default horb.orb.BasicIOCI)
If you make a new IOCI class and want to use it as a default protocol, supply the classname by this option.

Command line options override configuration file.


B.3 HORBSTAT: Show HORB Server statistics

HORBSTAT Command Line Syntax

     horbstat [options] [URL]

Description

'horbstat' shows various facts of a specified HORB server. They includes information about:

URL specifies hostname of a HORB server or objectID to be displayed.

Options

-? or -h or -help
Show help message.
-version
Show HORBSTAT version.
-port <num>
Use port number <num> to connect to a HORB process.
-host <hostname>
Connect to hostname.
-server
Show server statistics.
-o <objectID>
Show info about objectID.
-t or -thread
Show thread info, too.
-s <num>
Show info repleatedly in <num> interval.
-user <username>
Connect to server as username.
-passwd <password>
Connect to server with password.

Examples


B.4 FOFRUN: Run a frozen object

FOFRUN Command Line Syntax

     fofrun [options] filename.fof

Description

'fofrun' runs a frozen object. The frozen object must be a Restartable object.

Options

-? or -h or -help
Show help message.
-version
Show FOFRUN version.
-autosave [file]
Save the object after execution. If file is omitted, the same file is used.
-info
just show information fo the given foffile.

Examples