You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficcontrol.apache.org by ne...@apache.org on 2017/03/14 15:40:37 UTC
[02/13] incubator-trafficcontrol git commit: [TC-179] Fix for an NPE
on caused by a null delivery service when sending traffic to a bypass
destination, and slight formatting change in HTTPRouteResult.
[TC-179] Fix for an NPE on caused by a null delivery service when sending traffic to a bypass destination, and slight formatting change in HTTPRouteResult.
Project: http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/commit/bd5b48e6
Tree: http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/tree/bd5b48e6
Diff: http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/diff/bd5b48e6
Branch: refs/heads/master
Commit: bd5b48e661692c5b0b6a9dfb26abaed4a2655eb4
Parents: 4190b7d
Author: Jeff Elsloo <je...@cable.comcast.com>
Authored: Thu Mar 9 11:21:13 2017 -0700
Committer: Dave Neuman <ne...@apache.org>
Committed: Tue Mar 14 09:39:14 2017 -0600
----------------------------------------------------------------------
.../traffic_router/core/http/RouterFilter.java | 16 ++++++++++------
.../traffic_router/core/router/HTTPRouteResult.java | 4 ++--
2 files changed, 12 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/bd5b48e6/traffic_router/core/src/main/java/com/comcast/cdn/traffic_control/traffic_router/core/http/RouterFilter.java
----------------------------------------------------------------------
diff --git a/traffic_router/core/src/main/java/com/comcast/cdn/traffic_control/traffic_router/core/http/RouterFilter.java b/traffic_router/core/src/main/java/com/comcast/cdn/traffic_control/traffic_router/core/http/RouterFilter.java
index fc1b742..58c49bc 100644
--- a/traffic_router/core/src/main/java/com/comcast/cdn/traffic_control/traffic_router/core/http/RouterFilter.java
+++ b/traffic_router/core/src/main/java/com/comcast/cdn/traffic_control/traffic_router/core/http/RouterFilter.java
@@ -152,27 +152,31 @@ public class RouterFilter extends OncePerRequestFilter {
private void setSingleResponse(final HTTPRouteResult routeResult, final HttpServletRequest httpServletRequest, final HttpServletResponse response, final HTTPAccessRecord.Builder httpAccessRecordBuilder) throws IOException, JSONException {
final String redirect = httpServletRequest.getParameter(REDIRECT_QUERY_PARAM);
final String format = httpServletRequest.getParameter("format");
- final DeliveryService deliveryService = routeResult.getDeliveryService();
final URL location = routeResult.getUrl();
- final Map<String, String> responseHeaders = deliveryService.getResponseHeaders();
- for (final String key : responseHeaders.keySet()) {
- response.addHeader(key, responseHeaders.get(key));
- }
+ if (routeResult.getDeliveryService() != null) {
+ final DeliveryService deliveryService = routeResult.getDeliveryService();
+ final Map<String, String> responseHeaders = deliveryService.getResponseHeaders();
- httpAccessRecordBuilder.responseURL(location);
+ for (final String key : responseHeaders.keySet()) {
+ response.addHeader(key, responseHeaders.get(key));
+ }
+ }
if ("false".equalsIgnoreCase(redirect)) {
response.setContentType("application/json");
response.getWriter().println(routeResult.toMultiLocationJSONString());
httpAccessRecordBuilder.responseCode(HttpServletResponse.SC_OK);
+ httpAccessRecordBuilder.responseURLs(routeResult.getUrls());
} else if ("json".equals(format)) {
response.setContentType("application/json");
response.getWriter().println(routeResult.toLocationJSONString());
httpAccessRecordBuilder.responseCode(HttpServletResponse.SC_OK);
+ httpAccessRecordBuilder.responseURL(location);
} else {
httpAccessRecordBuilder.responseCode(HttpServletResponse.SC_MOVED_TEMPORARILY);
response.sendRedirect(location.toString());
+ httpAccessRecordBuilder.responseURL(location);
}
}
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/bd5b48e6/traffic_router/core/src/main/java/com/comcast/cdn/traffic_control/traffic_router/core/router/HTTPRouteResult.java
----------------------------------------------------------------------
diff --git a/traffic_router/core/src/main/java/com/comcast/cdn/traffic_control/traffic_router/core/router/HTTPRouteResult.java b/traffic_router/core/src/main/java/com/comcast/cdn/traffic_control/traffic_router/core/router/HTTPRouteResult.java
index 1b3d756..4ad828e 100644
--- a/traffic_router/core/src/main/java/com/comcast/cdn/traffic_control/traffic_router/core/router/HTTPRouteResult.java
+++ b/traffic_router/core/src/main/java/com/comcast/cdn/traffic_control/traffic_router/core/router/HTTPRouteResult.java
@@ -48,7 +48,7 @@ public class HTTPRouteResult implements RouteResult {
}
public URL getUrl() {
- return (!urls.isEmpty()) ? urls.get(0) : null;
+ return !urls.isEmpty() ? urls.get(0) : null;
}
public void setUrl(final URL url) {
@@ -65,7 +65,7 @@ public class HTTPRouteResult implements RouteResult {
}
public DeliveryService getDeliveryService() {
- return (!deliveryServices.isEmpty()) ? deliveryServices.get(0) : null;
+ return !deliveryServices.isEmpty() ? deliveryServices.get(0) : null;
}
public void setDeliveryService(final DeliveryService deliveryService) {