Author: jstrachan
Date: Mon Feb 23 11:32:20 2009
New Revision: 746964
URL: http://svn.apache.org/viewvc?rev=746964&view=rev
Log:
CAMEL-1355 improvements to deal with non-singleton endpoints properly
Modified:
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/model/EndpointLink.java
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/model/Endpoints.java
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/EndpointResource.java
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/EndpointsResource.java
Modified:
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/model/EndpointLink.java
URL:
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/model/EndpointLink.java?rev=746964&r1=746963&r2=746964&view=diff
==============================================================================
---
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/model/EndpointLink.java
(original)
+++
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/model/EndpointLink.java
Mon Feb 23 11:32:20 2009
@@ -42,6 +42,11 @@
load(endpoint);
}
+ public EndpointLink(String key, Endpoint endpoint) {
+ this();
+ load(key, endpoint);
+ }
+
@Override
public String toString() {
return "EndpointLink{href='" + href + "' uri='" + uri + "'}";
@@ -52,6 +57,11 @@
this.href = createHref(uri);
}
+ public void load(String key, Endpoint endpoint) {
+ this.uri = endpoint.getEndpointUri();
+ this.href = createHref(key);
+ }
+
public String getHref() {
return href;
}
@@ -72,4 +82,5 @@
// TODO how to encode as a href?
return "/endpoints/" + uri;
}
+
}
Modified:
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/model/Endpoints.java
URL:
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/model/Endpoints.java?rev=746964&r1=746963&r2=746964&view=diff
==============================================================================
---
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/model/Endpoints.java
(original)
+++
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/model/Endpoints.java
Mon Feb 23 11:32:20 2009
@@ -19,6 +19,8 @@
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
+import java.util.Map;
+import java.util.Set;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
@@ -62,16 +64,23 @@
public void load(CamelContext camelContext) {
ObjectHelper.notNull(camelContext, "camelContext has not been
injected!");
+ Map<String,Endpoint> map = camelContext.getEndpointMap();
+ Set<Map.Entry<String,Endpoint>> entries = map.entrySet();
+ for (Map.Entry<String, Endpoint> entry : entries) {
+ addEndpoint(createEndpointLink(entry.getKey(), entry.getValue()));
+ }
+/*
Collection<Endpoint> endpoints = camelContext.getSingletonEndpoints();
for (Endpoint endpoint : endpoints) {
addEndpoint(createEndpointLink(endpoint));
}
+*/
}
- protected EndpointLink createEndpointLink(Endpoint endpoint) {
+ protected EndpointLink createEndpointLink(String key, Endpoint endpoint) {
EndpointLink answer = new EndpointLink();
- answer.load(endpoint);
+ answer.load(key, endpoint);
return answer;
}
Modified:
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/EndpointResource.java
URL:
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/EndpointResource.java?rev=746964&r1=746963&r2=746964&view=diff
==============================================================================
---
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/EndpointResource.java
(original)
+++
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/EndpointResource.java
Mon Feb 23 11:32:20 2009
@@ -46,15 +46,21 @@
* @version $Revision$
*/
public class EndpointResource extends CamelChildResourceSupport {
+ private final String key;
private final Endpoint endpoint;
- public EndpointResource(CamelContextResource contextResource, Endpoint
endpoint) {
+ public EndpointResource(CamelContextResource contextResource, String key,
Endpoint endpoint) {
super(contextResource);
+ this.key = key;
this.endpoint = endpoint;
}
public String getHref() {
- return new EndpointLink(endpoint).getHref();
+ return new EndpointLink(key, endpoint).getHref();
+ }
+
+ public String getKey() {
+ return key;
}
public String getUri() {
@@ -65,7 +71,6 @@
return endpoint;
}
-
public BrowsableEndpoint getBrowsableEndpoint() {
if (endpoint instanceof BrowsableEndpoint) {
return (BrowsableEndpoint) endpoint;
Modified:
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/EndpointsResource.java
URL:
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/EndpointsResource.java?rev=746964&r1=746963&r2=746964&view=diff
==============================================================================
---
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/EndpointsResource.java
(original)
+++
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/EndpointsResource.java
Mon Feb 23 11:32:20 2009
@@ -78,7 +78,7 @@
}
}
if (endpoint != null) {
- return new EndpointResource(getContextResource(), endpoint);
+ return new EndpointResource(getContextResource(), id, endpoint);
} else {
return null;
}