diff options
author | Tian Lee <TianL@amdocs.com> | 2018-10-12 08:52:39 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@onap.org> | 2018-10-12 08:52:39 +0000 |
commit | 70f45f64cd252663b33793ab073a9d6764a16a20 (patch) | |
tree | 018956cfab76cfba9b8214137854d365b6a6ff2a /src/main/java/org/onap/crud/service/JaxrsEchoService.java | |
parent | 2626b3f0c9cac0e8f6e21995a1098c2241b99d5b (diff) | |
parent | fbcc34c30ba2eacaaced5629c730a3bd4b9515c6 (diff) |
Merge "Return X-TransactionId header in REST response"1.3.1
Diffstat (limited to 'src/main/java/org/onap/crud/service/JaxrsEchoService.java')
-rw-r--r-- | src/main/java/org/onap/crud/service/JaxrsEchoService.java | 47 |
1 files changed, 27 insertions, 20 deletions
diff --git a/src/main/java/org/onap/crud/service/JaxrsEchoService.java b/src/main/java/org/onap/crud/service/JaxrsEchoService.java index dc01435..671b2fd 100644 --- a/src/main/java/org/onap/crud/service/JaxrsEchoService.java +++ b/src/main/java/org/onap/crud/service/JaxrsEchoService.java @@ -28,6 +28,7 @@ import javax.ws.rs.Produces; import javax.ws.rs.core.Context; import javax.ws.rs.core.HttpHeaders; import javax.ws.rs.core.Response; +import javax.ws.rs.core.Response.ResponseBuilder; import javax.ws.rs.core.Response.Status; import javax.ws.rs.core.UriInfo; import org.onap.aai.cl.api.Logger; @@ -39,23 +40,29 @@ import org.springframework.stereotype.Component; @Path("/services/gizmo/v1/echo-service/") public class JaxrsEchoService { - private static Logger logger = LoggerFactory.getInstance() - .getLogger(JaxrsEchoService.class.getName()); - private static Logger auditLogger = LoggerFactory.getInstance() - .getAuditLogger(JaxrsEchoService.class.getName()); - - @GET - @Path("echo/{input}") - @Produces("text/plain") - public String ping(@PathParam("input") String input, - @Context HttpHeaders headers, - @Context UriInfo info, - @Context HttpServletRequest req) { - - LoggingUtil.initMdcContext(req, headers); - LoggingUtil.logRestRequest(logger, auditLogger, req, Response.status(Status.OK) - .entity("OK").build()); - - return "Hello, " + input + "."; - } -}
\ No newline at end of file + private static Logger logger = LoggerFactory.getInstance().getLogger(JaxrsEchoService.class.getName()); + private static Logger auditLogger = LoggerFactory.getInstance().getAuditLogger(JaxrsEchoService.class.getName()); + + public static final String TRANSACTIONID_HEADER = "X-TransactionId"; + + @GET + @Path("echo/{input}") + @Produces("text/plain") + public Response ping(@PathParam("input") String input, @Context HttpHeaders headers, @Context UriInfo info, + @Context HttpServletRequest req) { + + LoggingUtil.initMdcContext(req, headers); + + ResponseBuilder responseBuilder = Response.status(Status.OK).entity("Hello, " + input + "."); + + String txId = headers.getHeaderString(TRANSACTIONID_HEADER); + if (txId != null) { + responseBuilder.header(TRANSACTIONID_HEADER, txId); + } + + Response response = responseBuilder.build(); + LoggingUtil.logRestRequest(logger, auditLogger, req, response); + + return response; + } +} |