List of usage examples for org.hibernate.transform AliasToBeanResultTransformer AliasToBeanResultTransformer
public AliasToBeanResultTransformer(Class resultClass)
From source file:be.shad.tsqb.test.TestResultTransformer.java
License:Apache License
@Test public void resultTransformerLoadTest() throws IllegalAccessException, IllegalArgumentException, InvocationTargetException, NoSuchMethodException, SecurityException { Product product = query.select(Product.class); ManyProperties manyProperties = product.getManyProperties(); List<String> aliases = new ArrayList<>(); List<String> aliasToBeanResultAliases = new ArrayList<>(); for (int i = 1; i < 80; i++) { manyProperties.getClass().getMethod("setProperty" + i, String.class).invoke(manyProperties, ""); aliases.add("manyProperties_property" + i); aliasToBeanResultAliases.add("property" + i); }//w w w . j av a 2 s .c o m String[] aliasToBeanResultAliasesArray = aliasToBeanResultAliases.toArray(new String[0]); String[] aliasesArray = aliases.toArray(new String[0]); Object[] valuesArray = new Object[aliasesArray.length]; for (int i = 0; i < aliasesArray.length; i++) { valuesArray[i] = "value" + i; } int outer = 5; int inner = 100000; long time = System.currentTimeMillis(); for (int i = 0; i < outer; i++) { AliasToBeanResultTransformer tf = new AliasToBeanResultTransformer(ManyProperties.class); for (int j = 0; j < inner; j++) { tf.transformTuple(valuesArray, aliasToBeanResultAliasesArray); } } time = (System.currentTimeMillis() - time); logger.debug((time / (double) (outer * inner)) + "ms/transform (original)"); time = System.currentTimeMillis(); for (int i = 0; i < outer; i++) { HqlQueryBuilderParams params = new HqlQueryBuilderParamsImpl(); HqlQuery query = new HqlQuery(); getProjections().appendTo(query, params); for (int j = 0; j < inner; j++) { query.getResultTransformer().transformTuple(valuesArray, aliasesArray); } } time = (System.currentTimeMillis() - time); logger.debug((time / (double) (outer * inner)) + "ms/transform"); }
From source file:br.com.gvt.eng.vod.dao.AssetDAO.java
@SuppressWarnings("unchecked") public List<OnDemandContentVO> findByName(String c, LikeOperator like) { StringBuilder hql = new StringBuilder("select "); hql.append("a.title as title, "); hql.append("a.originalTitle as originalTitle, "); hql.append("'UNKNOWN' as genre, "); hql.append("c.description as category, "); hql.append("a.subtitles as subtitle, "); hql.append("a.country as country, "); hql.append("sc.description as subCategory, "); hql.append("a.assetId as assetId, "); hql.append("a.creationDate as creationDate, "); hql.append("a.description as description, "); hql.append("a.director as director, "); hql.append("a.actors as actors, "); hql.append("a.episode as episode, "); hql.append("a.billingID as billingID, "); hql.append("a.episodeName as episodeName, "); hql.append("a.licenseWindowEnd as licenseWindowEnd, "); hql.append("a.licenseWindowStart as licenseWindowStart, "); hql.append("a.price as price, "); hql.append("a.releaseYear as releaseYear, "); hql.append("a.season as season, "); hql.append("a.languages as languages, "); hql.append("a.assetInfo as assetInfo, "); hql.append("r.rating as rating, "); hql.append("r.adult as isAdult, "); hql.append("a.totalTime as totalTime, "); hql.append("a.product as product, "); hql.append("a.screenFormat as screenFormat, "); hql.append("a.audioType as audioType, "); hql.append("a.canResume as canResume, "); hql.append("a.isHD as isHD, "); hql.append("a.isRevised as isRevised, "); hql.append("a.fileSize as fileSize, "); hql.append("a.checksum as checksum, "); hql.append("a.bitrate as bitrate, "); hql.append("a.titleAlternative as titleAlternative, "); hql.append("at.description as assetType, "); hql.append("cp.providerId as contentProvider "); hql.append(/*from w ww . j a v a 2 s . com*/ "from IpvodAsset as a left join a.ipvodCategory1 c left join a.ipvodCategory2 sc left join a.ipvodAssetType at left join a.ipvodContentProvider cp left join a.rating r "); hql.append("where upper(a.title) like upper(:param) order by a.title asc "); Query query = getSession().createQuery(String.valueOf(hql)); if (LikeOperator.CONDITION_ALL.equals(like)) { query.setString("param", "%" + c + "%"); } else if (LikeOperator.CONDITION_LEFT.equals(like)) { query.setString("param", c + "%"); } else { query.setString("param", "%" + c); } query.setResultTransformer(new AliasToBeanResultTransformer(OnDemandContentVO.class)); return query.list(); }
From source file:br.com.gvt.eng.vod.dao.AssetDAO.java
public List<OnDemandContentVO> findTop50() { StringBuilder aux = new StringBuilder( "select a.assetId, count(*) as total from IpvodPurchase p join p.ipvodAsset a group by a.assetId order by total desc"); Query query = getSession().createQuery(String.valueOf(aux)); query.setFirstResult(0);/* w w w .ja va2 s .c om*/ query.setMaxResults(50); @SuppressWarnings("unchecked") List<Object[]> list = query.list(); List<OnDemandContentVO> vos = new ArrayList<OnDemandContentVO>(); for (Object[] obj : list) { StringBuilder hql = new StringBuilder("select "); hql.append("a.title as title, "); hql.append("a.originalTitle as originalTitle, "); hql.append("'UNKNOWN' as genre, "); hql.append("c.description as category, "); hql.append("a.subtitles as subtitle, "); hql.append("a.country as country, "); hql.append("sc.description as subCategory, "); hql.append("a.assetId as assetId, "); hql.append("a.creationDate as creationDate, "); hql.append("a.description as description, "); hql.append("a.director as director, "); hql.append("a.actors as actors, "); hql.append("a.episode as episode, "); hql.append("a.billingID as billingID, "); hql.append("a.episodeName as episodeName, "); hql.append("a.licenseWindowEnd as licenseWindowEnd, "); hql.append("a.licenseWindowStart as licenseWindowStart, "); hql.append("a.price as price, "); hql.append("a.releaseYear as releaseYear, "); hql.append("a.season as season, "); hql.append("a.languages as languages, "); hql.append("a.assetInfo as assetInfo, "); hql.append("r.rating as rating, "); hql.append("r.adult as isAdult, "); hql.append("a.totalTime as totalTime, "); hql.append("a.product as product, "); hql.append("a.screenFormat as screenFormat, "); hql.append("a.audioType as audioType, "); hql.append("a.canResume as canResume, "); hql.append("a.isHD as isHD, "); hql.append("a.isRevised as isRevised, "); hql.append("a.fileSize as fileSize, "); hql.append("a.checksum as checksum, "); hql.append("a.bitrate as bitrate, "); hql.append("a.titleAlternative as titleAlternative, "); hql.append("at.description as assetType, "); hql.append("cp.providerId as contentProvider "); hql.append( "from IpvodAsset as a left join a.ipvodCategory1 c left join a.ipvodCategory2 sc left join a.ipvodAssetType at left join a.ipvodContentProvider cp left join a.rating r "); hql.append("where a.assetId = :assetId order by a.title asc "); query = getSession().createQuery(String.valueOf(hql)); query.setParameter("assetId", obj[0]); query.setResultTransformer(new AliasToBeanResultTransformer(OnDemandContentVO.class)); OnDemandContentVO vo = (OnDemandContentVO) query.uniqueResult(); vo.setOrder(new Long(list.lastIndexOf(obj) + 1)); vos.add(list.lastIndexOf(obj), vo); } return vos; }
From source file:br.com.gvt.eng.vod.dao.AssetDAO.java
@SuppressWarnings("unchecked") public List<OnDemandContentVO> findByGenre(Long genreId) { StringBuilder hql = new StringBuilder("select "); hql.append("a.title as title, "); hql.append("a.originalTitle as originalTitle, "); hql.append("'UNKNOWN' as genre, "); hql.append("c.description as category, "); hql.append("a.subtitles as subtitle, "); hql.append("a.country as country, "); hql.append("sc.description as subCategory, "); hql.append("a.assetId as assetId, "); hql.append("a.creationDate as creationDate, "); hql.append("a.description as description, "); hql.append("a.director as director, "); hql.append("a.actors as actors, "); hql.append("a.episode as episode, "); hql.append("a.billingID as billingID, "); hql.append("a.episodeName as episodeName, "); hql.append("a.licenseWindowEnd as licenseWindowEnd, "); hql.append("a.licenseWindowStart as licenseWindowStart, "); hql.append("a.price as price, "); hql.append("a.releaseYear as releaseYear, "); hql.append("a.season as season, "); hql.append("a.languages as languages, "); hql.append("a.assetInfo as assetInfo, "); hql.append("r.rating as rating, "); hql.append("r.adult as isAdult, "); hql.append("a.totalTime as totalTime, "); hql.append("a.product as product, "); hql.append("a.screenFormat as screenFormat, "); hql.append("a.audioType as audioType, "); hql.append("a.canResume as canResume, "); hql.append("a.isHD as isHD, "); hql.append("a.isRevised as isRevised, "); hql.append("a.fileSize as fileSize, "); hql.append("a.checksum as checksum, "); hql.append("a.bitrate as bitrate, "); hql.append("a.titleAlternative as titleAlternative, "); hql.append("at.description as assetType, "); hql.append("cp.providerId as contentProvider "); hql.append(//from ww w . j a va 2s. c o m "from IpvodAsset as a left join a.ipvodCategory1 c left join a.ipvodCategory2 sc left join a.ipvodAssetType at left join a.ipvodContentProvider cp left join a.rating r "); hql.append("where c.categoryId = :genre order by a.title asc "); Query query = getSession().createQuery(String.valueOf(hql)); query.setParameter("genre", genreId); query.setResultTransformer(new AliasToBeanResultTransformer(OnDemandContentVO.class)); return query.list(); }
From source file:br.com.gvt.eng.vod.dao.AssetDAO.java
@SuppressWarnings("unchecked") public List<OnDemandContentVO> findHighlights() { StringBuilder hql = new StringBuilder("select "); hql.append("h.order as order, "); hql.append("a.title as title, "); hql.append("a.originalTitle as originalTitle, "); hql.append("'UNKNOWN' as genre, "); hql.append("c.description as category, "); hql.append("a.subtitles as subtitle, "); hql.append("a.country as country, "); hql.append("sc.description as subCategory, "); hql.append("a.assetId as assetId, "); hql.append("a.creationDate as creationDate, "); hql.append("a.description as description, "); hql.append("a.director as director, "); hql.append("a.actors as actors, "); hql.append("a.episode as episode, "); hql.append("a.billingID as billingID, "); hql.append("a.episodeName as episodeName, "); hql.append("a.licenseWindowEnd as licenseWindowEnd, "); hql.append("a.licenseWindowStart as licenseWindowStart, "); hql.append("a.price as price, "); hql.append("a.releaseYear as releaseYear, "); hql.append("a.season as season, "); hql.append("a.languages as languages, "); hql.append("a.assetInfo as assetInfo, "); hql.append("r.rating as rating, "); hql.append("r.adult as isAdult, "); hql.append("a.totalTime as totalTime, "); hql.append("a.product as product, "); hql.append("a.screenFormat as screenFormat, "); hql.append("a.audioType as audioType, "); hql.append("a.canResume as canResume, "); hql.append("a.isHD as isHD, "); hql.append("a.isRevised as isRevised, "); hql.append("a.fileSize as fileSize, "); hql.append("a.checksum as checksum, "); hql.append("a.bitrate as bitrate, "); hql.append("a.titleAlternative as titleAlternative, "); hql.append("at.description as assetType, "); hql.append("cp.providerId as contentProvider "); hql.append(//from ww w. jav a 2s . c om "from IpvodHighlight as h join h.asset a left join a.ipvodCategory1 c left join a.ipvodCategory2 sc left join a.ipvodAssetType at left join a.ipvodContentProvider cp left join a.rating r "); hql.append("order by order asc "); Query query = getSession().createQuery(String.valueOf(hql)); query.setResultTransformer(new AliasToBeanResultTransformer(OnDemandContentVO.class)); return query.list(); }
From source file:br.com.gvt.eng.vod.dao.AssetDAO.java
@SuppressWarnings("unchecked") public List<OnDemandContentVO> findReleases() { StringBuilder hql = new StringBuilder("select "); hql.append("ir.order as order, "); hql.append("a.title as title, "); hql.append("a.originalTitle as originalTitle, "); hql.append("'UNKNOWN' as genre, "); hql.append("c.description as category, "); hql.append("a.subtitles as subtitle, "); hql.append("a.country as country, "); hql.append("sc.description as subCategory, "); hql.append("a.assetId as assetId, "); hql.append("a.creationDate as creationDate, "); hql.append("a.description as description, "); hql.append("a.director as director, "); hql.append("a.actors as actors, "); hql.append("a.episode as episode, "); hql.append("a.billingID as billingID, "); hql.append("a.episodeName as episodeName, "); hql.append("a.licenseWindowEnd as licenseWindowEnd, "); hql.append("a.licenseWindowStart as licenseWindowStart, "); hql.append("a.price as price, "); hql.append("a.releaseYear as releaseYear, "); hql.append("a.season as season, "); hql.append("a.languages as languages, "); hql.append("a.assetInfo as assetInfo, "); hql.append("r.rating as rating, "); hql.append("r.adult as isAdult, "); hql.append("a.totalTime as totalTime, "); hql.append("a.product as product, "); hql.append("a.screenFormat as screenFormat, "); hql.append("a.audioType as audioType, "); hql.append("a.canResume as canResume, "); hql.append("a.isHD as isHD, "); hql.append("a.isRevised as isRevised, "); hql.append("a.fileSize as fileSize, "); hql.append("a.checksum as checksum, "); hql.append("a.bitrate as bitrate, "); hql.append("a.titleAlternative as titleAlternative, "); hql.append("at.description as assetType, "); hql.append("cp.providerId as contentProvider "); hql.append(/* w ww .j a va 2 s .c o m*/ "from IpvodRelease as ir join ir.asset a left join a.ipvodCategory1 c left join a.ipvodCategory2 sc left join a.ipvodAssetType at left join a.ipvodContentProvider cp left join a.rating r "); hql.append("order by order asc "); Query query = getSession().createQuery(String.valueOf(hql)); query.setResultTransformer(new AliasToBeanResultTransformer(OnDemandContentVO.class)); return query.list(); }
From source file:br.com.gvt.eng.vod.dao.IngestDAO.java
/** * Busca dados para serem mostrados na tela de revisao Ingestao IPVOD-CMS * //from w w w . j av a2 s.c om * @return List<IpvodIngestStage> */ @SuppressWarnings("unchecked") public List<IngestVO> findAllDataIngestForRevision(UriInfo uriInfo, IpvodContentProvider ipvodContentProvider) { // HQL dos dados, todos os campos devem ter o mesmo nome dos atributos // no IngestVO StringBuilder hql = new StringBuilder(); hql.append("select "); hql.append("ins.id as idIngest, "); hql.append("ins.stageType.id as stageType, "); hql.append("asset.assetId as assetId, "); hql.append("asset.title as assetTitle, "); hql.append("ins.assetName as assetName, "); hql.append("assetCategory.description as categoryDescription, "); hql.append("assetCategory.categoryId as assetCategoryId, "); hql.append("ins.dtInsert as dtInsertIngest, "); hql.append("ins.dtChange as dtChangeIngest, "); hql.append("cast(ins.result as boolean) as resultOK, "); hql.append("ins.priority as priority, "); hql.append("asset.languages as language, "); hql.append("asset.billingID as billingId, "); hql.append("asset.price as price "); hql.append("from "); hql.append("IpvodIngestStage ins "); hql.append("inner join ins.ipvodAsset as asset "); hql.append("left join ins.ipvodAsset.ipvodCategory1 as assetCategory "); hql.append("where "); hql.append("ins.stageType.id = 7 "); hql.append("and (asset.isRevised is null or asset.isRevised = 0) "); hql.append("and asset.licenseWindowEnd > sysdate "); if (ipvodContentProvider != null) { hql.append(" and asset.ipvodContentProvider.contentProviderId = " + ipvodContentProvider.getContentProviderId()); } if (uriInfo.getQueryParameters().getFirst(IpvodConstants.URLPARAM_NOT_CATEGORIZED) != null) { hql.append(" and asset.ipvodVisualMenuAsset is empty "); } Map<String, Object> parameters = parseUriInfo(uriInfo); Filter filter = (Filter) parameters.get("filters"); if (filter != null && !filter.getRules().isEmpty()) { if (filter.getGroupOp().equals("AND")) { for (FilterRules rule : filter.getRules()) { hql.append( " and upper(" + rule.getField() + ") like '%" + rule.getData().toUpperCase() + "%' "); } } else { StringBuilder orClause = new StringBuilder(); orClause.append(" and ( "); for (int i = 0; i < filter.getRules().size(); i++) { FilterRules rule = filter.getRules().get(i); if (i > 0) { orClause.append(" or "); } orClause.append( " upper(" + rule.getField() + ") like '%" + rule.getData().toUpperCase() + "%' "); } orClause.append(" ) "); hql.append(orClause); } } hql.append(" order by ins.id desc, ins.priority asc"); Query query = getSession().createQuery(String.valueOf(hql)); setPagination(query, uriInfo); query.setResultTransformer(new AliasToBeanResultTransformer(IngestVO.class)); return query.list(); }
From source file:br.com.gvt.eng.vod.dao.IngestDAO.java
/** * Lista dados @IpvodIngestStage/*w w w. j av a 2 s . com*/ * * @return List<IngestVO> */ @SuppressWarnings("unchecked") public List<IngestVO> findDataIngestBeforePlataform(UriInfo uriInfo, IpvodContentProvider ipvodContentProvider) { // HQL dos dados, todos os campos devem ter o mesmo nome dos atributos // no IngestVO StringBuilder hql = new StringBuilder(); hql.append("select "); hql.append("ins.id as idIngest, "); hql.append("ins.stageType.id as stageType, "); hql.append("ins.assetInfo as assetInfo, "); hql.append("ins.adicionalInfo as adicionalInfo, "); hql.append("asset.assetId as assetId, "); hql.append("asset.title as assetTitle, "); hql.append("ins.assetName as assetName, "); hql.append("ins.dtInsert as dtInsertIngest, "); hql.append("ins.dtChange as dtChangeIngest, "); hql.append("cast(ins.result as boolean) as resultOK, "); hql.append("ins.priority as priority "); hql.append("from "); hql.append("IpvodIngestStage ins "); hql.append("left outer join ins.ipvodAsset as asset "); hql.append("where "); hql.append("ins.stageType.id < 7 "); if (ipvodContentProvider != null) { hql.append(" and asset.ipvodContentProvider.contentProviderId = " + ipvodContentProvider.getContentProviderId()); } Map<String, Object> parameters = parseUriInfo(uriInfo); Filter filter = (Filter) parameters.get("filters"); if (filter != null && !filter.getRules().isEmpty()) { if (filter.getGroupOp().equals("AND")) { for (FilterRules rule : filter.getRules()) { hql.append( " and upper(" + rule.getField() + ") like '%" + rule.getData().toUpperCase() + "%' "); } } else { StringBuilder orClause = new StringBuilder(); orClause.append(" and ( "); for (int i = 0; i < filter.getRules().size(); i++) { FilterRules rule = filter.getRules().get(i); if (i > 0) { orClause.append(" or "); } orClause.append( " upper(" + rule.getField() + ") like '%" + rule.getData().toUpperCase() + "%' "); } orClause.append(" ) "); hql.append(orClause); } } hql.append(" order by ins.id desc, ins.priority asc"); Query query = getSession().createQuery(String.valueOf(hql)); setPagination(query, uriInfo); query.setResultTransformer(new AliasToBeanResultTransformer(IngestVO.class)); return query.list(); }
From source file:br.com.gvt.eng.vod.dao.IngestDAO.java
/** * Lista dados @IpvodBalancerData// w w w . ja v a 2s. co m * * @param idIngest * @return List<BalancerVO> */ @SuppressWarnings("unchecked") public List<BalancerVO> findData4Balancer(Long idIngest) { // HQL dos dados, todos os campos devem ter o mesmo nome dos atributos // no IngestVO StringBuilder hql = new StringBuilder(); hql.append("select "); hql.append("bad.id as idBalancer, "); hql.append("bad.nameFile as nameFile, "); hql.append("bad.status as statusBalancer, "); hql.append("bad.percentComp as percentCompBalancer, "); hql.append("bad.dateEnd as dateEndBalancer "); hql.append("from "); hql.append("IpvodIngestStage ins "); hql.append("left outer join ins.ipvodBalancer as bad "); hql.append("where "); hql.append("ins.id = " + idIngest); hql.append("order by ins.priority, ins.id asc"); Query query = getSession().createQuery(String.valueOf(hql)); query.setResultTransformer(new AliasToBeanResultTransformer(BalancerVO.class)); return query.list(); }
From source file:br.com.gvt.eng.vod.dao.IngestDAO.java
/** * Lista dados @IpvodDrmData/*from w w w . java 2 s .c om*/ * * @param idIngest * @return List<DrmVO> */ @SuppressWarnings("unchecked") public List<DrmVO> findDataDrm(Long idIngest) { // HQL dos dados, todos os campos devem ter o mesmo nome dos atributos // no IngestVO StringBuilder hql = new StringBuilder(); hql.append("select "); hql.append("drm.drmId as drmId, "); hql.append("drm.nameFile as nameFile, "); hql.append("drm.statusDrm as statusDrm, "); hql.append("drm.percentCompDrm as percentCompDrm, "); hql.append("drm.dateEndDrm as dateEndDrm "); hql.append("from "); hql.append("IpvodIngestStage ins "); hql.append("left outer join ins.ipvodDrm as drm "); hql.append("where "); hql.append("ins.id = " + idIngest); hql.append("order by ins.priority, ins.id asc"); Query query = getSession().createQuery(String.valueOf(hql)); query.setResultTransformer(new AliasToBeanResultTransformer(DrmVO.class)); return query.list(); }