@Override public <T> T find(Class<T> entityClass, Object primaryKey, LockModeType lockMode) { return find(entityClass, primaryKey); }
@Deprecated public <T> T save(T obj) { persist(obj); return obj; }
/** * Initialize the manager by scanning the classpath starting with the * <code>classpathPrefix</code>, looking for classes annotated with * {@link Entity}. If an Entity class is found, it looks for the * {@link Table} annotation to determine the Cassandra column family * name. * * @param classpathPrefixArr * @see ClassCacheMgr */ public void initialize(AnnotationScanner scanner, String[] classpathPrefixArr) { if (null != classpathPrefixArr && 0 < classpathPrefixArr.length) { for (String classpathPrefix : classpathPrefixArr) { initializeClasspath(scanner, classpathPrefix); } } if (logger.isDebugEnabled()) { logger.debug("classpath array has {} items : {}", (null != classpathPrefixArr ? classpathPrefixArr.length : "0"), classpathPrefixArr); } }
@Test public void testPojoWithListCollection() { EntityManagerImpl em = new EntityManagerImpl(keyspace, "me.prettyprint.hom.beans"); MyBlueTestBean b1 = new MyBlueTestBean(); b1.setBaseId(UUID.randomUUID()); b1.addToList(100).addToList(200).addToList(300); em.persist(b1); MyBlueTestBean b2 = em.find(MyBlueTestBean.class, b1.getBaseId()); assertEquals(b1.getMySet().size(), b2.getMySet().size()); for (Integer myInt : b1.getMySet()) { assertTrue(b2.getMySet().remove(myInt)); } }
chair.setArms(true); chair.setRecliner(false); entityMgr.persist(chair); couch.setFoldOutBed(false); couch.setNumCushions(3); entityMgr.persist(couch); table.setExtendable(true); table.setShape("circle"); entityMgr.persist(table); desk.addDrawer(new Drawer(true, true, "pencil")).addDrawer(new Drawer(false, true, "filing")).addDrawer(new Drawer(false, false, "upperLeft")).addDrawer(new Drawer(false, true, "lowerLeft")); desk.getOneColumnDrawerList().addAll(desk.getDrawerList()); entityMgr.persist(desk); Furniture f1 = entityMgr.find(Furniture.class, 1); Furniture f2 = entityMgr.find(Furniture.class, 2); Furniture f3 = entityMgr.find(Furniture.class, 3); Furniture f4 = entityMgr.find(Furniture.class, 4);
public EntityManagerFactoryImpl(final PersistenceUnitInfo info, final Keyspace space, final AnnotationScanner scanner) { if (!info.excludeUnlistedClasses()) { final Class<?>[] classes = new Class<?>[info.getManagedClassNames().size()]; final ClassLoader cl = Thread.currentThread().getContextClassLoader(); int i = 0; for (String name : info.getManagedClassNames()) { try { classes[i++] = cl.loadClass(name); } catch (ClassNotFoundException e) { throw new RuntimeException(e); } } em = new EntityManagerImpl(space, this, classes); } else { em = new EntityManagerImpl(space, this, info.getProperties().getProperty(PACKAGES_TO_SCAN).split(","), scanner); } }
@Override public void refresh(Object entity, LockModeType lockMode) { refresh(entity); }
public EntityManagerImpl(Keyspace keyspace, String[] classpathPrefix, ClassCacheMgr cacheMgr, HectorObjectMapper objMapper, AnnotationScanner scanner) { this.keyspace = keyspace; if (null != cacheMgr) { this.cacheMgr = cacheMgr; } else { this.cacheMgr = new ClassCacheMgr(); } if (null != objMapper) { this.objMapper = objMapper; } else { this.objMapper = new HectorObjectMapper(this.cacheMgr); } initialize(scanner, classpathPrefix); }
@Test public void testPojoWithSetCollection() { EntityManagerImpl em = new EntityManagerImpl(keyspace, "me.prettyprint.hom.beans"); MyBlueTestBean b1 = new MyBlueTestBean(); b1.setBaseId(UUID.randomUUID()); b1.addToList(100).addToList(200).addToList(300); em.persist(b1); MyBlueTestBean b2 = em.find(MyBlueTestBean.class, b1.getBaseId()); assertEquals(b1.getMySet().size(), b2.getMySet().size()); for (Integer myInt : b1.getMySet()) { assertTrue(b2.getMySet().remove(myInt)); } }
@Before public void setup() throws TTransportException, SecurityException, IllegalArgumentException, IOException, InterruptedException, NoSuchMethodException, IllegalAccessException, InvocationTargetException { entityMgr = new EntityManagerImpl(keyspace, "com.mycompany.furniture"); }
@Override public void refresh(Object entity, Map<String, Object> properties) { refresh(entity); }
@Test public void testInitializeSaveLoadCollection() { List<Object> objList = new ArrayList<Object>(3); EntityManagerImpl em = new EntityManagerImpl(keyspace, "me.prettyprint.hom.beans"); MyGreenTestBean green = new MyGreenTestBean(); green.setBaseId(UUID.randomUUID()); green.setIntProp1(1); objList.add(green); MyBlueTestBean blue = new MyBlueTestBean(); blue.setBaseId(UUID.randomUUID()); blue.setIntProp1(2); objList.add(blue); MyPurpleTestBean purple = new MyPurpleTestBean(); purple.setId("purple"); purple.setLongProp1(3); objList.add(purple); em.persist(objList); MyGreenTestBean green2 = em.find(MyGreenTestBean.class, green.getBaseId()); MyBlueTestBean blue2 = em.find(MyBlueTestBean.class, blue.getBaseId()); MyPurpleTestBean purple2 = em.find(MyPurpleTestBean.class, purple.getId()); assertEquals( green, green2); assertEquals(blue, blue2); assertEquals( purple, purple2); }
@Override public <T> T find(Class<T> entityClass, Object primaryKey, LockModeType lockMode, Map<String, Object> properties) { return find(entityClass, primaryKey); }
@Override public void refresh(Object entity, LockModeType lockMode, Map<String, Object> properties) { refresh(entity); }
@Test public void testInitializeSaveLoadCustomId() { EntityManagerImpl em = new EntityManagerImpl(keyspace, "me.prettyprint.hom.beans"); MyCustomIdBean o1 = new MyCustomIdBean(); o1.setId(Colors.GREEN); o1.setLongProp1(111L); em.persist(o1); MyCustomIdBean o2 = em.find(MyCustomIdBean.class, Colors.GREEN); assertEquals(o1.getId(), o2.getId()); assertEquals(o1.getLongProp1(), o2.getLongProp1()); }
@Override public <T> T find(Class<T> entityClass, Object primaryKey, Map<String, Object> properties) { return find(entityClass, primaryKey); }
@Test public void testPojoWithCustomCollection() { EntityManagerImpl em = new EntityManagerImpl(keyspace, "me.prettyprint.hom.beans"); MyConvertedCollectionBean b1 = new MyConvertedCollectionBean(); b1.setId("me"); b1.addToList(100).addToList(200).addToList(300); em.persist(b1); MyConvertedCollectionBean b2 = em.find(MyConvertedCollectionBean.class, b1.getId()); assertEquals(b1.getMyCollection().size(), b2.getMyCollection().size()); for (Integer myInt : b1.getMyCollection()) { assertTrue(b2.getMyCollection().remove(myInt)); } }
@Override public <T> T getReference(Class<T> entityClass, Object primaryKey) { return find(entityClass, primaryKey); }
@Test public void testPojoWithListUpdateCollection() { EntityManagerImpl em = new EntityManagerImpl(keyspace, "me.prettyprint.hom.beans"); MyBlueTestBean b1 = new MyBlueTestBean(); b1.setBaseId(UUID.randomUUID()); b1.addToList(100).addToList(200).addToList(300); em.persist(b1); MyBlueTestBean b2 = new MyBlueTestBean(); b2.setBaseId(b1.getBaseId()); b2.addToList(400); em.persist(b2); MyBlueTestBean b3 = em.find(MyBlueTestBean.class, b1.getBaseId()); assertEquals(b2.getMySet().size(), b3.getMySet().size()); for (Integer myInt : b2.getMySet()) { assertTrue(b3.getMySet().remove(myInt)); } }
@Deprecated public <T> T load(Class<T> clazz, Object id, ColumnSlice<String, byte[]> colSlice) { return find(clazz, id, colSlice); }