]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/samples/ide/activegrid/util/cachedloader.py
Updates to doc/view modules and sample apps from ActiveGrid.
[wxWidgets.git] / wxPython / samples / ide / activegrid / util / cachedloader.py
diff --git a/wxPython/samples/ide/activegrid/util/cachedloader.py b/wxPython/samples/ide/activegrid/util/cachedloader.py
deleted file mode 100644 (file)
index f0fc69d..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-#----------------------------------------------------------------------------
-# Name:         cachedloader.py
-# Purpose:
-#
-# Author:       Joel Hare
-#
-# Created:      8/31/04
-# CVS-ID:       $Id$
-# Copyright:    (c) 2004-2005 ActiveGrid, Inc.
-# License:      wxWindows License
-#----------------------------------------------------------------------------
-
-import copy
-import os.path
-import string
-import cStringIO
-
-import time
-
-# TODO: Instantiate the database and create a pool
-
-
-class CachedLoader(object):
-    def __init__(self):
-        self.cache = {}
-        self.baseLoadDir = None
-        
-    def fullPath(self, fileName):
-        if os.path.isabs(fileName):
-            absPath = fileName
-        elif self.baseLoadDir:
-            absPath = os.path.join(self.baseLoadDir, fileName)
-        else:
-            absPath = os.path.abspath(fileName)
-        return absPath
-        
-    def setPrototype(self, fileName, loadedFile):
-        absPath = self.fullPath(fileName)
-        mtime = time.time() + 31536000.0 # Make sure prototypes aren't replaced by files on disk
-        self.cache[absPath] = (mtime, loadedFile)
-
-    def update(self, loader):
-        self.cache.update(loader.cache)
-        
-    def clear(self):
-        self.cache.clear()
-
-    def delete(self, fileName):
-        absPath = self.fullPath(fileName)
-        del self.cache[absPath]
-        
-    def needsLoad(self, fileName):
-        absPath = self.fullPath(fileName)
-        try:
-            cached = self.cache[absPath]
-            cachedTime = cached[0]
-            if cachedTime >= os.path.getmtime(absPath):
-                return False
-        except KeyError:
-            pass
-        return True
-        
-    def load(self, fileName, loader):
-        absPath = self.fullPath(fileName)
-        loadedFile = None
-        try:
-            cached = self.cache[absPath]
-        except KeyError:
-            cached = None
-    
-        if cached:
-            cachedTime = cached[0]
-            # ToDO We might need smarter logic for checking if a file needs to be reloaded
-            # ToDo We need a way to disable checking if this is a production server
-            if cachedTime >= os.path.getmtime(absPath):
-                loadedFile = cached[1]
-    
-        if not loadedFile:
-            targetFile = file(absPath)
-            try:
-                mtime = os.path.getmtime(absPath)
-                loadedFile = loader(targetFile)
-                self.cache[absPath] = (mtime, loadedFile)
-            finally:
-                targetFile.close()
-        return loadedFile
-