@Test public void script10() throws EntityFinderException { QueryBuilder<Person> qb = this.module.newQueryBuilder( Person.class ); Person person = templateFor( Person.class ); Query<Person> query = unitOfWork.newQuery( qb.where( not( eq( person.yearOfBirth(), 1975 ) ) ) ); System.out.println( "*** script10: " + query ); verifyUnorderedResults( query, "Jack Doe", "Joe Doe" ); }
@Test public void script10() throws EntityFinderException { Person person = templateFor( Person.class ); // should return Joe and Jack Doe Iterable<EntityReference> entities = entityFinder.findEntities( Person.class, not( eq( person.yearOfBirth(), 1975 ) ), NO_SORTING, NO_FIRST_RESULT, NO_MAX_RESULTS, NO_VARIABLES ); assertNames( entities, JOE, JACK ); }
@Test public void script05() { ValueBuilder<QueryParam> queryParamBuilder = this.module.newValueBuilder( QueryParam.class ); List<QueryParam> queryParams = new ArrayList<>( 2 ); QueryParam param = queryParamBuilder.prototype(); param.name().set( "user" ); param.value().set( "jackdoe" ); queryParams.add( queryParamBuilder.newInstance() ); queryParamBuilder = this.module.newValueBuilder( QueryParam.class ); param = queryParamBuilder.prototype(); param.name().set( "password" ); param.value().set( "somepassword" ); queryParams.add( queryParamBuilder.newInstance() ); QueryBuilder<Person> qb = this.module.newQueryBuilder( Person.class ); Property<Collection<QueryParam>> paramsProp = templateFor( Person.class ).personalWebsite().get().queryParams(); qb = qb.where( not( eq( paramsProp, queryParams ) ) ); Query<Person> query = unitOfWork.newQuery( qb ); System.out.println( "*** script05: " + query ); verifyUnorderedResults( query, ANN, JOE ); }
@Test public void script11() { ValueBuilder<QueryParam> queryParamBuilder = this.module.newValueBuilder( QueryParam.class ); List<QueryParam> queryParams = new ArrayList<>( 2 ); QueryParam param = queryParamBuilder.prototype(); param.name().set( "user" ); param.value().set( "jackdoe" ); queryParams.add( queryParamBuilder.newInstance() ); queryParamBuilder = this.module.newValueBuilder( QueryParam.class ); param = queryParamBuilder.prototype(); param.name().set( "password" ); param.value().set( "somepassword" ); queryParams.add( queryParamBuilder.newInstance() ); QueryBuilder<Person> qb = this.module.newQueryBuilder( Person.class ); Property<Collection<QueryParam>> paramsProp = templateFor( Person.class ).personalWebsite().get().queryParams(); qb = qb.where( not( containsAll( paramsProp, queryParams ) ) ); Query<Person> query = unitOfWork.newQuery( qb ); System.out.println( "*** script11: " + query ); verifyUnorderedResults( query, ANN, JOE ); } }
@Test public void script09() { ValueBuilder<QueryParam> queryParamBuilder = this.module.newValueBuilder( QueryParam.class ); QueryParam param = queryParamBuilder.prototype(); param.name().set( "user" ); param.value().set( "jackdoe" ); QueryBuilder<Person> qb = this.module.newQueryBuilder( Person.class ); Property<Collection<QueryParam>> paramsProp = templateFor( Person.class ).personalWebsite().get().queryParams(); qb = qb.where( not( contains( paramsProp, queryParamBuilder.newInstance() ) ) ); Query<Person> query = unitOfWork.newQuery( qb ); System.out.println( "*** script09: " + query ); verifyUnorderedResults( query, ANN, JOE ); }
@Test public void script02() { ValueBuilder<Address> addressBuilder = this.module.newValueBuilder( Address.class ); Address address = addressBuilder.prototype(); address.line1().set( "Qi Street 4j" ); address.line2().set( "Off main Java Street" ); address.zipcode().set( "12345" ); QueryBuilder<Person> qb = this.module.newQueryBuilder( Person.class ); Property<Address> addressProp = templateFor( Person.class ).address(); qb = qb.where( not( eq( addressProp, addressBuilder.newInstance() ) ) ); Query<Person> query = unitOfWork.newQuery( qb ); System.out.println( "*** script02: " + query ); verifyUnorderedResults( query, JOE, JACK ); }
@Test public void script07() { ValueBuilder<URL> urlBuilder = this.module.newValueBuilder( URL.class ); ValueBuilder<Protocol> protocolBuilder = this.module.newValueBuilder( Protocol.class ); ValueBuilder<QueryParam> queryParamBuilder = this.module.newValueBuilder( QueryParam.class ); Protocol protocol = protocolBuilder.prototype(); protocol.value().set( "http" ); List<QueryParam> queryParams = new ArrayList<>( 2 ); QueryParam param = queryParamBuilder.prototype(); param.name().set( "user" ); param.value().set( "jackdoe" ); queryParams.add( queryParamBuilder.newInstance() ); queryParamBuilder = this.module.newValueBuilder( QueryParam.class ); param = queryParamBuilder.prototype(); param.name().set( "password" ); param.value().set( "somepassword" ); queryParams.add( queryParamBuilder.newInstance() ); URL url = urlBuilder.prototype(); url.protocol().set( protocolBuilder.newInstance() ); url.queryParams().set( queryParams ); QueryBuilder<Person> qb = this.module.newQueryBuilder( Person.class ); Property<URL> websiteProp = templateFor( Person.class ).personalWebsite(); qb = qb.where( not( eq( websiteProp, urlBuilder.newInstance() ) ) ); Query<Person> query = unitOfWork.newQuery( qb ); System.out.println( "*** script07: " + query ); verifyUnorderedResults( query, ANN, JOE ); }