public static GUID generateProxyClass(ClassLoader loader, ProxyMixin[] mixins, Class<?>[] interfaces) throws Exception { Class<?> clazz = createProxyClass(loader, mixins, interfaces); GUID guid = new GUID(); synchronized (proxyCache) { proxyCache.put(guid, clazz); } return guid; }
protected void addSubDomainByName(Domain domain) { initSubDomainsByNameMap(); subDomainsByName.put(domain.getDomainName(), domain); }
public static Proxy createInterfaceProxy(ClassLoader loader, Class<?>[] interfaces, ProxyMixin[] mixins, InstanceAdvisor advisor) throws Exception { Class<?> clazz = createProxyClass(loader, mixins, interfaces); Proxy instance = (Proxy) clazz.newInstance(); instance.instanceAdvisor = advisor; instance.mixins = mixins; instance.interfaces = interfaces; instance.guid = new GUID(); synchronized (proxyCache) { proxyCache.put(instance.guid, clazz); } return instance; }
classCache.put(className, iface);
public static Proxy createInterfaceProxy(GUID guid, ClassLoader loader, Class<?>[] interfaces, ProxyMixin[] mixins, InstanceAdvisor advisor) throws Exception { Class<?> clazz = getProxyClass(guid); boolean wasFound = true; if (clazz == null) { wasFound = false; clazz = createProxyClass(loader, mixins, interfaces); } Proxy instance = (Proxy) clazz.newInstance(); instance.instanceAdvisor = advisor; instance.mixins = mixins; instance.interfaces = interfaces; instance.guid = guid; if (!wasFound) { synchronized (proxyCache) { proxyCache.put(guid, clazz); } } return instance; }
classCache.put(className, resolvedClass);
classnameMap.put(clazz.getName(), proxyClass); proxiesForLoader.put(clazz, new WeakReference<Class<?>>(proxyClass)); HashMap<Long, MethodPersistentReference> map = methodMap(clazz);
/** * Get ItemImpl from the pool using given data. * * @param newData ItemData * @param parent nodeData * @return ItemImpl item * @throws RepositoryException */ ItemImpl get(final ItemData newData, final NodeData parent) throws RepositoryException { final String identifier = newData.getIdentifier(); ItemImpl item = items.get(identifier); if (item != null) { item.loadData(newData, parent); } else { item = itemFactory.createItem(newData, parent); items.put(item.getInternalIdentifier(), item); } return item; }