- }
-
- public static int num() {
- synchronized(sessions) {
- return(sessions.size());
+
+ public int num() {
+ synchronized(sessions) {
+ return(sessions.size());
+ }
+ }
+
+ public Session get(String id) {
+ long idl;
+ try {
+ idl = Long.parseLong(id);
+ } catch(NumberFormatException e) {
+ return(null);
+ }
+ synchronized(sessions) {
+ return(sessions.get(idl));
+ }
+ }
+
+ public synchronized Session create(Request req) {
+ MemorySession sess = new MemorySession(req);
+ synchronized(sessions) {
+ sessions.put(sess.id, sess);
+ }
+ return(sess);