class SeapigRouterSessionStateProducer
Public Class Methods
produce(seapig_object_id)
click to toggle source
# File lib/seapigs/seapig_router_session_state.rb, line 6 def self.produce(seapig_object_id) seapig_object_id =~ /SeapigRouter::Session::([^\:]+)::State::([^\:]+)/ session_key = $1 state_id = $2.to_i version = Time.new.to_f session = SeapigRouterSession.find_by(key: session_key) return [false, SeapigDependency.versions('SeapigRouter::Session::'+(session_key or ""))] if not session state = SeapigRouterSessionState.find_by(seapig_router_session_id: session.id, state_id: state_id) return [false, SeapigDependency.versions('SeapigRouter::Session::'+session_key)] if not state data = state.state [data, version] end