Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 package freemarker.ext.beans;
 
 import java.util.Map;
 import java.util.Set;
 
public class BeansModelCache extends ModelCache
    private final Map classToFactory = new HashMap();
    private final Set mappedClassNames = new HashSet();
    private final BeansWrapper wrapper;
    
    BeansModelCache(BeansWrapper wrapper) {
        this. = wrapper;
    }
    
    protected boolean isCacheable(Object object) {
        return object.getClass() != Boolean.class
    }
    
    protected TemplateModel create(Object object) {
        Class clazz = object.getClass();
        ModelFactory factory;
        synchronized() {
            factory = (ModelFactory).get(clazz);
            if(factory == null) {
                String className = clazz.getName();
                // clear mappings when class reloading is detected
                if(!.add(className)) {
                    .clear();
                    .clear();
                    .add(className);
                }
                factory = .getModelFactory(clazz);
                .put(clazzfactory);
            }
        }
        return factory.create(object);
    }
New to GrepCode? Check out our FAQ X