[Yanel-commits] rev 36335 - public/yanel/trunk/src/core/java/org/wyona/yanel/core/workflow

michi at wyona.com michi at wyona.com
Mon May 5 15:18:51 CEST 2008


Author: michi
Date: 2008-05-05 15:18:50 +0200 (Mon, 05 May 2008)
New Revision: 36335

Modified:
   public/yanel/trunk/src/core/java/org/wyona/yanel/core/workflow/WorkflowHelper.java
Log:
check if resource is versionable

Modified: public/yanel/trunk/src/core/java/org/wyona/yanel/core/workflow/WorkflowHelper.java
===================================================================
--- public/yanel/trunk/src/core/java/org/wyona/yanel/core/workflow/WorkflowHelper.java	2008-05-05 13:00:59 UTC (rev 36334)
+++ public/yanel/trunk/src/core/java/org/wyona/yanel/core/workflow/WorkflowHelper.java	2008-05-05 13:18:50 UTC (rev 36335)
@@ -26,6 +26,7 @@
 import org.wyona.yanel.core.attributes.versionable.RevisionInformation;
 import org.wyona.yanel.core.attributes.viewable.View;
 import org.wyona.yanel.core.util.DateUtil;
+import org.wyona.yanel.core.util.ResourceAttributeHelper;
 import org.wyona.yarep.core.Node;
 import org.wyona.yarep.core.Property;
 import org.wyona.yarep.core.Revision;
@@ -185,11 +186,14 @@
      */
     public static String getWorkflowIntrospection(Resource resource) throws WorkflowException {
         try {
-            StringBuffer sb = new StringBuffer();
+            if (!ResourceAttributeHelper.hasAttributeImplemented(resource, "Versionable", "2")) throw new WorkflowException("Resource '" + resource.getClass().getName() + "'  has not VersionableV2 interface implemented!");
+
             RevisionInformation[] revisions = ((VersionableV2)resource).getRevisions();
             WorkflowableV1 workflowable = (WorkflowableV1)resource;
             String liveRevision = getLiveRevision(resource);
+
             if (revisions != null && revisions.length > 0) {
+                StringBuffer sb = new StringBuffer();
                 sb.append("<versions xmlns=\"http://www.wyona.org/neutron/2.0\">");
                 for (int i = revisions.length - 1; i >= 0; i--) {
                     



More information about the Yanel-commits mailing list