OSDN Git Service

track
[luz/luz.git] / src / com / lavans / luz2 / http / session / SessionServiceRemote.java
diff --git a/src/com/lavans/luz2/http/session/SessionServiceRemote.java b/src/com/lavans/luz2/http/session/SessionServiceRemote.java
new file mode 100644 (file)
index 0000000..a12bf7e
--- /dev/null
@@ -0,0 +1,78 @@
+/* $Id: SessionServiceRemote.java 94 2008-12-18 11:07:17Z dobashi $\r
+ * 作成日: 2006/01/20 14:30:11\r
+ *\r
+ */\r
+package com.lavans.luz2.http.session;\r
+\r
+import java.io.IOException;\r
+import java.util.Map;\r
+\r
+import org.apache.commons.logging.Log;\r
+import org.apache.commons.logging.LogFactory;\r
+\r
+import com.lavans.luz2.http.session.net.SessionServerConnection;\r
+import com.lavans.luz2.http.session.net.SessionServerConnectionManager;\r
+\r
+/**\r
+ * SessionServiceWebクラス。\r
+ *\r
+ * This is generated by lamen.\r
+ */\r
+public class SessionServiceRemote {\r
+       /** ロガー。debug用 */\r
+       private static Log logger = LogFactory.getLog(SessionServiceRemote.class.getName());\r
+\r
+       /** singleton実体 */\r
+       private static SessionServiceRemote instance = null;\r
+\r
+       /** Apサーバーへの接続 */\r
+       private SessionServerConnectionManager connectionPool = SessionServerConnectionManager.getInstance();\r
+\r
+       /**\r
+        * コンストラクタ。\r
+        * Singletonのため呼び出し不可。\r
+        */\r
+       protected SessionServiceRemote(){\r
+\r
+       }\r
+\r
+       /**\r
+        * インスタンス取得メソッド。\r
+        * @return\r
+        */\r
+       public static SessionServiceRemote getInstance(){\r
+               if(instance==null){\r
+                       instance = new SessionServiceRemote();\r
+               }\r
+               return instance;\r
+       }\r
+\r
+       /**\r
+        * getSession\r
+        */\r
+       @SuppressWarnings("unchecked")\r
+       public Map<String, Object> getRemoteSessionAttribute(String jvm, String sessionId) {\r
+               SessionServerConnection con = null;\r
+               Object result = null;\r
+               try{\r
+                       con = connectionPool.getConnection(jvm);\r
+               } catch (IOException e) {\r
+                       logger.debug("SessionConnection作成失敗。["+ jvm +"]");\r
+                       return null;\r
+               }\r
+\r
+               try{\r
+                       result = con.execute(\r
+                               SessionServiceLocal.class.getName(),            // クラス名\r
+                               "getRemoteSessionAttribute",                            // メソッド名\r
+                               new Class[]{String.class},      // 引数の型\r
+                               new Object[]{sessionId} // 引数\r
+                       );\r
+               } catch (Exception e) {\r
+                       logger.error( "getRemoteSesionAttribute failed.", e);\r
+               }\r
+\r
+               return (Map<String, Object>)result;\r
+       }\r
+}\r
+\r