KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > demo > bank > concurrency > Client


1 package demo.bank.concurrency;
2
3
4
5 import java.io.*;
6
7 import org.omg.CosNaming.*;
8
9 import org.omg.CosTransactions.*;
10
11
12
13 public class Client
14
15 {
16
17     public static void main( String JavaDoc[] args )
18
19     {
20
21     try
22
23     {
24
25         TheBank bank;
26
27         AccountManager acc_mgr;
28
29             TransactionFactory transactionFactory;
30
31         org.omg.CORBA.ORB JavaDoc orb = org.omg.CORBA.ORB.init(args,null);
32
33         
34
35         NamingContextExt nc = NamingContextExtHelper.narrow(orb.resolve_initial_references("NameService"));
36
37         NameComponent [] name = new NameComponent[1];
38
39         name[0] = new NameComponent("DigiBank", "server");
40
41
42
43             acc_mgr = AccountManagerHelper.narrow( nc.resolve(name));
44
45
46
47             name[0] = new NameComponent( "TransactionService", "service");
48
49             transactionFactory = TransactionFactoryHelper.narrow( nc.resolve(name));
50
51
52
53         System.out.println("> Opening Accounts Acc1 and Acc 2.");
54
55
56
57         Account a1 = acc_mgr.open("Acc1", (float)199.99);
58
59         Account a2 = acc_mgr.open("Acc2", (float)50.08);
60
61
62
63             // Create transaction without timeout;
64

65         Control control = transactionFactory.create(0);
66
67
68
69         System.out.println("\n--- Balances ---");
70
71         System.out.println("Acc1 : " + a1.get_balance(control) );
72
73         System.out.println("Acc2 : " + a2.get_balance(control) );
74
75
76
77         if( ((org.omg.CORBA.Object JavaDoc)acc_mgr)._is_a("IDL:demo/transaction/TheBank:1.0"))
78
79         {
80
81         bank = TheBankHelper.narrow(acc_mgr );
82
83     
84
85         System.out.println("> Transfer 100,- from Acc 1 to Acc 2.");
86
87         bank.transfer(a1, a2, 100);
88
89     
90
91         System.out.println("\n--- Balances ---");
92
93         System.out.println("Acc1 : " + a1.get_balance(control) );
94
95         System.out.println("Acc2 : " + a2.get_balance(control) );
96
97         }
98
99
100
101     }
102
103     catch ( Exception JavaDoc e )
104
105     {
106
107         e.printStackTrace();
108
109     }
110
111     }
112
113 }
114
115
116
117
Popular Tags