List of usage examples for org.hibernate.criterion DetachedCriteria createCriteria
public DetachedCriteria createCriteria(String associationPath)
From source file:GCTestClient.java
License:BSD License
/** * Use case : Query Based on Confidence * Search on one more attribute within a Gene,MessengerRNA or Protein class * with a given or higher confidence score (from GenomicIdentifierSet). * Traverse the model to get data from the other classes. * /* ww w. j ava2 s .c o m*/ * Query in this method: * Search on Protein where ensemblGeneId='ENS2' AND unigene,ensemblPeptide as output * AND confidenceScore > 0.2 * Print Set ID,Confidenscore and associated Gene,mRNA values with this Set * */ static void queryConfScore() throws Exception { /** * Create Detached for GenomicIdentifierSet Object and add restriction on confidence score * confidenceScore>0.2 */ DetachedCriteria genomicIdSetCriteria = DetachedCriteria.forClass(GenomicIdentifierSet.class); genomicIdSetCriteria.add(Restrictions.gt("confidenceScore", new Float("0.1"))); /** * Create Criteria for search on ensemblGeneId = ENS2 AND unigeneAsOutput = true * AND ensemblPeptideAsOutput=true */ DetachedCriteria geneCriteria = genomicIdSetCriteria.createCriteria("gene"); geneCriteria.add(Restrictions.eq("ensemblGeneId", "ENS2")); geneCriteria.add(Restrictions.eq("unigeneAsOutput", new Boolean(true))); DetachedCriteria proteinCriteria = genomicIdSetCriteria.createCriteria("protein"); proteinCriteria.add(Restrictions.eq("ensemblPeptideAsOutput", new Boolean(true))); /** * Execute the Query */ List resultList = appService.query(genomicIdSetCriteria, "edu.wustl.geneconnect.domain.GenomicIdentifierSet"); System.out.println("Result Size: " + resultList.size()); for (Iterator iter = resultList.iterator(); iter.hasNext();) { GenomicIdentifierSet gset = (GenomicIdentifierSet) iter.next(); /**Print Set Id and Confidence Score*/ System.out.println( "\nSet Id: " + gset.getId() + " Confidence Score: " + gset.getConfidenceScore() + "\n"); Gene gene = gset.getGene(); MessengerRNA mrna = gset.getMessengerRNA(); Protein protein = gset.getProtein(); System.out.println("Ensembl Gene ID | UniGene cluster ID | Ensembl Peptide ID"); System.out.println(gene.getEnsemblGeneId() + " | " + gene.getUnigeneClusterId() + " | " + protein.getEnsemblPeptideId()); System.out .println("-----------------------------------------------------------------------------------"); } }
From source file:GCTestClient.java
License:BSD License
/** * @throws Exception/*from ww w . j av a2 s . com*/ */ static void querybyNodeTraversal() throws Exception { /*Detached Criteria for GenomicIdentifier Set object*/ DetachedCriteria genomicIdSetCriteria = DetachedCriteria.forClass(GenomicIdentifierSet.class); /** * Create criteria for ONT where Set should contain a ONT as * EnsemblGene ---Direct---> Entrez Gene ---Direct---> UniGene * and optionally can also specify link type between each data source pair. */ /** * Create criteria for ONT as: * EnsemblGene ---Direct */ DetachedCriteria ontCrit = genomicIdSetCriteria.createCriteria("orderOfNodeTraversalCollection"); DetachedCriteria ontCritF = ontCrit.createCriteria("sourceDataSource") .add(Restrictions.eq("name", "Ensembl Gene")); ontCrit.createCriteria("linkType").add(Restrictions.eq("type", "DIRECT")); /** * Create criteria for ONT as: * EnsemblGene ---Direct---> Entrez Gene ---Direct */ DetachedCriteria ontCritF1 = ontCrit.createCriteria("childOrderOfNodeTraversal"); ontCritF1.createCriteria("sourceDataSource").add(Restrictions.eq("name", "Entrez Gene")); ontCritF1.createCriteria("linkType").add(Restrictions.eq("type", "DIRECT")); /** * Create criteria for ONT as: * EnsemblGene ---Direct---> Entrez Gene ---Direct---> UniGene */ DetachedCriteria ontCritF2 = ontCritF1.createCriteria("childOrderOfNodeTraversal"); DetachedCriteria ontCritF3 = ontCritF2.createCriteria("sourceDataSource"); ontCritF3.add(Restrictions.eq("name", "UniGene")); ontCritF2.add(Restrictions.isNull("childOrderOfNodeTraversal")); /** * Create Critria for ensemblTranscriptId = ENST1 AND * ensemblGeneAsOutput = true AND ensemblPeptideAsOutput = true */ DetachedCriteria mrnaCriteria = genomicIdSetCriteria.createCriteria("messengerRNA"); mrnaCriteria.add(Restrictions.eq("ensemblTranscriptId", "ENST1")); DetachedCriteria geneCriteria = genomicIdSetCriteria.createCriteria("gene"); geneCriteria.add(Restrictions.eq("ensemblGeneAsOutput", new Boolean(true))); DetachedCriteria proteinCriteria = genomicIdSetCriteria.createCriteria("protein"); proteinCriteria.add(Restrictions.eq("ensemblPeptideAsOutput", new Boolean(true))); // load all GenomicIdentifierSet objects with Gene.entrezgeneID = A1 and ONT A->C->D->B List resultList = appService.query(genomicIdSetCriteria, "edu.wustl.geneconnect.domain.GenomicIdentifierSet"); System.out.println("Result Size: " + resultList.size()); for (Iterator iter = resultList.iterator(); iter.hasNext();) { GenomicIdentifierSet gset = (GenomicIdentifierSet) iter.next(); System.out.println("**************************************************************"); System.out.println("Set id: " + gset.getId() + " Confidence Score: " + gset.getConfidenceScore()); // System.out.println("Gid: " + gset.getGene().getEntrezgeneID()); Collection coll = gset.getOrderOfNodeTraversalCollection(); /*Get and Print the Order of Node Traveersal associated with this GenomicIdentifierSet*/ System.out.println("________________________________________________________"); for (Iterator iter1 = coll.iterator(); iter1.hasNext();) { System.out.println("ONT Id----DataSource-------LinkType"); OrderOfNodeTraversal ont = (OrderOfNodeTraversal) iter1.next(); OrderOfNodeTraversal tempont = ont; while (tempont != null) { LinkType ltype = tempont.getLinkType(); String linkType = null; if (ltype != null) linkType = ltype.getType(); System.out.println(tempont.getId() + "----" + tempont.getSourceDataSource().getName() + "------" + linkType); OrderOfNodeTraversal nextont = tempont.getChildOrderOfNodeTraversal(); tempont = nextont; } System.out.println("________________________________________________________"); } System.out.println("**************************************************************"); } }
From source file:GCTestClient.java
License:BSD License
/** * Use case : Query By Limiting ID Frequency * Search on one ensemblPeptideId attribute within a Protein * with a given higher frequency (from GenomicIdentifierData) for Entrez Gene * data source./*from ww w. j ava2s . c o m*/ * * Display the result contining Genomic IDs and associated Frequency * * @throws Exception */ public static void queryByLimitingIDFrequency() throws Exception { /** * Create DetachedCriteria for GenomicIdentifierSet with restriction for confidenceScore >=0.2 */ DetachedCriteria genomicIdSetCriteria = DetachedCriteria.forClass(GenomicIdentifierSet.class); /** * Create Criteria to search on guven frequency of given data source */ DetachedCriteria freqCriteria = genomicIdSetCriteria.createCriteria("consensusIdentifierDataCollection"); freqCriteria.add(Restrictions.gt("frequency", new Float("0.1"))); freqCriteria.add(Restrictions.gt("frequency", new Float("0.1"))); /** * The dataSource value should be one of the Data Source Name * */ DetachedCriteria genomicIdCriteria = freqCriteria.createCriteria("genomicIdentifier"); genomicIdCriteria.add(Restrictions.eq("dataSource", "Ensembl Gene")); genomicIdCriteria.add(Restrictions.eq("dataSource", "Entrez Gene")); /** * Create Criteria for ensemblGene selected as ouput */ DetachedCriteria geneCriteria = genomicIdSetCriteria.createCriteria("gene"); geneCriteria.add(Restrictions.eq("ensemblGeneAsOutput", new Boolean(true))); /** * Create Criteria for search on ensemblPeptideId attribute */ DetachedCriteria proteinCriteria = genomicIdSetCriteria.createCriteria("protein"); proteinCriteria.add(Restrictions.eq("ensemblPeptideId", "ENSP1")); /** * Create Criteria for refseqmRNA selected as ouput */ DetachedCriteria mranCriteria = genomicIdSetCriteria.createCriteria("messengerRNA"); mranCriteria.add(Restrictions.eq("refseqmRNAAsOutput", new Boolean(true))); List resultList = appService.query(genomicIdSetCriteria, GenomicIdentifierSet.class.getName()); System.out.println("ResultSet Size: " + resultList.size()); for (Iterator iter = resultList.iterator(); iter.hasNext();) { GenomicIdentifierSet gset = (GenomicIdentifierSet) iter.next(); /*Print Set Id and Confidence Score*/ System.out.println( "\nSet Id: " + gset.getId() + " Confidence Score: " + gset.getConfidenceScore() + "\n"); Gene gene = gset.getGene(); MessengerRNA mrna = gset.getMessengerRNA(); Protein p = gset.getProtein(); System.out.println("Ensembl Gene ID | Ensembl Peptide ID | RefSeq mRNA ID"); System.out.println(gene.getEnsemblGeneId() + " | " + p.getEnsemblPeptideId() + " | " + mrna.getRefseqId()); System.out .println("-----------------------------------------------------------------------------------"); } /* * Print the Genomic identiifer and its frequency throughout the GenomicIdentifierSolution */ System.out.println( "Following is a list of all genomic identifers (occured in this result)and its frequency"); if (resultList.size() > 0) { GenomicIdentifierSet set = (GenomicIdentifierSet) resultList.get(0); GenomicIdentifierSolution solution = set.getGenomicIdentifierSolution(); Collection coll = solution.getConsensusIdentifierDataCollection(); System.out.println("Genomic Identifer\tFrequency"); for (Iterator iter1 = coll.iterator(); iter1.hasNext();) { //OrderOfNodeTraversal ont = (OrderOfNodeTraversal)iter1.next(); ConsensusIdentifierData ont = (ConsensusIdentifierData) iter1.next(); GenomicIdentifier g = ont.getGenomicIdentifier(); if (g != null) System.out.println("\t" + g.getGenomicIdentifier() + "\t\t\t" + ont.getFrequency()); } } }
From source file:TechGuideExamples.java
License:BSD License
public static void main(String[] args) throws Exception { System.out.println("*** Tech Guide Examples"); ApplicationService appService = ApplicationServiceProvider.getApplicationService(); /** Examples used in Developer Guide */ try {//from ww w .ja va 2 s. c o m System.out.println("\nExample One: Simple Search (Single Criteria Object)"); Gene gene = new Gene(); // searching for all genes whose symbol starts with brca gene.setSymbol("brca*"); List resultList = appService.search(Gene.class, gene); for (Iterator resultsIterator = resultList.iterator(); resultsIterator.hasNext();) { Gene returnedGene = (Gene) resultsIterator.next(); System.out.println("Symbol: " + returnedGene.getSymbol() + "\tTaxon:" + returnedGene.getTaxon().getScientificName() + "\tName " + returnedGene.getFullName()); } } catch (RuntimeException e) { e.printStackTrace(); } try { System.out.println("\nExample Two: Simple Search (Criteria Object Collection)"); Taxon taxon1 = new Taxon(); taxon1.setAbbreviation("hs"); // Homo sapiens Taxon taxon2 = new Taxon(); taxon2.setAbbreviation("m"); // Mus musculus List<Taxon> taxonList = new ArrayList<Taxon>(); taxonList.add(taxon1); taxonList.add(taxon2); List resultList = appService.search(Gene.class, taxonList); System.out.println("Total # of records = " + resultList.size()); } catch (Exception e) { e.printStackTrace(); } try { System.out.println("\nExample Three: Simple Search (Compound Criteria Object)"); Taxon taxon = new Taxon(); taxon.setAbbreviation("hs"); // Homo sapiens Gene gene = new Gene(); gene.setTaxon(taxon); gene.setSymbol("IL5"); // Interleukin 5 List<Gene> geneList = new ArrayList<Gene>(); geneList.add(gene); Pathway pathway = new Pathway(); pathway.setGeneCollection(geneList); List resultList = appService.search("gov.nih.nci.cabio.domain.Pathway", pathway); for (Iterator resultsIterator = resultList.iterator(); resultsIterator.hasNext();) { Pathway returnedPathway = (Pathway) resultsIterator.next(); System.out.println("Name: " + returnedPathway.getName() + "\tDisplayValue: " + returnedPathway.getDisplayValue()); } } catch (Exception e) { e.printStackTrace(); } try { System.out.println("\nExample Four: Nested Search"); Gene gene = new Gene(); gene.setSymbol("TP53"); // Tumor protein p53 (Li-Fraumeni syndrome) List resultList = appService .search("gov.nih.nci.cabio.domain.ProteinSequence,gov.nih.nci.cabio.domain.Protein", gene); for (Iterator resultsIterator = resultList.iterator(); resultsIterator.hasNext();) { ProteinSequence returnedProtSeq = (ProteinSequence) resultsIterator.next(); System.out.println("Id: " + returnedProtSeq.getId() + "\tLength: " + returnedProtSeq.getLength()); } } catch (Exception e) { e.printStackTrace(); } try { System.out.println("\nExample Five: Detached Criteria Search"); DetachedCriteria criteria = DetachedCriteria.forClass(PhysicalLocation.class); criteria = criteria.add(Restrictions.gt("chromosomalStartPosition", new Long(86851632))); criteria = criteria.add(Restrictions.lt("chromosomalEndPosition", new Long(86861632))); criteria = criteria.add(Restrictions.ilike("assembly", "reference")); criteria = criteria.createCriteria("chromosome").add(Restrictions.eq("number", "1")); List resultList = appService.query(criteria); System.out.println("Total # of records = " + resultList.size()); } catch (Exception e) { e.printStackTrace(); } try { System.out.println("\nExample Six: HQL Search"); String hqlString = "FROM gov.nih.nci.cabio.domain.Gene g WHERE g.symbol LIKE ?"; List<String> params = new ArrayList<String>(); params.add("BRCA%"); HQLCriteria hqlC = new HQLCriteria(hqlString, params); List resultList = appService.query(hqlC); System.out.println("Total # of records = " + resultList.size()); } catch (Exception e) { e.printStackTrace(); } }
From source file:cn.trymore.oa.service.system.impl.ServiceSystemLogImpl.java
License:Open Source License
@Override public PaginationSupport<ModelSystemLog> getPaginationByEntity(ModelSystemLog entity, PagingBean pagingBean) throws ServiceException { DetachedCriteria criteria = DetachedCriteria.forClass(ModelSystemLog.class); if (entity != null) { if (UtilString.isNotEmpty(entity.getExeOperation())) { criteria.add(Restrictions.eq("exeOperation", entity.getExeOperation())); }/*from w ww.j a v a 2 s .c o m*/ if (entity.getDistrictId() != null && UtilString.isNotEmpty(entity.getDistrictId())) { criteria.createCriteria("user").createCriteria("district") .add(Restrictions.eq("id", entity.getDistrictId())); } if (entity.getStartTime() != null && UtilString.isNotEmpty(entity.getStartTime())) { criteria.add(Restrictions.ge("createtime", entity.getStartTime())); } if (entity.getEndTime() != null && UtilString.isNotEmpty(entity.getEndTime())) { criteria.add(Restrictions.le("createtime", entity.getEndTime())); } } // added by Jeccy.Zhao on 14/10/2012 criteria.addOrder(Order.desc("createtime")); return this.getAll(criteria, pagingBean); }
From source file:com.hmsinc.epicenter.model.workflow.impl.WorkflowRepositoryImpl.java
License:Open Source License
/** * Get the subquery for filtering based on events. * /*www . ja va 2 s .c o m*/ * @param geometry * @return */ private DetachedCriteria getInvestigationGeometryFilter(final Geometry geometry) { final DetachedCriteria dc = DetachedCriteria.forClass(Event.class, "event"); dc.createCriteria("event.investigations").add(Restrictions.eqProperty("id", "investigation.id")); dc.createCriteria("event.geography") .add(SpatialRestrictions.withinOrFilter("geometry", geometry, 1000, true)); dc.setProjection(Projections.property("id")); // dc.setComment(" */ /*+ ORDERED "); return dc; }
From source file:com.jaspersoft.jasperserver.api.metadata.user.service.impl.UserAuthorityServiceImpl.java
License:Open Source License
private DetachedCriteria createAssignedRolesCriteria(ExecutionContext context, RepoUser user, String text, boolean order) { final String roleNameField = "roleName"; final String externallyDefinedField = "externallyDefined"; DetachedCriteria criteria = DetachedCriteria.forClass(getPersistentRoleClass()); DetachedCriteria usersCriteria = criteria.createCriteria("users"); usersCriteria.add(Restrictions.idEq(user.getId())); final String roleNameLikeValue = text == null ? "" : text; Criterion roleNameCriterion = Restrictions.ilike(roleNameField, "%" + roleNameLikeValue + "%"); criteria.add(roleNameCriterion);//from w w w. ja v a 2s . c o m criteria.add(Restrictions.eq(externallyDefinedField, Boolean.FALSE)); if (order) { criteria.addOrder(Order.asc(roleNameField)); } return criteria; }
From source file:com.jaspersoft.jasperserver.api.metadata.user.service.impl.UserAuthorityServiceImpl.java
License:Open Source License
protected DetachedCriteria createUsersWithRoleCriteria(String roleName, String userName, boolean order) { DetachedCriteria criteria = DetachedCriteria.forClass(getPersistentUserClass()); String userNameField = "username"; String roleNameField = "roleName"; // addTenantCriteria(criteria, tenantIds); createSearchByUserNameCriteria(criteria, userName); if (roleName != null && roleName.trim().length() > 0) { Criterion roleNameCriterion = Restrictions.eq(roleNameField, roleName.trim()); criteria.createCriteria("roles").add(roleNameCriterion); }/* w w w .j a v a 2s . co m*/ if (order) { criteria.addOrder(Order.asc(userNameField)); } return criteria; }
From source file:com.nowgroup.scsee.geo.state.HibernateStateRepository.java
License:MIT License
@SuppressWarnings("unchecked") @Override// w w w. j av a2s.c o m public List<GeoState> getStatesByCountryId(int countryId) { DetachedCriteria dc = DetachedCriteria.forClass(GeoState.class); DetachedCriteria countryCriteria = dc.createCriteria("country"); countryCriteria.add(Restrictions.eq("id", countryId)); countryCriteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY); return (List<GeoState>) getHibernateTemplate().findByCriteria(dc); }
From source file:com.opengamma.masterdb.batch.DbBatchMaster.java
License:Open Source License
@Override @SuppressWarnings("unchecked") public Pair<List<RiskRun>, Paging> searchRiskRun(final BatchRunSearchRequest request) { s_logger.info("Searching BatchDocuments: ", request); final DetachedCriteria criteria = DetachedCriteria.forClass(RiskRun.class); if (request.getValuationTime() != null) { criteria.add(Restrictions.eq("valuationTime", request.getValuationTime())); }//from w w w. j a v a 2s . c o m if (request.getVersionCorrection() != null) { criteria.add(Restrictions.eq("versionCorrection", request.getVersionCorrection())); } if (request.getMarketDataUid() != null) { criteria.createCriteria("marketData") .add(Restrictions.eq("baseUidScheme", request.getMarketDataUid().getScheme())) .add(Restrictions.eq("baseUidValue", request.getMarketDataUid().getValue())) .add(eqOrIsNull("baseUidVersion", request.getMarketDataUid().getVersion())); //.addOrder(Order.asc("baseUid")); } if (request.getViewDefinitionUid() != null) { criteria.add(Restrictions.eq("viewDefinitionUidScheme", request.getViewDefinitionUid().getScheme())) .add(Restrictions.eq("viewDefinitionUidValue", request.getViewDefinitionUid().getValue())) .add(eqOrIsNull("viewDefinitionUidVersion", request.getViewDefinitionUid().getVersion())); //.addOrder(Order.asc("viewDefinitionUid")); } return getTransactionTemplateRetrying(getMaxRetries()) .execute(new TransactionCallback<Pair<List<RiskRun>, Paging>>() { @Override public Pair<List<RiskRun>, Paging> doInTransaction(final TransactionStatus status) { // final PagingRequest pagingRequest = request.getPagingRequest(); List<RiskRun> results = Collections.emptyList(); Paging paging; if (!pagingRequest.equals(PagingRequest.NONE)) { if (pagingRequest.equals(PagingRequest.ALL)) { criteria.addOrder(Order.asc("valuationTime")); results = getHibernateTemplate().findByCriteria(criteria, pagingRequest.getFirstItem(), pagingRequest.getPagingSize()); // paging = Paging.of(pagingRequest, results); } else { criteria.setProjection(Projections.rowCount()); final Long totalCount = (Long) getHibernateTemplate().findByCriteria(criteria) .get(0); paging = Paging.of(pagingRequest, totalCount.intValue()); // criteria.setProjection(null); criteria.setResultTransformer(Criteria.ROOT_ENTITY); criteria.addOrder(Order.asc("valuationTime")); results = getHibernateTemplate().findByCriteria(criteria, pagingRequest.getFirstItem(), pagingRequest.getPagingSize()); } } else { paging = Paging.of(PagingRequest.NONE, 0); } return Pair.of(results, paging); } }); }