Singleton Registry

A Facade to handle Concrete Singleton creation in a AbstractSingletonPattern?

Code Sample:

public class SingletonRegistry {

private SingletonRegistry() {
}
private static ConcreteSingleton1 concreteSingleton1;
private static ConcreteSingleton2 concreteSingleton2;

public static Singleton getSingleton(final String which) { try { if("ConcreteSingleton1".equalsIgnoreCase(which)) { return getInstanceOf1(); } else if("ConcreteSingleton2".equalsIgnoreCase(which)) { return getInstanceOf2(); } } catch (SingletonException? se) { return se.getInstance(); } throw new RuntimeException("Match not found exception"); }

private static Singleton getInstanceOf1() throws SingletonException? { if(concreteSingleton1 == null) { concreteSingleton1 = new ConcreteSingleton1(); } return concreteSingleton1; } private static Singleton getInstanceOf2() throws SingletonException? { if(concreteSingleton2 == null) { concreteSingleton2 = new ConcreteSingleton2(); } return concreteSingleton2; }
}

-- NitinVerma


EditText of this page (last edited April 30, 2012) or FindPage with title or text search