OSDN Git Service

アイコンを変更した
[neighbornote/NeighborNote.git] / src / cx / fbn / nevernote / sql / SyncTable.java
index 7812054..9aac97f 100644 (file)
@@ -1,5 +1,5 @@
 /*\r
- * This file is part of NeverNote \r
+ * This file is part of NixNote/NeighborNote \r
  * Copyright 2009 Randy Baumgarte\r
  * \r
  * This file may be licensed under the terms of of the\r
@@ -20,6 +20,9 @@
 \r
 package cx.fbn.nevernote.sql;\r
 \r
+import java.util.ArrayList;\r
+import java.util.List;\r
+\r
 import cx.fbn.nevernote.sql.driver.NSqlQuery;\r
 import cx.fbn.nevernote.utilities.ApplicationLogger;\r
 import cx.fbn.nevernote.utilities.ListManager;\r
@@ -60,7 +63,17 @@ public class SyncTable {
                        logger.log(logger.MEDIUM, query.lastError());\r
                }\r
        }\r
-       // Set a key field\r
+       // Add an item to the table\r
+       public void deleteRecord(String key) {\r
+        NSqlQuery query = new NSqlQuery(db.getConnection());\r
+               query.prepare("Delete From Sync where key=:key");\r
+               query.bindValue(":key", key);\r
+               if (!query.exec()) {\r
+                       logger.log(logger.MEDIUM, "Delete from Sync failed.");\r
+                       logger.log(logger.MEDIUM, query.lastError());\r
+               }\r
+       }\r
+       // Get a key field\r
        public String getRecord(String key) {\r
         NSqlQuery query = new NSqlQuery(db.getConnection());\r
         query.prepare("Select value from Sync where key=:key");\r
@@ -90,10 +103,20 @@ public class SyncTable {
 \r
        // Set the last sequence date\r
        public void setLastSequenceDate(long date) {\r
+               logger.log(logger.LOW, "Updating Last Sequence Date: " +date);\r
+               long old = getLastSequenceDate();\r
+               logger.log(logger.LOW, "Old Last Sequence Date: " +old);\r
+               if (date < old) \r
+                       logger.log(logger.LOW, "************* SEQUENCE DATE PROBLEM!!! "+(old-date));\r
                setRecord("LastSequenceDate", new Long(date).toString());\r
        }\r
        // Set the last sequence date\r
        public void setUpdateSequenceNumber(int number) {\r
+               logger.log(logger.LOW, "Updating Last Sequence Number: " +number);\r
+               int old = getUpdateSequenceNumber();\r
+               logger.log(logger.LOW, "Old Last Sequence Number: " +old);\r
+               if (number < old) \r
+                       logger.log(logger.LOW, "************* SEQUENCE NUMBER PROBLEM!!! "+(old-number));\r
                setRecord("UpdateSequenceNumber", new Integer(number).toString());\r
        }\r
        // get last sequence date\r
@@ -104,7 +127,23 @@ public class SyncTable {
        public int getUpdateSequenceNumber() {\r
                return new Integer(getRecord("UpdateSequenceNumber"));\r
        }\r
-       \r
-\r
+       // Get notebooks/tags to ignore\r
+       public List<String> getIgnoreRecords(String type) {\r
+               List<String> values = new ArrayList<String>();\r
+        NSqlQuery query = new NSqlQuery(db.getConnection());\r
+        if (!query.prepare("Select value from Sync where key like :type")) {\r
+                       logger.log(logger.MEDIUM, "getIgnoreRecords from sync failed.");\r
+                       logger.log(logger.MEDIUM, query.lastError());\r
+                       return null;\r
+               }\r
+        query.bindValue(":type", "IGNORE" +type +"-%");\r
+        query.exec();\r
+               while (query.next()) {\r
+                       values.add(query.valueString(0));\r
+               }\r
+               return values;\r
+       }\r
+       // Expunge ignore records\r
+       // Add an item to the table\r
 \r
 }\r