class Citrus::Common::Remote::Frontend::SessionRemote

SessionRemote

Public Class Methods

new(app) click to toggle source

Create a new remote session service

@param [Object] app

# File lib/citrus/common/remote/frontend/session_remote.rb, line 25
def initialize app
  @app = app
end

Public Instance Methods

bind(sid, uid, &block) click to toggle source

Bind the session with a user id

@param [Integer] sid @param [String] uid

# File lib/citrus/common/remote/frontend/session_remote.rb, line 33
def bind sid, uid, &block
  @app.session_service.bind sid, uid, &block
end
getBackendSessionBySid(sid) { || ... } click to toggle source

Get session information with session id

@param [Integer] sid

# File lib/citrus/common/remote/frontend/session_remote.rb, line 65
def getBackendSessionBySid sid, &block
  session = @app.session_service.get sid
  unless session
    block_given? and yield
    return
  end
  block_given? and yield nil, session.to_frontend_session.export
end
getBackendSessionByUid(uid) { || ... } click to toggle source

Get all the session information the specified user id

@param [String] uid

# File lib/citrus/common/remote/frontend/session_remote.rb, line 77
def getBackendSessionByUid uid, &block
  sessions = @app.session_service.get_by_uid uid
  unless session
    block_given? and yield
    return
  end

  res = []
  sessions.each { |session|
    res << session.to_frontend_session.export
  }
  block_given? and yield nil, res
end
kickBySid(sid, &block) click to toggle source

Kick a session by session id

@param [Integer] sid

# File lib/citrus/common/remote/frontend/session_remote.rb, line 94
def kickBySid sid, &block
  @app.session_service.kick_by_sid sid, &block
end
kickByUid(uid, &block) click to toggle source

Kick sessions by user id

@param [String] uid

# File lib/citrus/common/remote/frontend/session_remote.rb, line 101
def kickByUid uid, &block
  @app.session_service.kick uid, &block
end
push(sid, key, value, &block) click to toggle source

Push the key/value into session

@param [Integer] sid @param [String] key @param [Hash] value

# File lib/citrus/common/remote/frontend/session_remote.rb, line 50
def push sid, key, value, &block
  @app.session_service.import sid, key, value, &block
end
pushAll(sid, settings, &block) click to toggle source

Push new value for the existed session

@param [Integer] sid @param [Hash] settings

# File lib/citrus/common/remote/frontend/session_remote.rb, line 58
def pushAll sid, settings, &block
  @app.session_service.import_all sid, settings, &block
end
unbind(sid, uid, &block) click to toggle source

Unbind the session with a user id

@param [Integer] sid @param [String] uid

# File lib/citrus/common/remote/frontend/session_remote.rb, line 41
def unbind sid, uid, &block
  @app.session_service.unbind sid, uid, &block
end