public StringPath acts(String key) { return acts.get(key); }
@Override public <K, V> Path<Map<K, V>> createMapPath(Class<K> keyType, Class<V> valueType, PathMetadata<?> metadata) { return new MapPath<K,V,EntityPathBase<V>>(keyType, valueType, (Class)EntityPathBase.class, metadata); }
@Override public E get(K key) { try { PathMetadata<K> md = forMapAccess(key); return newInstance(md); } catch (NoSuchMethodException e) { throw new ExpressionException(e); } catch (InstantiationException e) { throw new ExpressionException(e); } catch (IllegalAccessException e) { throw new ExpressionException(e); } catch (InvocationTargetException e) { throw new ExpressionException(e); } }
@Test public void Contains_Key() { assertToString("?1 in indices(show.acts)", show.acts.containsKey("x")); }
@Test public void Contains_Value() { assertToString("?1 in elements(show.acts)", show.acts.containsValue("y")); } }
private E newInstance(PathMetadata<?> pm) throws NoSuchMethodException, InstantiationException, IllegalAccessException, InvocationTargetException { if (constructor == null) { if (Constants.isTyped(queryType)) { constructor = queryType.getConstructor(Class.class, PathMetadata.class); } else { constructor = queryType.getConstructor(PathMetadata.class); } } if (Constants.isTyped(queryType)) { return constructor.newInstance(getValueType(), pm); } else { return constructor.newInstance(pm); } }
@Test public void Contains() { assertToString("show.acts[?1] = ?2", show.acts.contains("x", "y")); }
@Test public void Map_is_Empty() throws Exception { query.from(user); query.where(user.getMap("buddiesMapped", String.class, User.class).isEmpty()); assertEquals("SELECT * WHERE { ?user ?_c2 ?_c3 . OPTIONAL { ?user ?_c4 ?user_buddiesMapped } FILTER(!bound(?user_buddiesMapped)) }"); }
@Test public void Map_is_not_Empty() throws Exception { query.from(user); query.where(user.getMap("buddiesMapped", String.class, User.class).isNotEmpty()); assertEquals("SELECT * WHERE { ?user ?_c2 ?_c3 . OPTIONAL { ?user ?_c4 ?user_buddiesMapped } FILTER(!(!bound(?user_buddiesMapped))) }"); }
@Test public void Contains_Key() throws Exception { query.from(user); query.where(user.getMap("buddiesMapped", String.class, User.class).containsKey("XXX")); assertEquals("SELECT * WHERE { ?user ?_c2 ?_c3 ; ?_c4 ?user_buddiesMapped . ?user_buddiesMapped ?_c6 ?_c7 }"); }
@Test public void Contains_Value() throws Exception { query.from(user); query.where(user.getMap("buddiesMapped", String.class, User.class).containsValue(createUser())); assertEquals("SELECT * WHERE { ?user ?_c2 ?_c3 ; ?_c4 ?user_buddiesMapped . FILTER(?user_buddiesMapped = ?_c6) }"); }
public DateTimePath<java.util.Date> holidays(String key) { return holidays.get(key); }
@Test public void Contains_Key_Not() throws Exception { query.from(user); query.where(user.getMap("buddiesMapped", String.class, User.class).containsKey("XXX").not()); assertEquals("SELECT * WHERE { ?user ?_c2 ?_c3 ; ?_c4 ?user_buddiesMapped . FILTER(!exists {{ ?user_buddiesMapped ?_c6 ?_c7 } }) }"); }
@Test public void Contains_Value_Not() throws Exception { query.from(user); query.where(user.getMap("buddiesMapped", String.class, User.class).containsValue(createUser()).not()); assertEquals("SELECT * WHERE { ?user ?_c2 ?_c3 ; ?_c4 ?user_buddiesMapped . FILTER(!(?user_buddiesMapped = ?_c6)) }"); }
@Override public E get(Expression<K> key) { try { PathMetadata<K> md = forMapAccess(key); return newInstance(md); } catch (NoSuchMethodException e) { throw new ExpressionException(e); } catch (InstantiationException e) { throw new ExpressionException(e); } catch (IllegalAccessException e) { throw new ExpressionException(e); } catch (InvocationTargetException e) { throw new ExpressionException(e); } }
/** * Create a new Map typed path * * @param <K> * @param <V> * @param <E> * @param property * @param key * @param value * @param queryType * @return */ @SuppressWarnings("unchecked") protected <K, V, E extends SimpleExpression<? super V>> MapPath<K, V, E> createMap(String property, Class<? super K> key, Class<? super V> value, Class<? super E> queryType) { return add(new MapPath<K, V, E>(key, value, (Class) queryType, forProperty(property))); }
public StringPath acts(com.mysema.query.types.Expression<String> key) { return acts.get(key); }
@Test @NoEclipseLink @NoOpenJPA @NoBatooJPA public void Map_ContainsKey() { QShow show = QShow.show; assertEquals(1l, query().from(show).where(show.acts.containsKey("a")).count()); }
@Test @NoEclipseLink @NoOpenJPA @NoBatooJPA public void Map_ContainsValue3() { QShow show = QShow.show; assertEquals(0l, query().from(show).where(show.acts.containsValue("C")).count()); }
public DateTimePath<java.util.Date> holidays(com.mysema.query.types.Expression<String> key) { return holidays.get(key); }