@Test public void script04() throws EntityFinderException { final Query<Person> query = unitOfWork.newQuery( this.module .newQueryBuilder( Person.class ) .where( queries.get( "script04" ) ) ); System.out.println( "*** script04: " + query ); verifyUnorderedResults( query, "Joe Doe", "Ann Doe" ); }
@Test public void script42_Date() { QueryBuilder<Person> qb = this.module.newQueryBuilder( Person.class ); Person person = templateFor( Person.class ); Query<Person> query = unitOfWork.newQuery( qb.where( ne( person.dateValue(), new DateTime( "2010-03-04T14:24:35", forID( "CET" ) ).toDate() ) ) ); System.out.println( "*** script42_Date: " + query ); verifyUnorderedResults( query, "Joe Doe" ); }
@Test public void script24() throws EntityFinderException { final Query<Domain> query = unitOfWork.newQuery( this.module .newQueryBuilder( Domain.class ) .where( queries.get( "script24" ) ) ); query.setVariable( "domain", "Gaming" ); System.out.println( "*** script24: " + query ); assertThat( query.find().name().get(), is( equalTo( "Gaming" ) ) ); } }
@Test public void script42_DateTime() { QueryBuilder<Person> qb = this.module.newQueryBuilder( Person.class ); Person person = templateFor( Person.class ); Query<Person> query = unitOfWork.newQuery( qb.where( ne( person.dateTimeValue(), new DateTime( "2010-03-04T14:24:35", forID( "CET" ) ) ) ) ); System.out.println( "*** script42_DateTime: " + query ); verifyUnorderedResults( query, "Jack Doe", "Joe Doe" ); }
@Test public void script42_LocalDate() { QueryBuilder<Person> qb = this.module.newQueryBuilder( Person.class ); Person person = templateFor( Person.class ); Query<Person> query = unitOfWork.newQuery( qb.where( ne( person.localDateValue(), new LocalDate( "2010-03-04", forID( "CET" ) ) ) ) ); System.out.println( "*** script42_LocalDate: " + query ); verifyUnorderedResults( query, "Joe Doe" ); }
@Test public void script51_BigInteger() { QueryBuilder<Person> qb = this.module.newQueryBuilder( Person.class ); Person person = templateFor( Person.class ); Query<Person> query = unitOfWork.newQuery( qb.where( ne( person.bigInteger(), new BigInteger( "23232323232323232323232323" ) ) ) ); System.out.println( "*** script51_BigInteger: " + query ); verifyUnorderedResults( query, "Jack Doe" ); }
@Test public void script19() throws EntityFinderException { Nameable nameable = templateFor( Nameable.class ); final Query<Nameable> query = unitOfWork.newQuery( this.module .newQueryBuilder( Nameable.class ) .where( queries.get( "script19" ) ) ); query.orderBy( orderBy( nameable.name() ) ); System.out.println( "*** script19: " + query ); verifyOrderedResults( query, "Gaming", "Jack Doe", "Joe Doe", "Kuala Lumpur", "Penang", "Programming" ); }
@Test public void script43_LocalDate() { QueryBuilder<Person> qb = this.module.newQueryBuilder( Person.class ); Person person = templateFor( Person.class ); Query<Person> query = unitOfWork.newQuery( qb.where( and( gt( person.localDateValue(), new LocalDate( "2005-03-04", UTC ) ), lt( person.localDateValue(), new LocalDate( "2015-03-04", UTC ) ) ) ) ); System.out.println( "*** script43_LocalDate: " + query ); verifyUnorderedResults( query, "Jack Doe" ); }
@Test public void script12_ne() throws EntityFinderException { QueryBuilder<Person> qb = this.module.newQueryBuilder( Person.class ); Person person = templateFor( Person.class ); Query<Person> query = unitOfWork.newQuery( qb.where( ne( person.email(), "joe@thedoes.net" ) ) ); System.out.println( "*** script12_ne: " + query ); verifyUnorderedResults( query ); }
@Test public void script13() throws EntityFinderException { QueryBuilder<Person> qb = this.module.newQueryBuilder( Person.class ); Male person = templateFor( Male.class ); Query<Person> query = unitOfWork.newQuery( qb.where( isNotNull( person.wife() ) ) ); System.out.println( "*** script13: " + query ); verifyUnorderedResults( query, "Jack Doe" ); }
@Test public void script35() { QueryBuilder<Person> qb = this.module.newQueryBuilder( Person.class ); Person person = templateFor( Person.class ); Query<Person> query = unitOfWork.newQuery( qb.where( containsName( person.accounts(), "anns" ) ) ); System.out.println( "*** script35: " + query ); verifyUnorderedResults( query, "Jack Doe", "Ann Doe" ); }
@Test public void script11() throws EntityFinderException { QueryBuilder<Person> qb = this.module.newQueryBuilder( Person.class ); Person person = templateFor( Person.class ); Query<Person> query = unitOfWork.newQuery( qb.where( isNotNull( person.email() ) ) ); System.out.println( "*** script11: " + query ); verifyUnorderedResults( query, "Joe Doe" ); }
@Test public void script39() { QueryBuilder<Person> qb = this.module.newQueryBuilder( Person.class ); Person person = templateFor( Person.class ); Query<Person> query = unitOfWork.newQuery( qb.where( ne( person.title(), Person.Title.DR ) ) ); System.out.println( "*** script39: " + query ); verifyUnorderedResults( query, "Ann Doe", "Joe Doe" ); }
@Test public void script36() { QueryBuilder<Person> qb = this.module.newQueryBuilder( Person.class ); Person person = templateFor( Person.class ); Account anns = unitOfWork.get( Account.class, "accountOfAnnDoe" ); Query<Person> query = unitOfWork.newQuery( qb.where( contains( person.accounts(), anns ) ) ); System.out.println( "*** script36: " + query ); verifyUnorderedResults( query, "Jack Doe", "Ann Doe" ); }
@Test public void script04() throws EntityFinderException { QueryBuilder<Person> qb = this.module.newQueryBuilder( Person.class ); Person personTemplate = templateFor( Person.class ); City placeOfBirth = personTemplate.placeOfBirth().get(); Query<Person> query = unitOfWork.newQuery( qb.where( eq( placeOfBirth.name(), "Kuala Lumpur" ) ) ); System.out.println( "*** script04: " + query ); verifyUnorderedResults( query, "Joe Doe", "Ann Doe" ); }
@Test public void script19() throws EntityFinderException { QueryBuilder<Nameable> qb = this.module.newQueryBuilder( Nameable.class ); // should return all Nameable entities with a name > "D" sorted by name Nameable nameable = templateFor( Nameable.class ); Query<Nameable> query = unitOfWork.newQuery( qb.where( gt( nameable.name(), "D" ) ) ); query.orderBy( orderBy( nameable.name() ) ); System.out.println( "*** script19: " + query ); verifyOrderedResults( query, "Gaming", "Jack Doe", "Joe Doe", "Kuala Lumpur", "Penang", "Programming" ); }
@Test public void script20() throws EntityFinderException { QueryBuilder<Person> qb = this.module.newQueryBuilder( Person.class ); // should return all Persons born after 1973 (Ann and Joe Doe) sorted descending by name Person person = templateFor( Person.class ); Query<Person> query = unitOfWork.newQuery( qb.where( gt( person.yearOfBirth(), 1973 ) ) ); query.orderBy( orderBy( person.name(), OrderBy.Order.DESCENDING ) ); System.out.println( "*** script20: " + query ); verifyOrderedResults( query, "Joe Doe", "Ann Doe" ); }
@Test( expected = NotQueryableException.class ) public void script27() { QueryBuilder<Person> qb = this.module.newQueryBuilder( Person.class ); Person person = templateFor( Person.class ); qb.where( eq( person.personalWebsite().get().host().get().value(), "www.qi4j.org" ) ); }
@Override public EscrowedKeyPair findByX509Identity( String x509Identity ) { QueryBuilder<EscrowedKeyPair> builder = qbf.newQueryBuilder( EscrowedKeyPair.class ); EscrowedKeyPair ekpTemplate = templateFor( EscrowedKeyPair.class ); builder = builder.where( contains( ekpTemplate.x509s(), x509Repository.findByIdentity( x509Identity ) ) ); Query<EscrowedKeyPair> query = builder.newQuery( uowf.currentUnitOfWork() ); assert query.count() <= 1; return Collections.firstElementOrNull( query ); }
@Override public Query<X509Profile> findByNamePaginated( String name, int firstResult, int maxResults ) { QueryBuilder<X509Profile> builder = qbf.newQueryBuilder( getBoxedClass() ); builder = builder.where( eq( templateFor( X509Profile.class ).name(), name ) ); Query<X509Profile> query = builder.newQuery( uowf.currentUnitOfWork() ). firstResult( firstResult ). maxResults( maxResults ); return query; }