use of org.activityinfo.store.spi.BatchingFormTreeBuilder in project activityinfo by bedatadriven.
the class PivotAdapter method queryFormTrees.
private Map<ResourceId, FormTree> queryFormTrees() {
treeTime.start();
Set<ResourceId> formIds = new HashSet<>();
for (Activity activity : activities) {
formIds.add(activity.getLeafFormClassId());
if (command.getValueType() == PivotSites.ValueType.TOTAL_SITES) {
formIds.add(activity.getSiteFormClassId());
}
for (LinkedActivity linkedActivity : activity.getLinkedActivities()) {
formIds.add(linkedActivity.getLeafFormClassId());
if (command.getValueType() == PivotSites.ValueType.TOTAL_SITES) {
formIds.add(activity.getSiteFormClassId());
}
}
}
BatchingFormTreeBuilder formTreeBuilder = new BatchingFormTreeBuilder(catalog);
Map<ResourceId, FormTree> trees = formTreeBuilder.queryTrees(formIds);
treeTime.stop();
return trees;
}
use of org.activityinfo.store.spi.BatchingFormTreeBuilder in project activityinfo by bedatadriven.
the class GetSitesHandler method initialiseHandler.
private void initialiseHandler(GetSites command, User user) {
catalog = catalogProvider.get();
if (catalog != null) {
this.command = command;
builder = new ColumnSetBuilder(catalog, new AppEngineFormScanCache(), new FormSupervisorAdapter(catalog, user.getId()));
linkedBuilder = new ColumnSetBuilder(catalog, new AppEngineFormScanCache(), new NullFormSupervisor());
batchFormTreeBuilder = new BatchingFormTreeBuilder(catalog);
batch = builder.createNewBatch();
linkedBatch = linkedBuilder.createNewBatch();
selfLinkedActivities = Maps.newHashMap();
sortInfo = command.getSortInfo();
offset = command.getOffset();
limit = command.getLimit();
totalResultLength = 0;
} else {
throw new CommandException("Could not retrieve form catalog");
}
}
Aggregations