summaryrefslogtreecommitdiff
path: root/platform/projectModel-impl/src/com/intellij/openapi/roots/impl/OrderEnumeratorBase.java
diff options
context:
space:
mode:
authorTor Norbye <tnorbye@google.com>2014-08-19 22:27:03 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2014-08-19 21:25:05 +0000
commit4ca751c002784c4bfd349cc5240b045b62277c80 (patch)
treedfc17b31990e2429535609b85f6d080c4fa0d9fe /platform/projectModel-impl/src/com/intellij/openapi/roots/impl/OrderEnumeratorBase.java
parent890d9a2952301682ffecaed4495f5f65c84c3642 (diff)
parent060e58b3afea3ea39f5ba1cb5a443ca3ebda28c8 (diff)
downloadidea-4ca751c002784c4bfd349cc5240b045b62277c80.tar.gz
Merge "Merge remote-tracking branch 'aosp/upstream-master' into merge"
Diffstat (limited to 'platform/projectModel-impl/src/com/intellij/openapi/roots/impl/OrderEnumeratorBase.java')
-rw-r--r--platform/projectModel-impl/src/com/intellij/openapi/roots/impl/OrderEnumeratorBase.java32
1 files changed, 32 insertions, 0 deletions
diff --git a/platform/projectModel-impl/src/com/intellij/openapi/roots/impl/OrderEnumeratorBase.java b/platform/projectModel-impl/src/com/intellij/openapi/roots/impl/OrderEnumeratorBase.java
index 61a6aee9315b..b13df0560292 100644
--- a/platform/projectModel-impl/src/com/intellij/openapi/roots/impl/OrderEnumeratorBase.java
+++ b/platform/projectModel-impl/src/com/intellij/openapi/roots/impl/OrderEnumeratorBase.java
@@ -356,6 +356,38 @@ abstract class OrderEnumeratorBase extends OrderEnumerator implements OrderEnume
return false;
}
+ boolean addCustomRootsForModule(OrderRootType type,
+ ModuleRootModel rootModel,
+ Collection<VirtualFile> result,
+ boolean includeProduction,
+ boolean includeTests) {
+ for (OrderEnumerationHandler handler : myCustomHandlers) {
+ final List<String> urls = new ArrayList<String>();
+ final boolean added = handler.addCustomModuleRoots(type, rootModel, urls, includeProduction, includeTests);
+ for (String url : urls) {
+ ContainerUtil.addIfNotNull(VirtualFileManager.getInstance().findFileByUrl(url), result);
+ }
+
+ if (added) return true;
+ }
+ return false;
+ }
+
+ boolean addCustomRootUrlsForModule(OrderRootType type,
+ ModuleRootModel rootModel,
+ Collection<String> result,
+ boolean includeProduction,
+ boolean includeTests) {
+ for (OrderEnumerationHandler handler : myCustomHandlers) {
+ final List<String> urls = new ArrayList<String>();
+ final boolean added = handler.addCustomModuleRoots(type, rootModel, urls, includeProduction, includeTests);
+ result.addAll(urls);
+
+ if (added) return true;
+ }
+ return false;
+ }
+
@Override
public boolean isRuntimeOnly() {
return myRuntimeOnly;