|
|
- // Copyright (c) Shenyang Leading Edge Intelligent Technology Co., Ltd. All rights reserved.
-
- package container
-
- import (
- "LAPP_ACURA_MOM_BACKEND/global"
- "errors"
- "fmt"
- )
-
- // 会话
- type Session struct {
- // 会话上下文
- SessionContext
- // 会话标识
- sessionId string
- // 组件句柄管理器
- handlers *HandlerManager
- }
-
- // 创建会话
- // 参数
- // 1.会话上下文
- // 2.用户信息
- // 3.组件句柄管理器
- // 返回值:
- // 1.会话
- // 2.错误
- func NewSession(context *SessionContext, sessionId string, handlerManager *HandlerManager) (*Session, error) {
- if context == nil {
- return nil, errors.New(fmt.Sprintf("会话上下文不能为空!"))
- }
- if sessionId == "" {
- return nil, errors.New(fmt.Sprintf("会话标识不能为空!"))
- }
- if handlerManager == nil {
- return nil, errors.New(fmt.Sprintf("组件句柄管理器不能为空!"))
- }
- return &Session{*context, sessionId, handlerManager}, nil
- }
-
- // 获取用户信息
- // 返回值:
- // 1.用户信息
- func (session *Session) User() *global.User {
- return session.user
- }
-
- // 获取会话标识
- // 返回值:
- // 1.会话标识
- func (session *Session) SessionId() string {
- return session.sessionId
- }
-
- // 获取组件句柄管理器
- // 返回值:
- // 1.组件句柄管理器
- func (session *Session) Handlers() *HandlerManager {
- return session.handlers
- }
|