Skip to content

Commit b44aaf2

Browse files
authored
Merge pull request #62 from vinscom/develop
rel
2 parents 9df8aa2 + e9bcd89 commit b44aaf2

File tree

2 files changed

+24
-3
lines changed

2 files changed

+24
-3
lines changed

pom.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<modelVersion>4.0.0</modelVersion>
55
<groupId>in.erail</groupId>
66
<artifactId>api-framework</artifactId>
7-
<version>2.4.4</version>
7+
<version>2.4.5</version>
88
<packaging>jar</packaging>
99
<developers>
1010
<developer>
@@ -183,7 +183,7 @@
183183
<dependency>
184184
<groupId>in.erail</groupId>
185185
<artifactId>glue</artifactId>
186-
<version>2.4.3</version>
186+
<version>2.4.5</version>
187187
</dependency>
188188
<dependency>
189189
<groupId>org.mockito</groupId>

src/main/java/in/erail/route/OpenAPI3RouteBuilder.java

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import com.codahale.metrics.Metered;
55
import com.codahale.metrics.MetricRegistry;
66
import com.codahale.metrics.Timer;
7+
import com.google.common.base.Strings;
78
import com.google.common.net.HttpHeaders;
89
import com.google.common.net.MediaType;
910
import java.io.File;
@@ -31,6 +32,7 @@
3132
import java.util.Arrays;
3233
import java.util.HashMap;
3334
import java.util.Optional;
35+
import java.util.UUID;
3436
import org.apache.commons.lang3.exception.ExceptionUtils;
3537

3638
/**
@@ -39,14 +41,16 @@
3941
*/
4042
public class OpenAPI3RouteBuilder extends AbstractRouterBuilderImpl {
4143

44+
private static final String HEADER_X_REQUEST_ID = "X-Request-ID";
4245
private static final String FAIL_SUFFIX = ".fail";
4346
private RESTService[] mServices;
4447
private File mOpenAPI3File;
4548
private DeliveryOptions mDeliveryOptions;
4649
private boolean mSecurityEnable = true;
4750
private HashMap<String, Metered> mMetrics = new HashMap<>();
4851
private MetricRegistry mMetricRegistry;
49-
52+
private String mRequestIdHeaderName = HEADER_X_REQUEST_ID;
53+
5054
public File getOpenAPI3File() {
5155
return mOpenAPI3File;
5256
}
@@ -83,6 +87,15 @@ public void process(RoutingContext pRequestContext, String pServiceUniqueId) {
8387

8488
Timer.Context timerCtx = ((Timer) getMetrics().get(pServiceUniqueId)).time();
8589

90+
String requestId = pRequestContext.request().getHeader(getRequestIdHeaderName());
91+
92+
if (Strings.isNullOrEmpty(requestId)) {
93+
requestId = UUID.randomUUID().toString();
94+
pRequestContext.request().headers().add(getRequestIdHeaderName(), UUID.randomUUID().toString());
95+
}
96+
97+
pRequestContext.response().putHeader(getRequestIdHeaderName(), requestId);
98+
8699
getVertx()
87100
.eventBus()
88101
.send(pServiceUniqueId,
@@ -320,4 +333,12 @@ public void setMetricRegistry(MetricRegistry pMetricRegistry) {
320333
this.mMetricRegistry = pMetricRegistry;
321334
}
322335

336+
public String getRequestIdHeaderName() {
337+
return mRequestIdHeaderName;
338+
}
339+
340+
public void setRequestIdHeaderName(String pRequestIdHeaderName) {
341+
this.mRequestIdHeaderName = pRequestIdHeaderName;
342+
}
343+
323344
}

0 commit comments

Comments
 (0)