]> git.argeo.org Git - gpl/argeo-slc.git/blobdiff - plugins/org.argeo.slc.client.ui/src/main/java/org/argeo/slc/client/ui/decorators/ResultFailedDecorator.java
Various enhancements of the result tree viewer
[gpl/argeo-slc.git] / plugins / org.argeo.slc.client.ui / src / main / java / org / argeo / slc / client / ui / decorators / ResultFailedDecorator.java
index 64c759b77db6f8edbe66831f83aa86992d6a0d54..7878f85a25977a893aeba405dd0c87f28b1f0420 100644 (file)
  */
 package org.argeo.slc.client.ui.decorators;
 
+import java.text.DateFormat;
+import java.text.SimpleDateFormat;
+
+import javax.jcr.Node;
+import javax.jcr.RepositoryException;
+
+import org.argeo.slc.SlcException;
 import org.argeo.slc.client.ui.ClientUiPlugin;
 import org.argeo.slc.client.ui.model.ResultParent;
+import org.argeo.slc.client.ui.model.SingleResultNode;
+import org.argeo.slc.jcr.SlcNames;
 import org.eclipse.jface.resource.ImageDescriptor;
 import org.eclipse.jface.viewers.DecorationOverlayIcon;
 import org.eclipse.jface.viewers.IDecoration;
@@ -31,6 +40,9 @@ public class ResultFailedDecorator extends LabelProvider implements
        // private final static Log log = LogFactory
        // .getLog(ResultFailedDecorator.class);
 
+       private final static DateFormat dateFormat = new SimpleDateFormat(
+                       "yyyy-MM-dd HH:mm");
+
        public ResultFailedDecorator() {
                super();
        }
@@ -58,6 +70,22 @@ public class ResultFailedDecorator extends LabelProvider implements
 
        // Method to decorate Text
        public String decorateText(String label, Object object) {
-               return null;
+               if (object instanceof SingleResultNode) {
+                       SingleResultNode srNode = (SingleResultNode) object;
+                       Node node = srNode.getNode();
+                       String decoration = null;
+                       try {
+                               if (node.hasProperty(SlcNames.SLC_COMPLETED))
+                                       decoration = dateFormat.format(node
+                                                       .getProperty(SlcNames.SLC_COMPLETED).getDate()
+                                                       .getTime());
+                       } catch (RepositoryException re) {
+                               throw new SlcException(
+                                               "Unexpected defining text decoration for result", re);
+                       }
+                       return label + " [" + decoration + "]";
+               } else
+                       return null;
        }
+
 }