Skip to content

Commit 0c6cd10

Browse files
authored
Drop unnecessary JerseyEntityPart (#4904)
* Drop unnecessary JerseyEntityPart Signed-off-by: jansupol <[email protected]>
1 parent 8857100 commit 0c6cd10

File tree

4 files changed

+23
-83
lines changed

4 files changed

+23
-83
lines changed

core-common/src/main/java/org/glassfish/jersey/innate/multipart/JerseyEntityPart.java

Lines changed: 0 additions & 47 deletions
This file was deleted.

core-common/src/main/java/org/glassfish/jersey/innate/multipart/package-info.java

Lines changed: 0 additions & 20 deletions
This file was deleted.

core-server/src/main/java/org/glassfish/jersey/server/internal/inject/FormParamValueParamProvider.java

Lines changed: 22 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import java.io.IOException;
2020
import java.io.UnsupportedEncodingException;
2121
import java.lang.annotation.Annotation;
22+
import java.lang.reflect.ParameterizedType;
2223
import java.lang.reflect.Type;
2324
import java.net.URLDecoder;
2425
import java.net.URLEncoder;
@@ -42,8 +43,6 @@
4243
import jakarta.inject.Provider;
4344
import jakarta.inject.Singleton;
4445

45-
import jakarta.ws.rs.ext.RuntimeDelegate;
46-
import org.glassfish.jersey.innate.multipart.JerseyEntityPart;
4746
import org.glassfish.jersey.internal.inject.ExtractorException;
4847
import org.glassfish.jersey.internal.inject.InjectionManager;
4948
import org.glassfish.jersey.internal.inject.Providers;
@@ -267,10 +266,10 @@ public Object apply(ContainerRequest containerRequest, Parameter parameter) {
267266
if (entityPartProvider.get() != null) { // else jersey-multipart module is missing
268267
final Function<ContainerRequest, ?> valueSupplier = entityPartProvider.get().getValueProvider(
269268
new WrappingFormParamParameter(entityPartParameter, parameter));
270-
final JerseyEntityPart entityPart = (JerseyEntityPart) valueSupplier.apply(containerRequest);
269+
final EntityPart entityPart = (EntityPart) valueSupplier.apply(containerRequest);
271270
try {
272271
entity = parameter.getType() != parameter.getRawType()
273-
? entityPart.getContent(parameter.getRawType(), parameter.getType())
272+
? entityPart.getContent(genericType(parameter.getRawType(), parameter.getType()))
274273
: entityPart.getContent(parameter.getRawType());
275274
} catch (IOException e) {
276275
throw new ProcessingException(e);
@@ -280,6 +279,25 @@ public Object apply(ContainerRequest containerRequest, Parameter parameter) {
280279
return entity;
281280
}
282281

282+
private GenericType genericType(Type rawType, Type genericType) {
283+
return new GenericType(new ParameterizedType() {
284+
@Override
285+
public Type[] getActualTypeArguments() {
286+
return new Type[]{genericType};
287+
}
288+
289+
@Override
290+
public Type getRawType() {
291+
return rawType;
292+
}
293+
294+
@Override
295+
public Type getOwnerType() {
296+
return null;
297+
}
298+
});
299+
}
300+
283301
private static class WrappingFormParamParameter extends Parameter {
284302
protected WrappingFormParamParameter(Parameter entityPartDataParam, Parameter realDataParam) {
285303
super(realDataParam.getAnnotations(),

media/multipart/src/main/java/org/glassfish/jersey/media/multipart/FormDataBodyPart.java

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717
package org.glassfish.jersey.media.multipart;
1818

1919
import java.io.InputStream;
20-
import java.lang.reflect.Type;
2120
import java.text.ParseException;
2221
import java.util.Optional;
2322
import java.util.concurrent.atomic.AtomicBoolean;
@@ -27,7 +26,6 @@
2726
import jakarta.ws.rs.core.GenericType;
2827
import jakarta.ws.rs.core.MediaType;
2928

30-
import org.glassfish.jersey.innate.multipart.JerseyEntityPart;
3129
import org.glassfish.jersey.media.multipart.internal.LocalizationMessages;
3230
import org.glassfish.jersey.message.internal.MediaTypes;
3331

@@ -66,7 +64,7 @@
6664
* @author Paul Sandoz
6765
* @author Michal Gajdos
6866
*/
69-
public class FormDataBodyPart extends BodyPart implements JerseyEntityPart, EntityPart {
67+
public class FormDataBodyPart extends BodyPart implements EntityPart {
7068

7169
private final boolean fileNameFix;
7270
protected final AtomicBoolean contentRead = new AtomicBoolean(false);
@@ -267,15 +265,6 @@ public <T> T getContent(GenericType<T> type) {
267265
return type.getRawType().isInstance(entity) ? (T) entity : getEntityAs(type);
268266
}
269267

270-
@Override
271-
public <T> T getContent(Class<T> type, Type genericType) {
272-
if (contentRead.compareAndExchange(false, true)) {
273-
throw new IllegalStateException(LocalizationMessages.CONTENT_HAS_BEEN_ALREADY_READ());
274-
}
275-
final Object entity = getEntity();
276-
return type.isInstance(entity) ? (T) entity : getEntityAs(type, genericType);
277-
}
278-
279268
/**
280269
* Sets the control name.
281270
*

0 commit comments

Comments
 (0)