diff --git a/src/main/java/nlib/user/service/NlibLoginVO.java b/src/main/java/nlib/user/service/NlibLoginVO.java index aaf9f15d..94d12e8b 100644 --- a/src/main/java/nlib/user/service/NlibLoginVO.java +++ b/src/main/java/nlib/user/service/NlibLoginVO.java @@ -1,6 +1,10 @@ package nlib.user.service; import java.io.Serializable; +import java.util.Base64; + +import nlib.cmm.NlibCommonController; +import nlib.util.StringUtil; /** *
@@ -26,9 +30,6 @@ import java.io.Serializable;
*/
public class NlibLoginVO implements Serializable {
- /**
- *
- */
private static final long serialVersionUID = -8274004534207618049L;
private String userId; /* 사용자아이디 (ex: U1000000001) */
@@ -65,6 +66,31 @@ public class NlibLoginVO implements Serializable {
private String boardRowCnt; /* 글목록수 */
private String authKey; /* 로그인 인증키 */
+
+
+ /**
+ * 로그인인증키값을 리턴한다. 만일 존재하지 않을 경우, userId를 기반으로 인증키를 생성하여 리턴한다.
+ * 로그인되지 않은 자(userId값이 존재하지 않는경우)에 대해서는 null을 리턴한다.
+ *
+ * @return
+ */
+ public String getAndCreateAuthKey() {
+ return getAndCreateAuthKey(null);
+ }
+
+ /**
+ * 로그인인증키값을 리턴한다. 만일 존재하지 않을 경우, userId를 기반으로 인증키를 생성하여 리턴한다.
+ * 로그인되지 않은 자(userId값이 존재하지 않는경우)에 대해서는 세션ID를 기반으로한 손님용 인증키를 생성하여 리턴한다.
+ *
+ * @return
+ */
+ public String getAndCreateAuthKey(String sessionId) {
+ if(StringUtil.isNotEmpty(this.authKey)) return this.authKey;
+
+ // AuthKey 생성하여 리턴
+ this.authKey = NlibCommonController.makeAuthKey(this.userId, sessionId);
+ return this.authKey;
+ }
//----------------------------------------------------------------
// SETTER.GETTER
@@ -326,11 +352,13 @@ public class NlibLoginVO implements Serializable {
}
public String getAuthKey() {
+
return authKey;
}
-
+
public void setAuthKey(String authKey) {
this.authKey = authKey;
}
+
}