private static Object buildEntityGraph(EntityManager em, Class<?> entityClass, String[] attributePaths) Object graph = createEntityGraph(em, entityClass); List<String> paths = new ArrayList<String>(Arrays.asList(attributePaths)); Object parent = addSubgraph(graph, segments[0]); addSubgraph(parent, segments[i]); addAttributeNodes(parent, segments[segments.length - 1]); addAttributeNodes(graph, path);
public static Object getEntityGraph(EntityManager em, Class<?> entityClass, EntityGraph entityGraphAnn) { ensureAvailable(); String graphName = entityGraphAnn.value(); if (graphName.isEmpty()) { return buildEntityGraph(em, entityClass, entityGraphAnn.paths()); } else { return uncheckedInvoke(EM_GET_ENTITY_GRAPH, em, graphName); } }
private static void ensureAvailable() { if (!isAvailable()) { throw new EntityGraphException("Class java.persistence.EntityGraph is not available. " + "Does your PersistenceProvider support JPA 2.1?"); } }
private void applyEntityGraph(Query query, Method method) { EntityGraph entityGraphAnn = method.getAnnotation(EntityGraph.class); if (entityGraphAnn == null) { return; } Object graph = EntityGraphHelper.getEntityGraph(getEntityManager(), entityClass, entityGraphAnn); query.setHint(entityGraphAnn.type().getHintName(), graph); }
private void applyEntityGraph(Query query, Method method) { EntityGraph entityGraphAnn = method.getAnnotation(EntityGraph.class); if (entityGraphAnn == null) { return; } Object graph = EntityGraphHelper.getEntityGraph(getEntityManager(), entityClass, entityGraphAnn); query.setHint(entityGraphAnn.type().getHintName(), graph); }
private void applyEntityGraph(Query query, Method method) { EntityGraph entityGraphAnn = method.getAnnotation(EntityGraph.class); if (entityGraphAnn == null) { return; } Object graph = EntityGraphHelper.getEntityGraph(getEntityManager(), entityClass, entityGraphAnn); query.setHint(entityGraphAnn.type().getHintName(), graph); }
private void applyEntityGraph(Query query, Method method) { EntityGraph entityGraphAnn = method.getAnnotation(EntityGraph.class); if (entityGraphAnn == null) { return; } Object graph = EntityGraphHelper.getEntityGraph(getEntityManager(), repositoryMetadata.getEntityMetadata().getEntityClass(), entityGraphAnn); query.setHint(entityGraphAnn.type().getHintName(), graph); }
private void applyEntityGraph(Query query, Method method) { EntityGraph entityGraphAnn = method.getAnnotation(EntityGraph.class); if (entityGraphAnn == null) { return; } Object graph = EntityGraphHelper.getEntityGraph(getEntityManager(), getRepositoryMetadata().getEntityMetadata().getEntityClass(), entityGraphAnn); query.setHint(entityGraphAnn.type().getHintName(), graph); }
private void applyEntityGraph(Query query, Method method) { EntityGraph entityGraphAnn = method.getAnnotation(EntityGraph.class); if (entityGraphAnn == null) { return; } Object graph = EntityGraphHelper.getEntityGraph(getEntityManager(), getRepositoryMetadata().getEntityMetadata().getEntityClass(), entityGraphAnn); query.setHint(entityGraphAnn.type().getHintName(), graph); }