From e04f6e7df4349243f39a6ff8081d8ca5a0034ddf Mon Sep 17 00:00:00 2001 From: jurgen Date: Tue, 13 Oct 2015 18:27:35 +0000 Subject: [PATCH] Maven profiles Former-commit-id: 11a12906abd33224ba6258bd73fae61ab00da9a7 --- .../registry/maven/MavenArtifactVersion.java | 23 +++++++++++-------- .../dbeaver/registry/maven/MavenProfile.java | 5 +++- 2 files changed, 18 insertions(+), 10 deletions(-) diff --git a/plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/registry/maven/MavenArtifactVersion.java b/plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/registry/maven/MavenArtifactVersion.java index a7d9b0b414..8b4705b8db 100644 --- a/plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/registry/maven/MavenArtifactVersion.java +++ b/plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/registry/maven/MavenArtifactVersion.java @@ -45,6 +45,7 @@ public class MavenArtifactVersion { public static final String PROP_PROJECT_VERSION = "project.version"; public static final String PROP_PROJECT_GROUP_ID = "project.groupId"; public static final String PROP_PROJECT_ARTIFACT_ID = "project.artifactId"; + private static final String DEFAULT_PROFILE_ID = "#root"; private MavenArtifact artifact; private String name; @@ -58,20 +59,22 @@ public class MavenArtifactVersion { private GeneralUtils.IVariableResolver propertyResolver = new GeneralUtils.IVariableResolver() { @Override public String get(String name) { + switch (name) { + case PROP_PROJECT_VERSION: + return version; + case PROP_PROJECT_GROUP_ID: + return artifact.getGroupId(); + case PROP_PROJECT_ARTIFACT_ID: + return artifact.getArtifactId(); + } for (MavenArtifactVersion v = MavenArtifactVersion.this; v != null; v = v.parent) { - for (MavenProfile profile : profiles) { + for (MavenProfile profile : v.profiles) { if (!profile.isActive()) { continue; } String value = profile.properties.get(name); if (value != null) { return value; - } else if (name.equals(PROP_PROJECT_VERSION)) { - return v.version; - } else if (name.equals(PROP_PROJECT_GROUP_ID)) { - return v.artifact.getGroupId(); - } else if (name.equals(PROP_PROJECT_ARTIFACT_ID)) { - return v.artifact.getArtifactId(); } } } @@ -231,9 +234,10 @@ public class MavenArtifactVersion { } // Default profile - MavenProfile defaultProfile = new MavenProfile(null); - parseProfile(monitor, defaultProfile, root); + MavenProfile defaultProfile = new MavenProfile(DEFAULT_PROFILE_ID); + defaultProfile.active = true; profiles.add(defaultProfile); + parseProfile(monitor, defaultProfile, root); { // Profiles @@ -241,6 +245,7 @@ public class MavenArtifactVersion { if (licensesElement != null) { for (Element profElement : XMLUtils.getChildElementList(licensesElement, "profile")) { MavenProfile profile = new MavenProfile(XMLUtils.getChildElementBody(profElement, "id")); + profiles.add(profile); parseProfile(monitor, profile, profElement); } } diff --git a/plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/registry/maven/MavenProfile.java b/plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/registry/maven/MavenProfile.java index de69dd0d1e..e01b1267c8 100644 --- a/plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/registry/maven/MavenProfile.java +++ b/plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/registry/maven/MavenProfile.java @@ -59,5 +59,8 @@ public class MavenProfile { return active; } - + @Override + public String toString() { + return id; + } } -- GitLab