You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by cm...@apache.org on 2012/08/20 21:39:32 UTC
svn commit: r1375181 - in
/camel/branches/camel-2.10.x/components/camel-restlet/src/main/java/org/apache/camel/component/restlet:
DefaultRestletBinding.java MethodBasedRouter.java RestletComponent.java
RestletProducer.java
Author: cmueller
Date: Mon Aug 20 19:39:31 2012
New Revision: 1375181
URL: http://svn.apache.org/viewvc?rev=1375181&view=rev
Log:
CAMEL-5482: Clean up the camel restlet component code and fixed a logging entry that displayed the wrong data.
Thanks Claudio Corsi for the patch
Modified:
camel/branches/camel-2.10.x/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/DefaultRestletBinding.java
camel/branches/camel-2.10.x/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/MethodBasedRouter.java
camel/branches/camel-2.10.x/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/RestletComponent.java
camel/branches/camel-2.10.x/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/RestletProducer.java
Modified: camel/branches/camel-2.10.x/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/DefaultRestletBinding.java
URL: http://svn.apache.org/viewvc/camel/branches/camel-2.10.x/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/DefaultRestletBinding.java?rev=1375181&r1=1375180&r2=1375181&view=diff
==============================================================================
--- camel/branches/camel-2.10.x/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/DefaultRestletBinding.java (original)
+++ camel/branches/camel-2.10.x/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/DefaultRestletBinding.java Mon Aug 20 19:39:31 2012
@@ -66,8 +66,10 @@ public class DefaultRestletBinding imple
// extract headers from restlet
for (Map.Entry<String, Object> entry : request.getAttributes().entrySet()) {
if (!headerFilterStrategy.applyFilterToExternalHeaders(entry.getKey(), entry.getValue(), exchange)) {
- inMessage.setHeader(entry.getKey(), entry.getValue());
- LOG.debug("Populate exchange from Restlet request header: {} value: {}", entry.getKey(), entry.getValue());
+ String key = entry.getKey();
+ Object value = entry.getValue();
+ inMessage.setHeader(key, value);
+ LOG.debug("Populate exchange from Restlet request header: {} value: {}", key, value);
}
}
@@ -91,13 +93,15 @@ public class DefaultRestletBinding imple
if (request.getEntity().getMediaType() != null && request.getEntity().getMediaType().equals(MediaType.APPLICATION_WWW_FORM)) {
Form form = new Form(request.getEntity());
for (Map.Entry<String, String> entry : form.getValuesMap().entrySet()) {
- if (entry.getValue() == null) {
- inMessage.setBody(entry.getKey());
- LOG.debug("Populate exchange from Restlet request body: {}", entry.getValue());
+ String key = entry.getKey();
+ String value = entry.getValue();
+ if (value == null) {
+ inMessage.setBody(key);
+ LOG.debug("Populate exchange from Restlet request body: {}", key);
} else {
- if (!headerFilterStrategy.applyFilterToExternalHeaders(entry.getKey(), entry.getValue(), exchange)) {
- inMessage.setHeader(entry.getKey(), entry.getValue());
- LOG.debug("Populate exchange from Restlet request user header: {} value: {}", entry.getKey(), entry.getValue());
+ if (!headerFilterStrategy.applyFilterToExternalHeaders(key, value, exchange)) {
+ inMessage.setHeader(key, value);
+ LOG.debug("Populate exchange from Restlet request user header: {} value: {}", key, value);
}
}
}
@@ -132,21 +136,23 @@ public class DefaultRestletBinding imple
}
for (Map.Entry<String, Object> entry : exchange.getIn().getHeaders().entrySet()) {
- if (!headerFilterStrategy.applyFilterToCamelHeaders(entry.getKey(), entry.getValue(), exchange)) {
+ String key = entry.getKey();
+ Object value = entry.getValue();
+ if (!headerFilterStrategy.applyFilterToCamelHeaders(key, value, exchange)) {
// Use forms only for GET and POST/x-www-form-urlencoded
if (request.getMethod() == Method.GET || (request.getMethod() == Method.POST && mediaType == MediaType.APPLICATION_WWW_FORM)) {
- if (entry.getKey().startsWith("org.restlet.")) {
+ if (key.startsWith("org.restlet.")) {
// put the org.restlet headers in attributes
- request.getAttributes().put(entry.getKey(), entry.getValue());
+ request.getAttributes().put(key, value);
} else {
// put the user stuff in the form
- form.add(entry.getKey(), entry.getValue().toString());
+ form.add(key, value.toString());
}
} else {
// For non-form post put all the headers in attributes
- request.getAttributes().put(entry.getKey(), entry.getValue());
+ request.getAttributes().put(key, value);
}
- LOG.debug("Populate Restlet request from exchange header: {} value: {}", entry.getKey(), entry.getValue());
+ LOG.debug("Populate Restlet request from exchange header: {} value: {}", key, value);
}
}
@@ -236,18 +242,22 @@ public class DefaultRestletBinding imple
// set headers at the end, as the entity must be set first
for (Map.Entry<String, Object> entry : out.getHeaders().entrySet()) {
- if (!headerFilterStrategy.applyFilterToCamelHeaders(entry.getKey(), entry.getValue(), exchange)) {
- setResponseHeader(exchange, response, entry.getKey(), entry.getValue());
- LOG.debug("Populate Restlet HTTP header in response from exchange header: {} value: {}", entry.getKey(), entry.getValue());
+ String key = entry.getKey();
+ Object value = entry.getValue();
+ if (!headerFilterStrategy.applyFilterToCamelHeaders(key, value, exchange)) {
+ setResponseHeader(exchange, response, key, value);
+ LOG.debug("Populate Restlet HTTP header in response from exchange header: {} value: {}", key, value);
}
}
}
public void populateExchangeFromRestletResponse(Exchange exchange, Response response) throws Exception {
for (Map.Entry<String, Object> entry : response.getAttributes().entrySet()) {
- if (!headerFilterStrategy.applyFilterToExternalHeaders(entry.getKey(), entry.getValue(), exchange)) {
- exchange.getOut().setHeader(entry.getKey(), entry.getValue());
- LOG.debug("Populate exchange from Restlet response header: {} value: {}", entry.getKey(), entry.getValue());
+ String key = entry.getKey();
+ Object value = entry.getValue();
+ if (!headerFilterStrategy.applyFilterToExternalHeaders(key, value, exchange)) {
+ exchange.getOut().setHeader(key, value);
+ LOG.debug("Populate exchange from Restlet response header: {} value: {}", key, value);
}
}
Modified: camel/branches/camel-2.10.x/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/MethodBasedRouter.java
URL: http://svn.apache.org/viewvc/camel/branches/camel-2.10.x/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/MethodBasedRouter.java?rev=1375181&r1=1375180&r2=1375181&view=diff
==============================================================================
--- camel/branches/camel-2.10.x/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/MethodBasedRouter.java (original)
+++ camel/branches/camel-2.10.x/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/MethodBasedRouter.java Mon Aug 20 19:39:31 2012
@@ -46,13 +46,14 @@ class MethodBasedRouter extends Restlet
@Override
public void handle(Request request, Response response) {
- LOG.debug("MethodRouter ({}) received request method: {}", uriPattern, request.getMethod());
+ Method method = request.getMethod();
+ LOG.debug("MethodRouter ({}) received request method: {}", uriPattern, method);
- Restlet target = routes.get(request.getMethod());
+ Restlet target = routes.get(method);
if (target != null) {
target.handle(request, response);
} else {
- LOG.debug("No route for request method: {}", request.getMethod());
+ LOG.debug("No route for request method: {}", method);
response.setStatus(Status.CLIENT_ERROR_NOT_FOUND);
}
}
Modified: camel/branches/camel-2.10.x/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/RestletComponent.java
URL: http://svn.apache.org/viewvc/camel/branches/camel-2.10.x/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/RestletComponent.java?rev=1375181&r1=1375180&r2=1375181&view=diff
==============================================================================
--- camel/branches/camel-2.10.x/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/RestletComponent.java (original)
+++ camel/branches/camel-2.10.x/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/RestletComponent.java Mon Aug 20 19:39:31 2012
@@ -280,10 +280,9 @@ public class RestletComponent extends He
LOG.debug("Attached restlet uriPattern: {} method: {}", uriPattern, method);
}
} else {
- router.addRoute(endpoint.getRestletMethod(), target);
- if (LOG.isDebugEnabled()) {
- LOG.debug("Attached restlet uriPattern: {} method: {}", uriPattern, endpoint.getRestletMethod());
- }
+ Method method = endpoint.getRestletMethod();
+ router.addRoute(method, target);
+ LOG.debug("Attached restlet uriPattern: {} method: {}", uriPattern, method);
}
if (!router.hasBeenAttached()) {
Modified: camel/branches/camel-2.10.x/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/RestletProducer.java
URL: http://svn.apache.org/viewvc/camel/branches/camel-2.10.x/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/RestletProducer.java?rev=1375181&r1=1375180&r2=1375181&view=diff
==============================================================================
--- camel/branches/camel-2.10.x/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/RestletProducer.java (original)
+++ camel/branches/camel-2.10.x/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/RestletProducer.java Mon Aug 20 19:39:31 2012
@@ -130,9 +130,7 @@ public class RestletProducer extends Def
String query = exchange.getIn().getHeader(Exchange.HTTP_QUERY, String.class);
if (query != null) {
- if (LOG.isTraceEnabled()) {
- LOG.trace("Adding query: " + query + " to uri: " + uri);
- }
+ LOG.trace("Adding query: {} to uri: {}", query, uri);
uri = addQueryToUri(uri, query);
}
@@ -145,7 +143,7 @@ public class RestletProducer extends Def
return uri;
}
- StringBuffer answer = new StringBuffer();
+ StringBuilder answer = new StringBuilder();
int index = uri.indexOf('?');
if (index < 0) {
@@ -204,8 +202,10 @@ public class RestletProducer extends Def
if (response instanceof Response) {
for (Map.Entry<String, Object> entry : ((Response) response).getAttributes().entrySet()) {
- LOG.trace("Parse external header {}={}", entry.getKey(), entry.getValue());
- answer.put(entry.getKey(), entry.getValue().toString());
+ String key = entry.getKey();
+ Object value = entry.getValue();
+ LOG.trace("Parse external header {}={}", key, value);
+ answer.put(key, value.toString());
}
}