[Yanel-commits] rev 23264 - public/yanel/trunk/src/resources/file/src/java/org/wyona/yanel/impl/resources

michi at wyona.com michi at wyona.com
Wed Mar 14 17:15:30 CET 2007


Author: michi
Date: 2007-03-14 17:15:28 +0100 (Wed, 14 Mar 2007)
New Revision: 23264

Modified:
   public/yanel/trunk/src/resources/file/src/java/org/wyona/yanel/impl/resources/NodeResource.java
Log:
introspection implemented

Modified: public/yanel/trunk/src/resources/file/src/java/org/wyona/yanel/impl/resources/NodeResource.java
===================================================================
--- public/yanel/trunk/src/resources/file/src/java/org/wyona/yanel/impl/resources/NodeResource.java	2007-03-14 16:14:46 UTC (rev 23263)
+++ public/yanel/trunk/src/resources/file/src/java/org/wyona/yanel/impl/resources/NodeResource.java	2007-03-14 16:15:28 UTC (rev 23264)
@@ -21,6 +21,7 @@
 import org.wyona.yanel.core.ResourceConfiguration;
 import org.wyona.yanel.core.Topic;
 import org.wyona.yanel.core.api.attributes.CreatableV2;
+import org.wyona.yanel.core.api.attributes.IntrospectableV1;
 import org.wyona.yanel.core.api.attributes.ModifiableV2;
 import org.wyona.yanel.core.api.attributes.VersionableV2;
 import org.wyona.yanel.core.api.attributes.ViewableV2;
@@ -49,7 +50,7 @@
 /**
  * Generic Node Resource
  */
-public class NodeResource extends Resource implements ViewableV2, ModifiableV2, VersionableV2 {
+public class NodeResource extends Resource implements ViewableV2, ModifiableV2, VersionableV2, IntrospectableV1 {
 //public class NodeResource extends Resource implements ViewableV2, ModifiableV2, VersionableV2, CreatableV2 {
 
     private static Category log = Category.getInstance(NodeResource.class);
@@ -341,4 +342,17 @@
     public String getPropertyType(String name) {
         return CreatableV2.TYPE_UPLOAD;
     }
+
+    public String getIntrospection() throws Exception {
+        String name = PathUtil.getName(getPath());
+        StringBuffer buf = new StringBuffer();
+        buf.append("<?xml version=\"1.0\"?>");
+        buf.append("<introspection xmlns=\"http://www.wyona.org/neutron/1.0\">");
+        buf.append("<edit mime-type=\"" + this.getMimeType(null) + "\" name=\"" + name + "\">");
+        buf.append("<checkout url=\"?yanel.resource.usecase=checkout\" method=\"GET\"/>");
+        buf.append("<checkin  url=\"?yanel.resource.usecase=checkin\"  method=\"PUT\"/>");
+        buf.append("</edit>");
+        buf.append("</introspection>");
+        return buf.toString();
+    }
 }




More information about the Yanel-commits mailing list