Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 // Copyright 2006, 2007, 2008, 2009 The Apache Software Foundation
 // Licensed under the Apache License, Version 2.0 (the "License");
 // you may not use this file except in compliance with the License.
 // You may obtain a copy of the License at
 // Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// See the License for the specific language governing permissions and
// limitations under the License.
This is the original implementation, which is built around the PagePool.
    private final PagePool pagePool;
    private final ComponentClassResolver resolver;
Keyed on canonical page name (case insensitive).
    private final Map<StringPagecache = CollectionFactory.newCaseInsensitiveMap();
    public RequestPageCacheImpl(PagePool pagePoolComponentClassResolver resolver)
        this. = pagePool;
        this. = resolver;
    public Page get(String pageName)
        assert pageName != null;
        String canonicalName = .canonicalizePageName(pageName);
        Page page = .get(canonicalName);
        if (page == null)
            page = .checkout(canonicalName);
            catch (RuntimeException ex)
                throw ex;
        return page;

At the end of the request, when the thread cleanup event occurs, release any pages attached to the request back to the page pool.
    public void threadDidCleanup()
        for (Page p : .values())
New to GrepCode? Check out our FAQ X