adding more base objects, started on stack layer. added config parser
[OpenSRF.git] / src / java / org / opensrf / ClientSession.java
1 package org.opensrf;
2 import java.util.Date;
3 import java.util.List;
4 import java.util.ArrayList;
5 import java.util.Random;
6
7 import org.opensrf.util.*;
8
9
10 /**
11  * Models an OpenSRF client session.
12  */
13 public class ClientSession extends Session {
14
15     /** The remote service to communicate with */
16     private String service;
17     private String domain;
18     private String router;
19     private String origRemoteNode;
20     private int nextId;
21     private List<Request> requests;
22
23     /**
24      * @param service The remove service to communicate with
25      */
26     public ClientSession(String service) throws ConfigException {
27         this.service = service;
28         domain = (String) Config.getFirst("/domain/domains");
29         router = (String) Config.getString("/router_name");
30         setRemoteNode(router + "@" + domain + "/" + service);
31         origRemoteNode = getRemoteNode();
32         requests = new ArrayList<Request>();
33         nextId = 0;
34         long time = new Date().getTime();
35         Random rand = new Random(time);
36         thread = rand.nextInt()+""+rand.nextInt()+""+time;
37         cacheSession();
38     }
39 }
40