]> git.openstreetmap.org Git - rails.git/blobdiff - lib/daemons/session_cleanup.rb
Replace the old session cleanup daemon with a new script to be run from
[rails.git] / lib / daemons / session_cleanup.rb
diff --git a/lib/daemons/session_cleanup.rb b/lib/daemons/session_cleanup.rb
deleted file mode 100755 (executable)
index 08e2dea..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-#!/usr/bin/env ruby
-
-#You might want to change this
-#ENV["RAILS_ENV"] ||= "development"
-
-require File.dirname(__FILE__) + "/../../config/environment"
-
-require 'pstore'
-
-terminated = false
-
-session_path = ActionController::Base.session_options[:tmpdir]
-
-def expire_session(name)
-  ActiveRecord::Base.logger.info("Expiring session #{File.basename(name)}")
-  FileUtils.rm_f(name)
-end
-
-while (true) do
-  Dir.foreach(session_path) do |session_name|
-    if session_name =~ /^ruby_sess\./
-      session_name = session_path + "/" + session_name
-      session = PStore.new(session_name)
-
-      session.transaction do |session|
-        session_hash = session['hash']
-
-        if session_hash
-          session_stat = File::Stat.new(session_name)
-            puts session_hash[:token]
-
-          if session_hash[:token] and User.find_by_token(session_hash[:token])
-#            expire_session(session_name) if session_stat.mtime < 1.day.ago
-          else
-            expire_session(session_name) if session_stat.mtime < 1.hour.ago
-          end
-        else
-          expire_session(session_name)
-        end
-      end
-    end
-  end
-
-  sleep 15.minutes
-end