class ZuoraConnect::AppInstanceBase

def save_data(session = Hash.new)

def save_data(session = Hash.new)
  self.logins.each do |key, login|
    if login.tenant_type == "Zuora"
      if login.available_entities.size > 1 && Rails.application.config.session_store != ActionDispatch::Session::CookieStore
        login.available_entities.each do |entity_key|
          session["#{self.id}::#{key}::#{entity_key}:current_session"]            = login.client(entity_key).current_session            if login.client.respond_to?(:current_session) && login.client(entity_key).current_session.present?
          session["#{self.id}::#{key}::#{entity_key}:bearer_token"]               = login.client(entity_key).bearer_token               if login.client.respond_to?(:bearer_token) && login.client(entity_key).bearer_token.present?
          session["#{self.id}::#{key}::#{entity_key}:oauth_session_expires_at"]   = login.client(entity_key).oauth_session_expires_at   if login.client.respond_to?(:oauth_session_expires_at) && login.client(entity_key).oauth_session_expires_at.present?
        end
      else
        session["#{self.id}::#{key}:current_session"]             = login.client.current_session            if login.client.respond_to?(:current_session) && login.client.current_session.present?
        session["#{self.id}::#{key}:bearer_token"]                = login.client.bearer_token               if login.client.respond_to?(:bearer_token) && login.client.bearer_token.present?
        session["#{self.id}::#{key}:oauth_session_expires_at"]    = login.client.oauth_session_expires_at   if login.client.respond_to?(:oauth_session_expires_at) && login.client.oauth_session_expires_at.present?
      end
    end
  end
  session["#{self.id}::task_data"] = self.task_data if !ZuoraConnect.configuration.local_task_data
  #Redis is not defined strip out old data
  if !defined?(Redis.current)
    strip_cache_data(object: session["#{self.id}::task_data"])
  end
  session["#{self.id}::last_refresh"] = self.last_refresh
  session["appInstance"] = self.id
  return session
end