coord.put(CONTENT_NAME, logicalName);
coord.put(CONTENT_TYPE, type);
coord.put(HTTP_REQUEST, request);
coord.put(HTTP_RESPONSE, response);
Map output = new HashMap();
NCube routingCube = NCubeManager.getCube(cubeName, version);
if (routingCube == null)
{
routingCube = NCubeManager.getCube("cdnRouter", version);
}
Connection connection = (Connection) coord.get(CONNECTION);
if (routingCube == null)
{
String app = (String) coord.get(APP);
String status = (String) coord.get(STATUS);
Date date = (Date) coord.get(DATE);
if (connection == null)
{
String msg = "CdnRouter - CdnRoutingProvider did not set up '" + CONNECTION + "' in the Map coordinate.";
sendErrorResponse(response, HttpServletResponse.SC_INTERNAL_SERVER_ERROR, msg);
return;
}
if (StringUtilities.isEmpty(app))
{
String msg = "CdnRouter - CdnRoutingProvider did not set '" + APP + "' in the Map coordinate.";
sendErrorResponse(response, HttpServletResponse.SC_INTERNAL_SERVER_ERROR, msg);
return;
}
if (StringUtilities.isEmpty(status))
{
String msg = "CdnRouter - CdnRoutingProvider did not set '" + STATUS + "' in the Map coordinate.";
sendErrorResponse(response, HttpServletResponse.SC_INTERNAL_SERVER_ERROR, msg);
return;
}
routingCube = NCubeManager.loadCube(connection, app, cubeName, version, status, date);
}
provider.doneWithConnection(connection);
routingCube.getCell(coord, output);
}
catch (Exception e)
{
LOG.error("CdnRouter exception occurred", e);
try