From bfd4b28aba5d31fc294cb31691f2c3e9b1e0ab5b Mon Sep 17 00:00:00 2001 From: Alex Ruiz Date: Fri, 23 May 2014 14:58:04 -0700 Subject: [PATCH] ExtendedBuildModel now exposes the project's build directory. Change-Id: I174de21c907ed1b3ca046cc5b9b58543c50ecc39 --- .../plugins/gradle/model/ModuleExtendedModel.java | 7 +++++++ .../tooling/builder/ModuleExtendedModelBuilderImpl.java | 3 ++- .../gradle/tooling/internal/ModuleExtendedModelImpl.java | 9 ++++++++- 3 files changed, 17 insertions(+), 2 deletions(-) diff --git a/plugins/gradle/tooling-extension-api/src/org/jetbrains/plugins/gradle/model/ModuleExtendedModel.java b/plugins/gradle/tooling-extension-api/src/org/jetbrains/plugins/gradle/model/ModuleExtendedModel.java index 2dff22e1ee56..e9a99b93c82e 100644 --- a/plugins/gradle/tooling-extension-api/src/org/jetbrains/plugins/gradle/model/ModuleExtendedModel.java +++ b/plugins/gradle/tooling-extension-api/src/org/jetbrains/plugins/gradle/model/ModuleExtendedModel.java @@ -60,4 +60,11 @@ public interface ModuleExtendedModel extends Serializable { * @return content roots */ DomainObjectSet getContentRoots(); + + /** + * The build directory. + * + * @return the build directory. + */ + File getBuildDir(); } diff --git a/plugins/gradle/tooling-extension-impl/src/org/jetbrains/plugins/gradle/tooling/builder/ModuleExtendedModelBuilderImpl.java b/plugins/gradle/tooling-extension-impl/src/org/jetbrains/plugins/gradle/tooling/builder/ModuleExtendedModelBuilderImpl.java index 2d3d79cefb3c..ee9b2561dec3 100644 --- a/plugins/gradle/tooling-extension-impl/src/org/jetbrains/plugins/gradle/tooling/builder/ModuleExtendedModelBuilderImpl.java +++ b/plugins/gradle/tooling-extension-impl/src/org/jetbrains/plugins/gradle/tooling/builder/ModuleExtendedModelBuilderImpl.java @@ -59,8 +59,9 @@ public class ModuleExtendedModelBuilderImpl implements ModelBuilderService { final String moduleName = project.getName(); final String moduleGroup = project.getGroup().toString(); final String moduleVersion = project.getVersion().toString(); + final File buildDir = project.getBuildDir(); - final ModuleExtendedModelImpl moduleVersionModel = new ModuleExtendedModelImpl(moduleName, moduleGroup, moduleVersion); + final ModuleExtendedModelImpl moduleVersionModel = new ModuleExtendedModelImpl(moduleName, moduleGroup, moduleVersion, buildDir); final List artifacts = new ArrayList(); for (Task task : project.getTasks()) { diff --git a/plugins/gradle/tooling-extension-impl/src/org/jetbrains/plugins/gradle/tooling/internal/ModuleExtendedModelImpl.java b/plugins/gradle/tooling-extension-impl/src/org/jetbrains/plugins/gradle/tooling/internal/ModuleExtendedModelImpl.java index 46ecbf1aae63..4eea475b4d18 100644 --- a/plugins/gradle/tooling-extension-impl/src/org/jetbrains/plugins/gradle/tooling/internal/ModuleExtendedModelImpl.java +++ b/plugins/gradle/tooling-extension-impl/src/org/jetbrains/plugins/gradle/tooling/internal/ModuleExtendedModelImpl.java @@ -33,13 +33,15 @@ public class ModuleExtendedModelImpl implements ModuleExtendedModel { private final String myName; private final String myGroup; private final String myVersion; + private final File myBuildDir; private List myArtifacts; private Set myContentRoots; - public ModuleExtendedModelImpl(String name, String group, String version) { + public ModuleExtendedModelImpl(String name, String group, String version, File buildDir) { myName = name; myGroup = group; myVersion = version; + myBuildDir = buildDir; myArtifacts = Collections.emptyList(); myContentRoots = Collections.emptySet(); } @@ -73,6 +75,11 @@ public class ModuleExtendedModelImpl implements ModuleExtendedModel { return ImmutableDomainObjectSet.of(myContentRoots); } + @Override + public File getBuildDir() { + return myBuildDir; + } + public void setContentRoots(Set contentRoots) { myContentRoots = contentRoots == null ? Collections.emptySet() : contentRoots; }