private void onClearProxy() { if (kunderaMetadata.getCoreMetadata() != null) { LazyInitializerFactory lazyInitializerrFactory = kunderaMetadata.getCoreMetadata() .getLazyInitializerFactory(); if (lazyInitializerrFactory != null) { lazyInitializerrFactory.clearProxies(); } } }
/** * Load. */ public void load(final KunderaMetadata kunderaMetadata) { log.info("Loading Kundera Core Metdata ... "); CoreMetadata coreMetadata = new CoreMetadata(); coreMetadata.setLazyInitializerFactory(new CglibLazyInitializerFactory()); kunderaMetadata.setCoreMetadata(coreMetadata); } }
private KunderaProxy getLazyEntity(String entityName, Class<?> persistentClass, Method getIdentifierMethod, Method setIdentifierMethod, Object id, PersistenceDelegator pd) { return pd.getKunderaMetadata().getCoreMetadata().getLazyInitializerFactory() .getProxy(entityName, persistentClass, getIdentifierMethod, setIdentifierMethod, id, pd); }
private void onSetProxyOwners(final EntityMetadata m, Object e) { if (kunderaMetadata.getCoreMetadata() != null) { LazyInitializerFactory lazyInitializerrFactory = kunderaMetadata.getCoreMetadata() .getLazyInitializerFactory(); if (lazyInitializerrFactory != null) { lazyInitializerrFactory.setProxyOwners(m, e); } } }
/** * If returned collection of object holds a reference to. * * @param results * the results */ private void assignReferenceToProxy(List results) { if (results != null) { for (Object obj : results) { kunderaMetadata.getCoreMetadata().getLazyInitializerFactory().setProxyOwners(getEntityMetadata(), obj); } } } }
@Test public void testWithClosedPDInstance() throws NoSuchFieldException, SecurityException, IllegalArgumentException, IllegalAccessException { PersistenceDelegator delegator = CoreTestUtilities.getDelegator(em); PersonnelDTO dto = new PersonnelDTO("1", "vivek", "mishra"); em.persist(dto); em.close(); LazyInitializerFactory factory = kunderaMetadata.getCoreMetadata().getLazyInitializerFactory(); KunderaProxy proxy = factory.getProxy("personnel", PersonnelDTO.class, null, null, "1", delegator); LazyInitializer li = proxy.getKunderaLazyInitializer(); try { li.initialize(); Assert.fail("Should have gone to catch block!"); } catch(LazyInitializationException liex) { Assert.assertEquals("could not initialize proxy " + PersonnelDTO.class.getName() + "_" + "1" + " - the owning Session was closed",liex.getMessage()); } em = emf.createEntityManager(); }
/** * Test method for * {@link com.impetus.kundera.proxy.cglib.CglibLazyInitializerFactory#getProxy(java.lang.String, java.lang.Class, java.lang.reflect.Method, java.lang.reflect.Method, java.lang.Object, com.impetus.kundera.persistence.PersistenceDelegator)} * . */ @Test public void testGetProxy() { LazyInitializerFactory factory = kunderaMetadata.getCoreMetadata().getLazyInitializerFactory(); KunderaProxy proxy = factory.getProxy("personnel", PersonnelDTO.class, null, null, "1", null); LazyInitializer li = proxy.getKunderaLazyInitializer(); Assert.assertEquals(CglibLazyInitializer.class, li.getClass()); Assert.assertTrue(li.isUninitialized()); Assert.assertFalse(li.isUnwrap()); Assert.assertEquals("personnel", li.getEntityName()); Assert.assertEquals("1", li.getIdentifier()); Assert.assertNull(li.getOwner()); Assert.assertNull(li.getPersistenceDelegator()); Assert.assertEquals(PersonnelDTO.class, li.getPersistentClass()); }
/** * Test method for * {@link com.impetus.kundera.proxy.cglib.CglibLazyInitializerFactory#getProxy(java.lang.String, java.lang.Class, java.lang.reflect.Method, java.lang.reflect.Method, java.lang.Object, com.impetus.kundera.persistence.PersistenceDelegator)} * . */ @Test public void testWithNullPD() { LazyInitializerFactory factory = kunderaMetadata.getCoreMetadata().getLazyInitializerFactory(); KunderaProxy proxy = factory.getProxy("personnel", PersonnelDTO.class, null, null, "1", null); LazyInitializer li = proxy.getKunderaLazyInitializer(); Assert.assertEquals(CglibLazyInitializer.class, li.getClass()); try { li.initialize(); }catch(LazyInitializationException liex) { // Assert.assertEquals("could not initialize proxy " + PersonnelDTO.class.getName() + "_" // + "1" + " - no EntityManager", liex.getMessage()); } }
+ relation.getProperty().getName(); KunderaProxy kp = kunderaMetadata.getCoreMetadata().getLazyInitializerFactory().getProxy(entityName);
PersonnelDTO dto = new PersonnelDTO("1", "vivek", "mishra"); em.persist(dto); LazyInitializerFactory factory = kunderaMetadata.getCoreMetadata().getLazyInitializerFactory(); KunderaProxy proxy = factory.getProxy("personnel#1", PersonnelDTO.class, null, null, "1", delegator); LazyInitializer li = proxy.getKunderaLazyInitializer();