[hornetq-commits] JBoss hornetq SVN: r10107 - in trunk/hornetq-rest/hornetq-rest/src/main/java/org/hornetq/rest: topic and 1 other directory.

do-not-reply at jboss.org do-not-reply at jboss.org
Thu Jan 6 10:55:56 EST 2011


Author: bill.burke at jboss.com
Date: 2011-01-06 10:55:56 -0500 (Thu, 06 Jan 2011)
New Revision: 10107

Modified:
   trunk/hornetq-rest/hornetq-rest/src/main/java/org/hornetq/rest/queue/QueueResource.java
   trunk/hornetq-rest/hornetq-rest/src/main/java/org/hornetq/rest/topic/TopicResource.java
Log:
 add atom link to queue/topic media type for all interactions


Modified: trunk/hornetq-rest/hornetq-rest/src/main/java/org/hornetq/rest/queue/QueueResource.java
===================================================================
--- trunk/hornetq-rest/hornetq-rest/src/main/java/org/hornetq/rest/queue/QueueResource.java	2011-01-05 16:30:39 UTC (rev 10106)
+++ trunk/hornetq-rest/hornetq-rest/src/main/java/org/hornetq/rest/queue/QueueResource.java	2011-01-06 15:55:56 UTC (rev 10107)
@@ -36,12 +36,19 @@
    public Response get(@Context UriInfo uriInfo)
    {
 
+      StringBuilder msg = new StringBuilder();
+      msg.append("<queue>")
+              .append("<name>").append(destination).append("</name>")
+              .append("<atom:link rel=\"create\" href=\"").append(createSenderLink(uriInfo)).append("\"/>")
+              .append("<atom:link rel=\"create-with-id\" href=\"").append(createSenderWithIdLink(uriInfo)).append("\"/>")
+              .append("<atom:link rel=\"pull-consumers\" href=\"").append(createConsumersLink(uriInfo)).append("\"/>")
+              .append("<atom:link rel=\"push-consumers\" href=\"").append(createPushConsumersLink(uriInfo)).append("\"/>")
 
-      String msg = "<queue>"
-              + "<name>" + destination + "</name>"
-              + "</queue>";
-      Response.ResponseBuilder builder = Response.ok(msg);
+         .append("</queue>");
+      
+      Response.ResponseBuilder builder = Response.ok(msg.toString());
       setSenderLink(builder, uriInfo);
+      setSenderWithIdLink(builder, uriInfo);
       setConsumersLink(builder, uriInfo);
       setPushConsumersLink(builder, uriInfo);
       return builder.build();
@@ -61,35 +68,59 @@
 
    protected void setSenderLink(Response.ResponseBuilder response, UriInfo info)
    {
+      String uri = createSenderLink(info);
+      serviceManager.getLinkStrategy().setLinkHeader(response, "create", "create", uri, null);
+   }
+
+   protected String createSenderLink(UriInfo info)
+   {
       UriBuilder builder = info.getRequestUriBuilder();
       builder.path("create");
       String uri = builder.build().toString();
-      serviceManager.getLinkStrategy().setLinkHeader(response, "create", "create", uri, null);
+      return uri;
    }
 
    protected void setSenderWithIdLink(Response.ResponseBuilder response, UriInfo info)
    {
+      String uri = createSenderWithIdLink(info);
+      serviceManager.getLinkStrategy().setLinkHeader(response, "create-with-id", "create-with-id", uri, null);
+   }
+
+   protected String createSenderWithIdLink(UriInfo info)
+   {
       UriBuilder builder = info.getRequestUriBuilder();
       builder.path("create");
       String uri = builder.build().toString();
       uri += "/{id}";
-      serviceManager.getLinkStrategy().setLinkHeader(response, "create-with-id", "create-with-id", uri, null);
+      return uri;
    }
 
    protected void setConsumersLink(Response.ResponseBuilder response, UriInfo info)
    {
+      String uri = createConsumersLink(info);
+      serviceManager.getLinkStrategy().setLinkHeader(response, "pull-consumers", "pull-consumers", uri, null);
+   }
+
+   protected String createConsumersLink(UriInfo info)
+   {
       UriBuilder builder = info.getRequestUriBuilder();
       builder.path("pull-consumers");
       String uri = builder.build().toString();
-      serviceManager.getLinkStrategy().setLinkHeader(response, "pull-consumers", "pull-consumers", uri, null);
+      return uri;
    }
 
    protected void setPushConsumersLink(Response.ResponseBuilder response, UriInfo info)
    {
+      String uri = createPushConsumersLink(info);
+      serviceManager.getLinkStrategy().setLinkHeader(response, "push-consumers", "push-consumers", uri, null);
+   }
+
+   protected String createPushConsumersLink(UriInfo info)
+   {
       UriBuilder builder = info.getRequestUriBuilder();
       builder.path("push-consumers");
       String uri = builder.build().toString();
-      serviceManager.getLinkStrategy().setLinkHeader(response, "push-consumers", "push-consumers", uri, null);
+      return uri;
    }
 
 

Modified: trunk/hornetq-rest/hornetq-rest/src/main/java/org/hornetq/rest/topic/TopicResource.java
===================================================================
--- trunk/hornetq-rest/hornetq-rest/src/main/java/org/hornetq/rest/topic/TopicResource.java	2011-01-05 16:30:39 UTC (rev 10106)
+++ trunk/hornetq-rest/hornetq-rest/src/main/java/org/hornetq/rest/topic/TopicResource.java	2011-01-06 15:55:56 UTC (rev 10107)
@@ -37,12 +37,19 @@
    public Response get(@Context UriInfo uriInfo)
    {
 
+      StringBuilder msg = new StringBuilder();
+      msg.append("<topic>")
+              .append("<name>").append(destination).append("</name>")
+              .append("<atom:link rel=\"create\" href=\"").append(createSenderLink(uriInfo)).append("\"/>")
+              .append("<atom:link rel=\"create-with-id\" href=\"").append(createSenderWithIdLink(uriInfo)).append("\"/>")
+              .append("<atom:link rel=\"pull-consumers\" href=\"").append(createSubscriptionsLink(uriInfo)).append("\"/>")
+              .append("<atom:link rel=\"push-consumers\" href=\"").append(createPushSubscriptionsLink(uriInfo)).append("\"/>")
 
-      String msg = "<topic>"
-              + "<name>" + destination + "</name>"
-              + "</topic>";
-      Response.ResponseBuilder builder = Response.ok(msg);
+         .append("</topic>");
+
+      Response.ResponseBuilder builder = Response.ok(msg.toString());
       setSenderLink(builder, uriInfo);
+      setSenderWithIdLink(builder, uriInfo);
       setSubscriptionsLink(builder, uriInfo);
       setPushSubscriptionsLink(builder, uriInfo);
       return builder.build();
@@ -62,35 +69,59 @@
 
    protected void setSenderLink(Response.ResponseBuilder response, UriInfo info)
    {
+      String uri = createSenderLink(info);
+      serviceManager.getLinkStrategy().setLinkHeader(response, "create", "create", uri, null);
+   }
+
+   protected String createSenderLink(UriInfo info)
+   {
       UriBuilder builder = info.getRequestUriBuilder();
       builder.path("create");
       String uri = builder.build().toString();
-      serviceManager.getLinkStrategy().setLinkHeader(response, "create", "create", uri, null);
+      return uri;
    }
 
    protected void setSenderWithIdLink(Response.ResponseBuilder response, UriInfo info)
    {
+      String uri = createSenderWithIdLink(info);
+      serviceManager.getLinkStrategy().setLinkHeader(response, "create-with-id", "create-with-id", uri, null);
+   }
+
+   protected String createSenderWithIdLink(UriInfo info)
+   {
       UriBuilder builder = info.getRequestUriBuilder();
       builder.path("create");
       String uri = builder.build().toString();
       uri += "/{id}";
-      serviceManager.getLinkStrategy().setLinkHeader(response, "create-with-id", "create-with-id", uri, null);
+      return uri;
    }
 
    protected void setSubscriptionsLink(Response.ResponseBuilder response, UriInfo info)
    {
+      String uri = createSubscriptionsLink(info);
+      serviceManager.getLinkStrategy().setLinkHeader(response, "pull-subscriptions", "pull-subscriptions", uri, null);
+   }
+
+   protected String createSubscriptionsLink(UriInfo info)
+   {
       UriBuilder builder = info.getRequestUriBuilder();
       builder.path("pull-subscriptions");
       String uri = builder.build().toString();
-      serviceManager.getLinkStrategy().setLinkHeader(response, "pull-subscriptions", "pull-subscriptions", uri, null);
+      return uri;
    }
 
    protected void setPushSubscriptionsLink(Response.ResponseBuilder response, UriInfo info)
    {
+      String uri = createPushSubscriptionsLink(info);
+      serviceManager.getLinkStrategy().setLinkHeader(response, "push-subscriptions", "push-subscriptions", uri, null);
+   }
+
+   protected String createPushSubscriptionsLink(UriInfo info)
+   {
       UriBuilder builder = info.getRequestUriBuilder();
       builder.path("push-subscriptions");
       String uri = builder.build().toString();
-      serviceManager.getLinkStrategy().setLinkHeader(response, "push-subscriptions", "push-subscriptions", uri, null);
+      return uri;
    }
 
 



More information about the hornetq-commits mailing list