- if(!ignoreVirtual || child.isPersistent())
- if(result.add(child)) {
- dqs.forEachObjectCompiled(graph, child, child, structure);
- }
+ }
+
+ @Override
+ public void exception(ReadGraph graph, Throwable throwable) {
+ Logger.defaultLogError(throwable);
+ }
+
+ @Override
+ public void finished(ReadGraph graph, ConsistsOfProcessEntry entry) {
+ if(entry.valid) {
+ if(entry.name != null) {
+ result.add(entry);
+ } else {
+ // This one did not have a name - not a valid internal
+ childrenWithNoName.add(entry.resource);
+ }
+ } else {
+ // Something wrong has happened. Do not treat as valid internal
+ childrenWithNoName.add(entry.resource);
+ }
+ }
+ });
+
+ structure = dqs.compileForEachObject(graph, L0.ConsistsOf, new SyncContextMultiProcedure<ConsistsOfProcessEntry, Resource>() {
+
+ @Override
+ public void execute(ReadGraph graph, ConsistsOfProcessEntry parent, Resource child) {
+
+ if(status != null)
+ if(ExtentStatus.EXCLUDED.equals(status.get(child))) return;
+
+ if(!ignoreVirtual || child.isPersistent()) {
+ ConsistsOfProcessEntry entry = new ConsistsOfProcessEntry(parent, child);
+ dqs.forEachObjectCompiled(graph, child, entry, structure);
+ dqs.forEachObjectCompiled(graph, child, entry, names);
+ }