use of javax.persistence.TypedQuery in project UVMS-ActivityModule-APP by UnionVMS.
the class FaReportDocumentDao method getFaReportDocumentsForTrip.
@SuppressWarnings("unchecked")
public List<FaReportDocumentEntity> getFaReportDocumentsForTrip(String tripId) {
TypedQuery query = getEntityManager().createNamedQuery(FaReportDocumentEntity.FIND_FA_DOCS_BY_TRIP_ID, FaReportDocumentEntity.class);
query.setParameter(TRIP_ID, tripId);
return query.getResultList();
}
use of javax.persistence.TypedQuery in project UVMS-ActivityModule-APP by UnionVMS.
the class FishingTripIdentifierDao method getNextTrips.
public List<FishingTripIdentifierEntity> getNextTrips(String vesselId, String vesselSchemeId, String tripId, Integer limit) {
TypedQuery query = getEntityManager().createNamedQuery(FishingTripIdentifierEntity.FIND_NEXT_TRIP, FishingTripIdentifierEntity.class);
query.setParameter(VESSEL_ID, vesselId);
query.setParameter(VESSEL_SCHEME_ID, vesselSchemeId);
query.setParameter(TRIP_ID, tripId);
query.setMaxResults(limit);
return query.getResultList();
}
use of javax.persistence.TypedQuery in project hibernate-orm by hibernate.
the class SingularAttributeJoinTest method testEntityModeMapJoinCriteriaQuery.
@Test
public void testEntityModeMapJoinCriteriaQuery() throws Exception {
final EntityManager entityManager = entityManagerFactory().createEntityManager();
CriteriaBuilder criteriaBuilder = entityManager.getCriteriaBuilder();
CriteriaQuery criteriaQuery = criteriaBuilder.createQuery();
javax.persistence.metamodel.EntityType distributionEntity = getEntityType("Distribution");
From distributionFrom = criteriaQuery.from(distributionEntity);
From policyJoin = distributionFrom.join("policy");
Path policyId = policyJoin.get("policyId");
criteriaQuery.select(policyId);
TypedQuery typedQuery = entityManager.createQuery(criteriaQuery);
// typedQuery.getResultList();
}
use of javax.persistence.TypedQuery in project hibernate-orm by hibernate.
the class CriteriaCompiler method compile.
public QueryImplementor compile(CompilableCriteria criteria) {
try {
criteria.validate();
} catch (IllegalStateException ise) {
throw new IllegalArgumentException("Error occurred validating the Criteria", ise);
}
final Map<ParameterExpression<?>, ExplicitParameterInfo<?>> explicitParameterInfoMap = new HashMap<>();
final List<ImplicitParameterBinding> implicitParameterBindings = new ArrayList<>();
final SessionFactoryImplementor sessionFactory = entityManager.getSessionFactory();
final LiteralHandlingMode criteriaLiteralHandlingMode = sessionFactory.getSessionFactoryOptions().getCriteriaLiteralHandlingMode();
final Dialect dialect = sessionFactory.getServiceRegistry().getService(JdbcServices.class).getDialect();
RenderingContext renderingContext = new RenderingContext() {
private int aliasCount;
private int explicitParameterCount;
public String generateAlias() {
return "generatedAlias" + aliasCount++;
}
public String generateParameterName() {
return "param" + explicitParameterCount++;
}
@Override
@SuppressWarnings("unchecked")
public ExplicitParameterInfo registerExplicitParameter(ParameterExpression<?> criteriaQueryParameter) {
ExplicitParameterInfo parameterInfo = explicitParameterInfoMap.get(criteriaQueryParameter);
if (parameterInfo == null) {
if (StringHelper.isNotEmpty(criteriaQueryParameter.getName())) {
parameterInfo = new ExplicitParameterInfo(criteriaQueryParameter.getName(), null, criteriaQueryParameter.getJavaType());
} else if (criteriaQueryParameter.getPosition() != null) {
parameterInfo = new ExplicitParameterInfo(null, criteriaQueryParameter.getPosition(), criteriaQueryParameter.getJavaType());
} else {
parameterInfo = new ExplicitParameterInfo(generateParameterName(), null, criteriaQueryParameter.getJavaType());
}
explicitParameterInfoMap.put(criteriaQueryParameter, parameterInfo);
}
return parameterInfo;
}
public String registerLiteralParameterBinding(final Object literal, final Class javaType) {
final String parameterName = generateParameterName();
final ImplicitParameterBinding binding = new ImplicitParameterBinding() {
public String getParameterName() {
return parameterName;
}
public Class getJavaType() {
return javaType;
}
public void bind(TypedQuery typedQuery) {
typedQuery.setParameter(parameterName, literal);
}
};
implicitParameterBindings.add(binding);
return parameterName;
}
public String getCastType(Class javaType) {
SessionFactoryImplementor factory = entityManager.getFactory();
Type hibernateType = factory.getTypeResolver().heuristicType(javaType.getName());
if (hibernateType == null) {
throw new IllegalArgumentException("Could not convert java type [" + javaType.getName() + "] to Hibernate type");
}
return hibernateType.getName();
}
@Override
public Dialect getDialect() {
return dialect;
}
@Override
public LiteralHandlingMode getCriteriaLiteralHandlingMode() {
return criteriaLiteralHandlingMode;
}
};
return criteria.interpret(renderingContext).buildCompiledQuery(entityManager, new InterpretedParameterMetadata() {
@Override
public Map<ParameterExpression<?>, ExplicitParameterInfo<?>> explicitParameterInfoMap() {
return explicitParameterInfoMap;
}
@Override
public List<ImplicitParameterBinding> implicitParameterBindings() {
return implicitParameterBindings;
}
});
}
use of javax.persistence.TypedQuery in project hibernate-orm by hibernate.
the class CriteriaToScrollableResultsFetchTest method getOrderLinesScrolled.
private List<OrderLine> getOrderLinesScrolled(Long facilityId) {
EntityManager em = getOrCreateEntityManager();
try {
em.getTransaction().begin();
Set<PurchaseOrg> purchaseOrgs = getPurchaseOrgsByFacilityId(facilityId, em);
assertEquals("Expected one purchase organization.", 1, purchaseOrgs.size());
System.out.println(purchaseOrgs);
TypedQuery<OrderLine> query = getOrderLinesQuery(purchaseOrgs, em);
Query hibernateQuery = query.unwrap(Query.class);
hibernateQuery.setReadOnly(true);
hibernateQuery.setCacheable(false);
List<OrderLine> lines = new ArrayList<>();
ScrollableResults scrollableResults = hibernateQuery.scroll();
scrollableResults.last();
int rows = scrollableResults.getRowNumber() + 1;
scrollableResults.beforeFirst();
while (scrollableResults.next()) {
lines.add((OrderLine) scrollableResults.get(0));
}
assertNotNull(lines);
assertEquals("Expected one order line", 1, lines.size());
em.getTransaction().commit();
return lines;
} catch (Throwable t) {
if (em.getTransaction().isActive()) {
em.getTransaction().rollback();
}
throw t;
} finally {
em.close();
}
}
Aggregations