List of usage examples for org.hibernate.criterion Conjunction Conjunction
public Conjunction()
From source file:org.archiviststoolkit.dialog.QueryEditor4BucketPanel.java
License:Open Source License
public ATSearchCriterion getQueryCriterion(Class clazz, String field) { String humanReadableSearchString = ""; if (clazz == Accessions.class) { Conjunction criterion = new Conjunction(); String stringValue = getBucket1().getText(); if (stringValue.length() > 0) { humanReadableSearchString = StringHelper.concat(" <font color='red'>and</font> ", humanReadableSearchString, getFieldLabel(Accessions.class, Accessions.PROPERTYNAME_ACCESSION_NUMBER_1) + " begins with " + stringValue); criterion.add(/* w ww . ja v a2s. c o m*/ Expression.ilike(Accessions.PROPERTYNAME_ACCESSION_NUMBER_1, stringValue, MatchMode.START)); } stringValue = getBucket2().getText(); if (stringValue.length() > 0) { humanReadableSearchString = StringHelper.concat(" <font color='red'>and</font> ", humanReadableSearchString, getFieldLabel(Accessions.class, Accessions.PROPERTYNAME_ACCESSION_NUMBER_2) + " begins with " + stringValue); criterion.add( Expression.ilike(Accessions.PROPERTYNAME_ACCESSION_NUMBER_2, stringValue, MatchMode.START)); } stringValue = getBucket3().getText(); if (stringValue.length() > 0) { humanReadableSearchString = StringHelper.concat(" <font color='red'>and</font> ", humanReadableSearchString, getFieldLabel(Accessions.class, Accessions.PROPERTYNAME_ACCESSION_NUMBER_3) + " begins with " + stringValue); criterion.add( Expression.ilike(Accessions.PROPERTYNAME_ACCESSION_NUMBER_3, stringValue, MatchMode.START)); } stringValue = getBucket4().getText(); if (stringValue.length() > 0) { humanReadableSearchString = StringHelper.concat(" <font color='red'>and</font> ", humanReadableSearchString, getFieldLabel(Accessions.class, Accessions.PROPERTYNAME_ACCESSION_NUMBER_4) + " begins with " + stringValue); criterion.add( Expression.ilike(Accessions.PROPERTYNAME_ACCESSION_NUMBER_4, stringValue, MatchMode.START)); } return new ATSearchCriterion(criterion, humanReadableSearchString, field); } else if (clazz == Resources.class) { Conjunction criterion = new Conjunction(); String stringValue = getBucket1().getText(); if (stringValue.length() > 0) { humanReadableSearchString = StringHelper.concat(" <font color='red'>and</font> ", humanReadableSearchString, getFieldLabel(Resources.class, Resources.PROPERTYNAME_RESOURCE_IDENTIFIER_1) + " begins with " + stringValue); criterion.add(Expression.ilike(Resources.PROPERTYNAME_RESOURCE_IDENTIFIER_1, stringValue, MatchMode.START)); } stringValue = getBucket2().getText(); if (stringValue.length() > 0) { humanReadableSearchString = StringHelper.concat(" <font color='red'>and</font> ", humanReadableSearchString, getFieldLabel(Resources.class, Resources.PROPERTYNAME_RESOURCE_IDENTIFIER_2) + " begins with " + stringValue); criterion.add(Expression.ilike(Resources.PROPERTYNAME_RESOURCE_IDENTIFIER_2, stringValue, MatchMode.START)); } stringValue = getBucket3().getText(); if (stringValue.length() > 0) { humanReadableSearchString = StringHelper.concat(" <font color='red'>and</font> ", humanReadableSearchString, getFieldLabel(Resources.class, Resources.PROPERTYNAME_RESOURCE_IDENTIFIER_3) + " begins with " + stringValue); criterion.add(Expression.ilike(Resources.PROPERTYNAME_RESOURCE_IDENTIFIER_3, stringValue, MatchMode.START)); } stringValue = getBucket4().getText(); if (stringValue.length() > 0) { humanReadableSearchString = StringHelper.concat(" <font color='red'>and</font> ", humanReadableSearchString, getFieldLabel(Resources.class, Resources.PROPERTYNAME_RESOURCE_IDENTIFIER_4) + " begins with " + stringValue); criterion.add(Expression.ilike(Resources.PROPERTYNAME_RESOURCE_IDENTIFIER_4, stringValue, MatchMode.START)); } return new ATSearchCriterion(criterion, humanReadableSearchString, field); } else { return null; } }