Changeset - b5e59e2b5cfe
[Not reviewed]
default
0 3 0
Marcin Kuzminski - 16 years ago 2010-05-09 15:06:00
marcin@python-works.com
moved cache invalidating to utils, as seperate function. Implemented invalidating in
3 files changed with 16 insertions and 4 deletions:
0 comments (0 inline, 0 general)
pylons_app/controllers/admin.py
Show inline comments
 
@@ -3,7 +3,6 @@ import os
 

	
 
from pylons import request, response, session, tmpl_context as c, url, app_globals as g
 
from pylons.controllers.util import abort, redirect
 
from beaker.cache import region_invalidate
 
from pylons_app.lib.base import BaseController, render
 
from pylons_app.lib import auth
 
from pylons_app.model.forms import LoginForm
 
@@ -12,7 +11,8 @@ import formencode.htmlfill as htmlfill
 
from pylons_app.model import meta
 
from pylons_app.model.db import Users, UserLogs
 
from webhelpers.paginate import Page
 
from pylons_app.lib.utils import check_repo
 
from pylons_app.lib.utils import check_repo, invalidate_cache
 

	
 
log = logging.getLogger(__name__)
 

	
 
class AdminController(BaseController):
 
@@ -81,9 +81,8 @@ class AdminController(BaseController):
 
            self._create_repo(new_repo)
 
            c.new_repo = new_repo
 
            c.msg = 'added repo'
 
            from pylons_app.lib.base import _get_repos
 
            #clear our cached list for refresh with new repo
 
            region_invalidate(_get_repos, None, 'repo_list_2')
 
            invalidate_cache('repo_list_2')
 
        except Exception as e:
 
            c.new_repo = 'Exception when adding: %s' % new_repo
 
            c.msg = str(e)
pylons_app/controllers/repos.py
Show inline comments
 
@@ -10,6 +10,7 @@ from pylons_app.lib.auth import authenti
 
from pylons_app.model.hg_model import HgModel
 
from operator import itemgetter
 
import shutil
 
from pylons_app.lib.utils import invalidate_cache
 
log = logging.getLogger(__name__)
 

	
 
class ReposController(BaseController):
 
@@ -64,6 +65,10 @@ class ReposController(BaseController):
 
        log.info("Removing %s", rm_path)
 
        shutil.move(os.path.join(rm_path, '.hg'), os.path.join(rm_path, 'rm__.hg'))
 
        shutil.move(rm_path, os.path.join(path, 'rm__%s-%s' % (datetime.today(), id)))
 
        
 
        #clear our cached list for refresh with new repo
 
        invalidate_cache('repo_list_2')
 
                    
 
        return redirect(url('repos'))
 
        
 

	
pylons_app/lib/utils.py
Show inline comments
 
@@ -90,6 +90,14 @@ def make_ui(path='hgwebdir.config', chec
 
    
 
    return baseui
 

	
 
def invalidate_cache(name):
 
    from beaker.cache import region_invalidate
 
    if name == 'repo_list_2':
 
        log.info('INVALIDATING CACHE FOR %s', name)
 
        from pylons_app.lib.base import _get_repos
 
        #clear our cached list for refresh with new repo
 
        region_invalidate(_get_repos, None, 'repo_list_2')
 

	
 
from vcs.backends.base import BaseChangeset
 
from vcs.utils.lazy import LazyProperty
 
class EmptyChangeset(BaseChangeset):
0 comments (0 inline, 0 general)