Source code: com/act365/net/tcp/TCPSession.java
1 /*
2 * JSocket Wrench
3 *
4 * Copyright (C) act365.com October 2003
5 *
6 * Web site: http://www.act365.com/wrench
7 * E-mail: developers@act365.com
8 *
9 * The JSocket Wrench library adds support for low-level Internet protocols
10 * to the Java programming language.
11 *
12 * This program is free software; you can redistribute it and/or modify it
13 * under the terms of the GNU General Public License as published by the Free
14 * Software Foundation; either version 2 of the License, or (at your option)
15 * any later version.
16 *
17 * This program is distributed in the hope that it will be useful,
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
20 * Public License for more details.
21 *
22 * You should have received a copy of the GNU General Public License along with
23 * this program; if not, write to the Free Software Foundation, Inc.,
24 * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
25 */
26
27 package com.act365.net.tcp ;
28
29 /**
30 The singleton class TCPSession manages startup and closedown tasks.
31 */
32
33 public class TCPSession {
34
35 static TCPSession session = new TCPSession();
36
37 /**
38 * Starts a session.
39 */
40
41 public static void start() {
42
43 if( ! TCPJListener.getInstance().isAlive() ){
44 TCPJListener.getInstance().start();
45 }
46
47 while( ! TCPJListener.getInstance().isAlive() );
48 }
49
50 /**
51 * Access the sole <code>TCPSession</code> object.
52 */
53
54 public static TCPSession getInstance() {
55 return session ;
56 }
57
58 /**
59 * Terminates a session.
60 */
61
62 public static void terminate() {
63 ISNCounter.terminate();
64 TCPJListener.getInstance().terminate();
65 }
66 }
67