Skip to content

Commit f903956

Browse files
committed
Maven update working.
UX improvements.
1 parent 92ee709 commit f903956

File tree

4 files changed

+128
-86
lines changed

4 files changed

+128
-86
lines changed

src/ServiceStackEclipse/META-INF/MANIFEST.MF

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@ Require-Bundle: org.eclipse.ui,
88
org.eclipse.core.resources,
99
org.eclipse.jdt.core;bundle-version="3.10.0",
1010
org.eclipse.ui.ide;bundle-version="3.10.2",
11-
org.eclipse.osgi;bundle-version="3.10.2"
11+
org.eclipse.osgi;bundle-version="3.10.2",
12+
org.eclipse.core.runtime;bundle-version="3.10.0"
1213
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
1314
Import-Package: org.eclipse.core.runtime,
1415
org.eclipse.jdt.core,

src/ServiceStackEclipse/src/net/servicestack/eclipse/maven/EclipseMavenHelper.java

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,13 @@
11
package net.servicestack.eclipse.maven;
22

3+
import java.io.ByteArrayInputStream;
34
import java.io.File;
45
import java.io.FileReader;
56
import java.io.FileWriter;
67
import java.io.IOException;
8+
import java.io.InputStream;
9+
import java.io.StringWriter;
10+
import java.nio.charset.StandardCharsets;
711
import java.util.List;
812
import java.util.Objects;
913

@@ -16,7 +20,7 @@
1620

1721
public class EclipseMavenHelper {
1822
public boolean addMavenDependencyIfRequired(IFile pomFile, String groupId, String packageId, String version) throws Exception {
19-
boolean noDependencyAdded = true;
23+
boolean dependencyAdded = false;
2024
MavenXpp3Reader reader = new MavenXpp3Reader();
2125
Model pomModel;
2226
try {
@@ -28,22 +32,26 @@ public boolean addMavenDependencyIfRequired(IFile pomFile, String groupId, Strin
2832
requiresPomDependency = false;
2933
}
3034
}
31-
35+
36+
String content = null;
3237
if(requiresPomDependency) {
3338
Dependency dependency = new Dependency();
3439
dependency.setGroupId(groupId);
3540
dependency.setArtifactId(packageId);
3641
dependency.setVersion(version);
37-
FileWriter writer = new FileWriter(pomFile.getLocationURI().getPath());
3842
pomModel.addDependency(dependency);
39-
new MavenXpp3Writer().write(writer, pomModel);
40-
noDependencyAdded = false;
43+
StringWriter strWriter = new StringWriter();
44+
new MavenXpp3Writer().write(strWriter, pomModel);
45+
content = strWriter.toString();
46+
InputStream stream = new ByteArrayInputStream(content.getBytes(StandardCharsets.UTF_8));
47+
pomFile.setContents(stream, false, false, null);
48+
dependencyAdded = true;
4149
}
4250

4351
} catch (IOException | XmlPullParserException e) {
4452
e.printStackTrace();
4553
throw new Exception("Unable to process pom.xml to add " + groupId + ":" + packageId + ":" + version);
4654
}
47-
return noDependencyAdded;
55+
return dependencyAdded;
4856
}
4957
}

src/ServiceStackEclipse/src/net/servicestack/eclipse/wizard/AddReferencePage.java

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ public class AddReferencePage extends WizardPage {
3434

3535
private String errorMessage;
3636
private String selectedDirectory;
37+
private String _tempPackageName;
3738

3839
protected AddReferencePage() {
3940
super("Add ServiceStack Reference");
@@ -48,10 +49,6 @@ protected AddReferencePage() {
4849
// TODO Auto-generated constructor stub
4950
}
5051

51-
public boolean canFlipToNextPage() {
52-
return canFinish;
53-
}
54-
5552
@Override
5653
public void createControl(Composite parent) {
5754
// TODO Auto-generated method stub
@@ -92,6 +89,7 @@ public void verifyText(VerifyEvent event) {
9289
packageLabel.setText("Package");
9390
packageTextField = new Text(composite, SWT.BORDER | SWT.SINGLE);
9491
packageTextField.setLayoutData(gd);
92+
packageTextField.setText(_tempPackageName == null ? "" : _tempPackageName);
9593

9694
Label nameLabel = new Label(composite, SWT.NONE);
9795
nameLabel.setText("Name");
@@ -129,10 +127,26 @@ public String getAddressUrl() {
129127
public String getFileName() {
130128
return nameTextField.getText();
131129
}
130+
131+
public void setPackageName(String packageName) {
132+
_tempPackageName = packageName;
133+
if(packageTextField != null) {
134+
packageTextField.setText(_tempPackageName);
135+
}
136+
}
137+
138+
public String getPackageName() {
139+
return packageTextField.getText();
140+
}
132141

133142
private void dialogChanged() {
134143
updateStatus(null);
135144
}
145+
146+
@Override
147+
public boolean canFlipToNextPage() {
148+
return canFinish;
149+
}
136150

137151
private void updateStatus(String message) {
138152
setErrorMessage(message);

0 commit comments

Comments
 (0)