Skip to content

Commit d36ef1d

Browse files
author
Vincent Potucek
committed
extract common functionality of DefaultPluginXmlFactory
1 parent 33830ea commit d36ef1d

File tree

5 files changed

+14
-14
lines changed

5 files changed

+14
-14
lines changed

api/maven-api-core/src/main/java/org/apache/maven/api/services/xml/XmlReaderRequest.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -78,9 +78,9 @@ interface Transformer {
7878
String transform(String source, String fieldName);
7979
}
8080

81-
default void assertReadable() {
81+
default void throwIfIncomplete() {
8282
if (getInputStream() == null && getReader() == null && getPath() == null && getURL() == null) {
83-
throw new IllegalArgumentException("writer, outputStream or path must be non null");
83+
throw new IllegalArgumentException("writer, outputStream, or path must be non null");
8484
}
8585
}
8686

api/maven-api-core/src/main/java/org/apache/maven/api/services/xml/XmlWriterRequest.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -55,9 +55,9 @@ static <T> XmlWriterRequestBuilder<T> builder() {
5555
return new XmlWriterRequestBuilder<>();
5656
}
5757

58-
default void assertWritable() {
58+
default void throwIfIncomplete() {
5959
if (getWriter() == null && getOutputStream() == null && getPath() == null) {
60-
throw new IllegalArgumentException("writer, outputStream or path must be non null");
60+
throw new IllegalArgumentException("writer, outputStream, or path must be non null");
6161
}
6262
}
6363

impl/maven-impl/src/main/java/org/apache/maven/impl/DefaultModelXmlFactory.java

+2-4
Original file line numberDiff line numberDiff line change
@@ -83,9 +83,7 @@ private Model doRead(XmlReaderRequest request) throws XmlReaderException {
8383
URL url = request.getURL();
8484
Reader reader = request.getReader();
8585
InputStream inputStream = request.getInputStream();
86-
if (path == null && url == null && reader == null && inputStream == null) {
87-
throw new IllegalArgumentException("path, url, reader or inputStream must be non null");
88-
}
86+
request.throwIfIncomplete();
8987
try {
9088
InputSource source = null;
9189
if (request.getModelId() != null || request.getLocation() != null) {
@@ -120,7 +118,7 @@ public void write(XmlWriterRequest<Model> request) throws XmlWriterException {
120118
OutputStream outputStream = request.getOutputStream();
121119
Writer writer = request.getWriter();
122120
Function<Object, String> inputLocationFormatter = request.getInputLocationFormatter();
123-
request.assertWritable();
121+
request.throwIfIncomplete();
124122
try {
125123
MavenStaxWriter w = new MavenStaxWriter();
126124
if (inputLocationFormatter != null) {

impl/maven-impl/src/main/java/org/apache/maven/impl/DefaultPluginXmlFactory.java

+7-5
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@
2121
import javax.xml.stream.XMLStreamException;
2222

2323
import java.io.IOException;
24+
import java.io.InputStream;
25+
import java.io.OutputStream;
2426
import java.nio.file.Files;
2527

2628
import org.apache.maven.api.annotations.Nonnull;
@@ -53,18 +55,18 @@ public void write(XmlWriterRequest<PluginDescriptor> request) throws XmlWriterEx
5355
}
5456

5557
private static PluginDescriptor read(XmlReaderRequest request, PluginDescriptorStaxReader reader) {
56-
request.assertReadable();
58+
request.throwIfIncomplete();
5759
try {
5860
if (request.getInputStream() != null) {
5961
return reader.read(request.getInputStream(), request.isStrict());
6062
} else if (request.getReader() != null) {
6163
return reader.read(request.getReader(), request.isStrict());
6264
} else if (request.getPath() != null) {
63-
try (var is = Files.newInputStream(request.getPath())) {
65+
try (InputStream is = Files.newInputStream(request.getPath())) {
6466
return reader.read(is, request.isStrict());
6567
}
6668
} else {
67-
try (var is = request.getURL().openStream()) {
69+
try (InputStream is = request.getURL().openStream()) {
6870
return reader.read(is, request.isStrict());
6971
}
7072
}
@@ -80,14 +82,14 @@ private static PluginDescriptorStaxReader setAddDefaultEntities(
8082
}
8183

8284
private static void write(XmlWriterRequest<PluginDescriptor> request, PluginDescriptorStaxWriter writer) {
83-
request.assertWritable();
85+
request.throwIfIncomplete();
8486
try {
8587
if (request.getWriter() != null) {
8688
writer.write(request.getWriter(), request.getContent());
8789
} else if (request.getOutputStream() != null) {
8890
writer.write(request.getOutputStream(), request.getContent());
8991
} else {
90-
try (var os = Files.newOutputStream(request.getPath())) {
92+
try (OutputStream os = Files.newOutputStream(request.getPath())) {
9193
writer.write(os, request.getContent());
9294
}
9395
}

impl/maven-impl/src/test/java/org/apache/maven/impl/DefaultPluginXmlFactoryTest.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -229,7 +229,7 @@ void writeWithNoTargetThrowsIllegalArgumentException() {
229229
.build())
230230
.build()))
231231
.getMessage())
232-
.isEqualTo("writer, outputStream or path must be non null");
232+
.isEqualTo("writer, outputStream, or path must be non null");
233233
}
234234

235235
@Test

0 commit comments

Comments
 (0)