document.write('
Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. import java.util.Hashtable;
  2. import java.util.Iterator;
  3. import java.util.Map;
  4. import java.util.Set;
  5.  
  6. public class SingletonProxy {
  7.    
  8.     public static Hashtable<Class<?>, Object> classes = new Hashtable<Class<?>, Object>();
  9.    
  10.     public static <T> T getInstance(String classname) throws ClassNotFoundException, InstantiationException, IllegalAccessException {
  11.         Object object = null;
  12.         Class<?> klass = Class.forName("Test");
  13.        
  14.         if (klass.isAnnotationPresent(Singleton.class)) {
  15.             if (!classes.containsKey(klass)) {
  16.                 classes.put(klass, klass.newInstance());
  17.             }
  18.             object = findValueWithKey(klass);
  19.         }
  20.    
  21.         return (T) object;
  22.     }
  23.  
  24.     public static Object findValueWithKey(Class<?> key) {
  25.         Object object = null;
  26.         Set set = classes.entrySet();
  27.         Iterator it = set.iterator();
  28.        
  29.         while (it.hasNext()) {
  30.             Map.Entry entry = (Map.Entry) it.next();
  31.             if (entry.getKey().equals(key))
  32.                 object = entry.getValue();
  33.         }
  34.         return object;
  35.     }
  36.    
  37. }
');