KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > calculator > Client


1 /*
2  * Copyright (c) 2003 by The Jackass Team
3  * Licensed under the Open Software License version 2.0
4  */

5 package calculator;
6
7 import org.omg.CORBA.ORB JavaDoc;
8 import org.omg.CosNaming.NamingContextExt JavaDoc;
9 import org.omg.CosNaming.NamingContextExtHelper JavaDoc;
10
11 /**
12  * Client of calculator::ComplexCalculator CORBA Interface.
13  * This a truly 100% pure CORBA Client accesing a Jackass
14  * Staless Component
15  * @author Carlos Arévalo, Nelson Arapé
16  */

17 public final class Client
18 {
19     /**
20      * Start the client. It resolves a calculator::ComplexCalculator
21      * on the Name Service and then makes a simple call.
22      * @param args command line arguments (not used)
23      */

24     public static void main(String JavaDoc[] args)
25     {
26         try
27         {
28             ORB JavaDoc orb = org.omg.CORBA.ORB.init(args, null);
29             org.omg.CORBA.Object JavaDoc obj = null;
30             obj = orb.resolve_initial_references("NameService");
31             NamingContextExt JavaDoc rootContext = NamingContextExtHelper.narrow(obj);
32
33             obj = rootContext.resolve_str("Calculator/ComplexCalculator");
34             ComplexCalculator complexCalc = ComplexCalculatorHelper.narrow(obj);
35             System.out.println("ComplexCalculator resolved");
36
37             Complex r = complexCalc.add(new Complex(2.0, 3.0), new Complex(5.0, 4.0));
38             System.out.println("Complex result = (" + r.r + ", " + r.i + ")");
39         }
40         catch (Exception JavaDoc e)
41         {
42             System.out.println("An exception has been caught" + e);
43         }
44     }
45 }
46
Popular Tags