@Override public boolean isRefreshingObjects() { return mdDelegate.isRefreshingObjects(); }
public boolean isRefreshingObjects() { return metadata.isRefreshingObjects(); }
public boolean isRefreshingObjects() { if (!overrideExists(QueryMetadata.REFRESHING_OBJECTS_PROPERTY)) { return info.isRefreshingObjects(); } Boolean b = (Boolean) overrides.get(QueryMetadata.REFRESHING_OBJECTS_PROPERTY); return b != null && b.booleanValue(); }
public boolean startJointPrefetch(PrefetchTreeNode node) { PrefetchProcessorJointNode processorNode = (PrefetchProcessorJointNode) node; if (!processorNode.getObjects().isEmpty()) { cache.snapshotsUpdatedForObjects( processorNode.getObjects(), processorNode.getResolvedRows(), queryMetadata.isRefreshingObjects()); processorNode.connectToParents(); } return true; }
protected PrefetchProcessorNode toResultsTree(ClassDescriptor descriptor, PrefetchTreeNode prefetchTree, List<DataRow> normalizedRows) { // take a shortcut when no prefetches exist... if (prefetchTree == null) { return new ObjectResolver(context, descriptor, metadata.isRefreshingObjects()) .synchronizedRootResultNodeFromDataRows(normalizedRows); } else { HierarchicalObjectResolver resolver = new HierarchicalObjectResolver(context, metadata); return resolver.synchronizedRootResultNodeFromDataRows(prefetchTree, normalizedRows, prefetchResultsByPath); } }
@Override public boolean startJointPrefetch(PrefetchTreeNode node) { PrefetchProcessorJointNode processorNode = (PrefetchProcessorJointNode) node; if (!processorNode.getObjects().isEmpty()) { cache.snapshotsUpdatedForObjects( processorNode.getObjects(), processorNode.getResolvedRows(), queryMetadata.isRefreshingObjects()); } // run 'connectToParents' even if the object list is empty. This is needed to // refresh stale relationships e.g. when some related objects got deleted. processorNode.connectToParents(); return true; }
/** * @since 1.1 * @deprecated since 1.2. Note that this implementation no longer resolves prefetches * properly. */ public List getResultsAsObjects(DataContext dataContext, Query rootQuery) { QueryMetadata info = rootQuery.getMetaData(dataContext.getEntityResolver()); return dataContext.objectsFromDataRows( info.getObjEntity(), getResults(rootQuery), info.isRefreshingObjects(), info.isResolvingInherited()); }
rootEntity, elements.subList(0, lastResolved), info.isRefreshingObjects(), info.isResolvingInherited());
protected PrefetchProcessorNode toResultsTree(ClassDescriptor descriptor, PrefetchTreeNode prefetchTree, List<Object[]> rows, int position) { List<DataRow> rowsColumn = new ArrayList<>(rows.size()); for (Object[] row : rows) { rowsColumn.add((DataRow) row[position]); } if (prefetchTree != null) { PrefetchTreeNode prefetchTreeNode = null; for (PrefetchTreeNode prefetch : prefetchTree.getChildren()) { if (descriptor.getEntity().getName().equals(prefetch.getEntityName())) { if (prefetchTreeNode == null) { prefetchTreeNode = new PrefetchTreeNode(); } PrefetchTreeNode addPath = prefetchTreeNode.addPath(prefetch.getPath()); addPath.setSemantics(prefetch.getSemantics()); addPath.setPhantom(false); } } prefetchTree = prefetchTreeNode; } if (prefetchTree == null) { return new ObjectResolver(context, descriptor, metadata.isRefreshingObjects()) .synchronizedRootResultNodeFromDataRows(rowsColumn); } else { HierarchicalObjectResolver resolver = new HierarchicalObjectResolver(context, metadata, descriptor, true); return resolver.synchronizedRootResultNodeFromDataRows(prefetchTree, rowsColumn, prefetchResultsByPath); } }
objects, processorNode.getResolvedRows(), queryMetadata.isRefreshingObjects());
.isRefreshingObjects(), metadata.isResolvingInherited()) .synchronizedObjectsFromDataRows(mainRows);
/** * Copies values of this object to another SelectInfo object. */ void copyFromInfo(QueryMetadata info) { this.lastEntityResolver = null; this.lastRoot = null; this.objEntity = null; this.dbEntity = null; this.dataMap = null; this.fetchingDataRows = info.isFetchingDataRows(); this.fetchLimit = info.getFetchLimit(); this.pageSize = info.getPageSize(); this.refreshingObjects = info.isRefreshingObjects(); this.resolvingInherited = info.isResolvingInherited(); this.cachePolicy = info.getCachePolicy(); this.cacheKey = info.getCacheKey(); setPrefetchTree(info.getPrefetchTree()); }
.isRefreshingObjects(), queryMetadata.isResolvingInherited())); node.setIncoming(relationship);
objects, ((PrefetchProcessorJointNode) processorNode).getResolvedRows(), queryMetadata.isRefreshingObjects());
.isRefreshingObjects(), seen)); } else { node.setResolver(new PrefetchObjectResolver(context, descriptor, queryMetadata.isRefreshingObjects(), seen));