Author: fred
Date: 2007-07-13 11:55:15 +0000 (Fri, 13 Jul 2007)
New Revision: 14064

Modified:
   trunk/plugins/Echo/src/plugins/echo/Node.java
   trunk/plugins/Echo/src/plugins/echo/NodesManager.java
Log:
Adding dates support

Modified: trunk/plugins/Echo/src/plugins/echo/Node.java
===================================================================
--- trunk/plugins/Echo/src/plugins/echo/Node.java       2007-07-13 11:33:38 UTC 
(rev 14063)
+++ trunk/plugins/Echo/src/plugins/echo/Node.java       2007-07-13 11:55:15 UTC 
(rev 14064)
@@ -5,6 +5,8 @@
 import nu.xom.Attribute;
 import nu.xom.Serializer;

+import java.util.Date;
+import java.util.Calendar;
 import java.io.InputStream;
 import java.io.OutputStream;
 import java.io.IOException;
@@ -14,6 +16,8 @@
        private String id;
        private Document doc = null;
        private Element nodeElement = null;
+       private Element createdElement = null;
+       private Element modifiedElement = null;
        private Element categoriesElement = null;
        private Element titleElement = null;
        private Element contentElement = null;
@@ -25,6 +29,13 @@
                nodeElement = new Element("node");
                nodeElement.addAttribute(new Attribute("id", id));

+               createdElement = new Element("created");
+               createdElement.appendChild(dateToString(new Date()));
+               nodeElement.appendChild(createdElement);
+               
+               modifiedElement = new Element("modified");
+               nodeElement.appendChild(modifiedElement);
+               
                categoriesElement = new Element("categories");
                nodeElement.appendChild(categoriesElement);

@@ -44,6 +55,29 @@

        }

+       private String dateToString(Date date) {
+
+               Calendar calendar = Calendar.getInstance();
+               calendar.setTime(date);
+
+               String str = String.valueOf(calendar.get(Calendar.YEAR));
+               str += "/" + calendar.get(Calendar.MONTH);
+               str += "/" + calendar.get(Calendar.DAY_OF_MONTH);
+
+               return str;
+       }
+       
+       private Element getModifiedElement() {
+               if(modifiedElement == null)
+                       modifiedElement = (Element) 
doc.query("/node/modified").get(0);
+               return modifiedElement;
+       }
+
+       protected void setModifiedDate(Date date) {
+               getModifiedElement().removeChildren();
+               modifiedElement.appendChild(dateToString(date));
+       }
+
        private Element getCategoriesElement() {
                if(categoriesElement == null)
                        categoriesElement = (Element) 
doc.query("/node/categories").get(0);

Modified: trunk/plugins/Echo/src/plugins/echo/NodesManager.java
===================================================================
--- trunk/plugins/Echo/src/plugins/echo/NodesManager.java       2007-07-13 
11:33:38 UTC (rev 14063)
+++ trunk/plugins/Echo/src/plugins/echo/NodesManager.java       2007-07-13 
11:55:15 UTC (rev 14064)
@@ -8,6 +8,7 @@
 import nu.xom.ParsingException;

 import java.util.HashMap;
+import java.util.Date;
 import java.io.File;
 import java.io.FileOutputStream;
 import java.io.IOException;
@@ -98,6 +99,8 @@
                        file = nodes.get(nodeId);
                }

+               node.setModifiedDate(new Date());
+               
                Serializer serializer = new Serializer(new 
FileOutputStream(file));
                serializer.setIndent(4);
                serializer.setMaxLength(128);


Reply via email to