class CacheManager {

    public static CacheManager create() throws CacheException {
        if (singleton != null) {
            return singleton;
        }
        synchronized (CacheManager.class) {
            if (singleton == null) {

                    LOG.debug("Creating new CacheManager with default config");
                singleton = new CacheManager();
            } else {

                    LOG.debug("Attempting to create an existing singleton. Existing singleton returned.");
            }
            return singleton;
        }
    }

    public  CacheManager(Configuration configuration);
    public  CacheManager(String configurationFileName);
    public  CacheManager(URL configurationURL);
    public  CacheManager(InputStream configurationInputStream);
    public  CacheManager();

}