Skip to content

Commit

Permalink
Fix Code Style
Browse files Browse the repository at this point in the history
  • Loading branch information
JKomoroski committed Feb 13, 2023
1 parent d9dd5cd commit cd44762
Show file tree
Hide file tree
Showing 2 changed files with 47 additions and 41 deletions.
60 changes: 36 additions & 24 deletions jaxrs2/src/main/java/feign/jaxrs2/JAXRS2Contract.java
Original file line number Diff line number Diff line change
Expand Up @@ -13,18 +13,15 @@
*/
package feign.jaxrs2;

import static feign.Util.checkState;
import static feign.Util.emptyToNull;
import feign.jaxrs.JAXRSContract;

import java.lang.reflect.Field;
import javax.ws.rs.BeanParam;
import javax.ws.rs.FormParam;
import javax.ws.rs.HeaderParam;
import javax.ws.rs.PathParam;
import javax.ws.rs.QueryParam;
import javax.ws.rs.*;
import javax.ws.rs.container.Suspended;
import javax.ws.rs.core.Context;
import feign.jaxrs.JAXRSContract;
import java.lang.reflect.Field;

import static feign.Util.checkState;
import static feign.Util.emptyToNull;

/**
* Please refer to the <a href="https://github.com/Netflix/feign/tree/master/feign-jaxrs2">Feign
Expand All @@ -35,7 +32,7 @@ public final class JAXRS2Contract extends JAXRSContract {
private final boolean enableBeanParamSupport;

public JAXRS2Contract() {
this(false);
this(false);
}

public JAXRS2Contract(boolean enableBeanParamSupport) {
Expand All @@ -47,7 +44,7 @@ public JAXRS2Contract(boolean enableBeanParamSupport) {
super.registerParameterAnnotation(Suspended.class, (ann, data, i) -> data.ignoreParamater(i));
super.registerParameterAnnotation(Context.class, (ann, data, i) -> data.ignoreParamater(i));

if(!enableBeanParamSupport) {
if (!enableBeanParamSupport) {
super.registerParameterAnnotation(BeanParam.class, (ann, data, i) -> data.ignoreParamater(i));
}

Expand All @@ -58,43 +55,58 @@ protected void registerParamAnnotations() {
super.registerParamAnnotations();

registerParameterAnnotation(BeanParam.class, (param, data, paramIndex) -> {
final Field[] aggregatedParams = data.method().getParameters()[paramIndex].getType().getDeclaredFields();
final Field[] aggregatedParams = data.method()
.getParameters()[paramIndex]
.getType()
.getDeclaredFields();

for (Field aggregatedParam : aggregatedParams) {

if(aggregatedParam.isAnnotationPresent(PathParam.class)) {
if (aggregatedParam.isAnnotationPresent(PathParam.class)) {
final String name = aggregatedParam.getAnnotation(PathParam.class).value();
checkState(
emptyToNull(name) != null,
"BeanParam parameter %s contains PathParam with empty .value() on field %s", paramIndex, aggregatedParam.getName());
emptyToNull(name) != null,
"BeanParam parameter %s contains PathParam with empty .value() on field %s",
paramIndex,
aggregatedParam.getName()
);
nameParam(data, name, paramIndex);
}

if(aggregatedParam.isAnnotationPresent(QueryParam.class)) {
if (aggregatedParam.isAnnotationPresent(QueryParam.class)) {
final String name = aggregatedParam.getAnnotation(QueryParam.class).value();
checkState(
emptyToNull(name) != null,
"BeanParam parameter %s contains QueryParam with empty .value() on field %s", paramIndex, aggregatedParam.getName());
emptyToNull(name) != null,
"BeanParam parameter %s contains QueryParam with empty .value() on field %s",
paramIndex,
aggregatedParam.getName()
);
final String query = addTemplatedParam(name);
data.template().query(name, query);
nameParam(data, name, paramIndex);
}

if(aggregatedParam.isAnnotationPresent(HeaderParam.class)) {
if (aggregatedParam.isAnnotationPresent(HeaderParam.class)) {
final String name = aggregatedParam.getAnnotation(HeaderParam.class).value();
checkState(
emptyToNull(name) != null,
"BeanParam parameter %s contains HeaderParam with empty .value() on field %s", paramIndex, aggregatedParam.getName());
emptyToNull(name) != null,
"BeanParam parameter %s contains HeaderParam with empty .value() on field %s",
paramIndex,
aggregatedParam.getName()
);
final String header = addTemplatedParam(name);
data.template().header(name, header);
nameParam(data, name, paramIndex);
}

if(aggregatedParam.isAnnotationPresent(FormParam.class)) {
if (aggregatedParam.isAnnotationPresent(FormParam.class)) {
final String name = aggregatedParam.getAnnotation(FormParam.class).value();
checkState(
emptyToNull(name) != null,
"BeanParam parameter %s contains FormParam with empty .value() on field %s", paramIndex, aggregatedParam.getName());
emptyToNull(name) != null,
"BeanParam parameter %s contains FormParam with empty .value() on field %s",
paramIndex,
aggregatedParam.getName()
);
data.formParams().add(name);
nameParam(data, name, paramIndex);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,27 +13,21 @@
*/
package feign.jaxrs2;

import static feign.assertj.FeignAssertions.assertThat;
import static java.util.Arrays.asList;
import static org.assertj.core.data.MapEntry.entry;

import feign.MethodMetadata;
import feign.jaxrs.JAXRSContract;
import feign.jaxrs.JAXRSContractTest;
import feign.jaxrs2.JAXRS2ContractWithBeanParamSupportTest.Jaxrs2Internals.BeanParamInput;
import javax.ws.rs.BeanParam;
import javax.ws.rs.FormParam;
import javax.ws.rs.GET;
import javax.ws.rs.HeaderParam;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.QueryParam;
import org.junit.Test;

import javax.ws.rs.*;
import javax.ws.rs.container.AsyncResponse;
import javax.ws.rs.container.Suspended;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.UriInfo;
import org.junit.Test;

import static feign.assertj.FeignAssertions.assertThat;
import static java.util.Arrays.asList;
import static org.assertj.core.data.MapEntry.entry;

/**
* Tests interfaces defined per {@link JAXRS2Contract} are interpreted into expected
Expand Down Expand Up @@ -63,12 +57,12 @@ public void injectBeanParam() throws Exception {
.noRequestBody();

assertThat(methodMetadata.template())
.hasHeaders(entry("X-Custom-Header", asList("{X-Custom-Header}")));
.hasHeaders(entry("X-Custom-Header", asList("{X-Custom-Header}")));
assertThat(methodMetadata.template())
.hasQueries(entry("query", asList("{query}")));
.hasQueries(entry("query", asList("{query}")));
assertThat(methodMetadata.formParams())
.isNotEmpty()
.containsExactly("form");
.isNotEmpty()
.containsExactly("form");

}

Expand Down

0 comments on commit cd44762

Please sign in to comment.