This example includes a server process that, on initialisation, binds a ServiceProvider (singleton) object into the root context of the OpenFusion Naming Service. A number of NamingVideoCompany objects are then created by the server for management by the ServiceProvider. When instantiated, each NameVideoCompany object binds itself into the Naming Service under a context that describes the video feed types and video titles it has on offer. The Client process resolves a reference to the ServiceProvider and to an arbitrary NameVideoCompany, and then invokes remote function calls on the objects that describe the object properties.
These instructions are based on the Solaris gcc3.2 compiler makefiles.
ACE_ROOT=<TAO install dir>; export ACE_ROOT
TAO_ROOT=<TAO install dir>; export TAO_ROOT
SHLIB_PATH=$TAO_ROOT/lib; export SHLIB_PATH
LD_LIBRARY_PATH=$TAO_ROOT/lib:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH
PATH=$PATH:$TAO_ROOT/bin; export PATH
INSLIB=$TAO_ROOT/lib; export INSLIB
PATH=/usr/local/gcc-3.2/bin:/usr/ccs/bin:$PATH; export PATH
LD_LIBRARY_PATH=/usr/local/gcc-3.2/lib:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH
<TAO install dir>/examples/cc
directory.
make
command to run the makefile. This will compile all of the OpenFusion examples.
TAO_ROOT=<TAO install dir>
, where
<TAO install dir>
is the location into which you have installed TAO.
<TAO install dir>\examples\cc\cc.dsw
. Double-click on the project file to load
it into
Microsoft Visual C++. When loaded, change the Common project from debug
mode to release mode using the Build | Set Active Configuration menu option.
UNIX:
Ensure that the environment variable LD_LIBRARY_PATH
includes the path
to where the common files and the video files were compiled:
LD_LIBRARY_PATH=<TAO install dir>/examples/cc/Common:<TAO install dir>/examples/cc/Naming/video:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH
Change to <TAO install dir>/examples/cc/Naming/video/server
Windows NT: Start a DOS window. Ensure that your path contains:
<TAO
install dir>\bin;<TAO install dir>\examples\cc\bin
Ensure that the OpenFusion Naming Service is running. In order to run the OpenFusion Naming Service you must first install the OpenFusion TCS - JacORB with OpenFusion CORBA Services distribution. This can be obtained from the downloads page by following the OpenFusion CORBA Products software link.
Start the server:
namingvideoserver -ORBInitRef NameService=file://<OF_INSTALL_DIR>/domains/OpenFusion/localhost/NameService/NameSingleton/NameSingleton.ior
Where OF_INSTALL_DIR
is the OpenFusion TCS - JacORB with OpenFusion
CORBA Services installation directory.
The server will respond with the prompt "Ready..." when it is ready to receive remote function calls.
On UNIX, change to
<TAO install dir>/examples/cc/Naming/video/client
directory.
In a new window, ensure that all environment variables are set up as above and start the client:
namingvideoclient -ORBInitRef NameService=file://<OF_INSTALL_DIR>/domains/OpenFusion/localhost/NameService/NameSingleton/NameSingleton.ior
This will resolve the Naming Service and, from a context, the service provider reference and an arbitrary video-supply company reference. The client will then make a remote function call to discover what video titles are on offer by that company.