-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathConnector.java
executable file
·55 lines (46 loc) · 1.77 KB
/
Connector.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
package bc.connection;
import java.io.PrintStream;
import java.sql.*;
public class Connector {
private static SessionPoolConnector poolConnector;
static{
// TODO set realize class here
//poolConnector=new SessionPoolConnector(FirebirdConnect.class,new Integer(10));
poolConnector=new SessionPoolConnector(HibernateOracleConnect.class,new Integer(10));
}
/** Ïîëó÷èòü Connection èç POOL ïî óêàçàííîìó ñåññèîííîìó èäåíòèôèêàòîðó
* @param sessionId - óíèêàëüíûé íîìåð ñåññèè, ïî êîòîðîìó íóæíî ïîëó÷èòü Connection
* */
public synchronized static Connection getConnection(String sessionId){
return poolConnector.getConnection(sessionId);
}
/** ïîëó÷èòü Connection íà îñíîâàíèè ââåäåííûõ äàííûõ
* @param userName èìÿ ïîëüçîâàòåëÿ
* @param password ïàðîëü
* @param sessionId óíèêàëüíûé íîìåð ñåññèè
* @return Connection
* */
public synchronized static Connection getConnection(String userName,
String password,
String sessionId){
return poolConnector.getConnection(userName,
password,
sessionId);
}
/** âåðíóòü Connection â POOL */
public synchronized static void closeConnection(Connection connection){
poolConnector.closeConnection(connection);
}
/** óäàëèòü íîìåð ñåññèè èç ñâÿçêè sessionId=UserName*/
public static void removeSessionId(String sessionId){
poolConnector.removeSessionId(sessionId);
}
/** âûâåñòè â PrintStream ñîñòîÿíèå âñåõ ñîåäèíåíèé */
public static void printAllConnectionCount(PrintStream out){
poolConnector.printConnection(out);
}
/** óäàëèòü ïî óêàçàííîìó ïîëüçîâàòåëþ âñå ñîåäèíåíèÿ ñ áàçîé*/
public static boolean dropUserConnection(String userName){
return poolConnector.removeSessionByUser(userName);
}
}