X-Git-Url: http://git.sourceforge.jp/view?p=neighbornote%2FNeighborNote.git;a=blobdiff_plain;f=src%2Fcx%2Ffbn%2Fnevernote%2Fsql%2FNoteResourceTable.java;h=b3a080699b8b4deeacaee2a3e5992d19b18c2a41;hp=9c612e4266862192fc6bfe7a3470b87c6473cc24;hb=adf1dae4e586ae493c99a71f6892eb5797a5111a;hpb=f7843dea2376bbdbe63a4105b7a961eee1cc5797 diff --git a/src/cx/fbn/nevernote/sql/NoteResourceTable.java b/src/cx/fbn/nevernote/sql/NoteResourceTable.java index 9c612e4..b3a0806 100644 --- a/src/cx/fbn/nevernote/sql/NoteResourceTable.java +++ b/src/cx/fbn/nevernote/sql/NoteResourceTable.java @@ -82,6 +82,8 @@ public class NoteResourceTable { query.bindValue(":guid", guid); if (!query.exec()) logger.log(logger.EXTREME, "Error resetting noteresource dirty field. " +query.lastError()); + else + query.exec("commit"); } // Set if the resource should be indexed public void setIndexNeeded(String guid, Boolean indexNeeded) { @@ -91,6 +93,8 @@ public class NoteResourceTable { query.bindValue(":guid", guid); if (!query.exec()) logger.log(logger.EXTREME, "Error setting noteresource indexneeded field: " +query.lastError()); + else + query.exec("commit"); } // get any unindexed resource public List getNextUnindexed(int limit) { @@ -228,7 +232,8 @@ public class NoteResourceTable { if (!check) { logger.log(logger.MEDIUM, "*** NoteResource Table insert failed."); logger.log(logger.MEDIUM, query.lastError()); - } + } else + query.exec("commit"); logger.log(logger.HIGH, "Leaving DBRunner.saveNoteResources"); @@ -239,10 +244,13 @@ public class NoteResourceTable { query.prepare("delete from NoteResources where guid=:guid"); query.bindValue(":guid", guid); query.exec(); - - query.prepare("delete from InkImages where guid=:guid"); - query.bindValue(":guid", guid); - query.exec(); + query.exec("commit"); + + NSqlQuery query2 = new NSqlQuery(db.getConnection()); + query2.prepare("Delete from InkImages where guid=:guid"); + query2.bindValue(":guid", guid); + query2.exec(); + query2.exec("commit"); } @@ -348,7 +356,7 @@ public class NoteResourceTable { +"recognitionHash, recognitionSize, " +"attributeLatitude, attributeLongitude, attributeAltitude, " +"attributeCameraMake, attributeCameraModel, attributeClientWillIndex, " - +"attributeRecoType, attributeFileName, attributeAttachment, recognitionBinary " + +"attributeRecoType, attributeFileName, attributeAttachment, attributeSourceUrl " +" from NoteResources where guid=:guid"); @@ -403,6 +411,7 @@ public class NoteResourceTable { a.setRecoType(stringValue(query.valueString(18))); // Recognition Type a.setFileName(stringValue(query.valueString(19))); // File Name a.setAttachment(booleanValue(query.valueString(20).toString(),false)); + a.setSourceURL(query.valueString(21)); r.setAttributes(a); if (withBinary) { @@ -521,12 +530,8 @@ public class NoteResourceTable { // Save Note Resource public void updateNoteResource(Resource r, boolean isDirty) { logger.log(logger.HIGH, "Entering ListManager.updateNoteResource"); - NSqlQuery query = new NSqlQuery(db.getResourceConnection()); - query.prepare("delete from NoteResources where guid=:recGuid"); - query.bindValue(":recGuid", r.getGuid()); - query.exec(); + expungeNoteResource(r.getGuid()); saveNoteResource(r, isDirty); - query = null; logger.log(logger.HIGH, "Leaving RNoteResourceTable.updateNoteResource"); } // Update note resource GUID @@ -538,6 +543,7 @@ public class NoteResourceTable { query.bindValue(":isDirty", isDirty); query.bindValue(":oldGuid", oldGuid); query.exec(); + query.exec("commit"); logger.log(logger.HIGH, "Leaving RNoteResourceTable.updateNoteResourceGuid"); } // Update note resource GUID @@ -548,6 +554,7 @@ public class NoteResourceTable { query.bindValue(":isDirty", isDirty); query.bindValue(":guid", guid); query.exec(); + query.exec("commit"); logger.log(logger.HIGH, "Leaving RNoteResourceTable.updateNoteResourceGuid"); } @@ -555,6 +562,7 @@ public class NoteResourceTable { public void reindexAll() { NSqlQuery query = new NSqlQuery(db.getResourceConnection()); query.exec("Update NoteResources set indexneeded=true"); + query.exec("commit"); } // Count attachments public int getResourceCount() { @@ -625,4 +633,31 @@ public class NoteResourceTable { return unknown; } + // Update note source url. + public void updateNoteSourceUrl(String guid, String url, boolean isDirty) { + logger.log(logger.HIGH, "Entering RNoteResourceTable.updateNoteSourceUrl()"); + NSqlQuery query = new NSqlQuery(db.getResourceConnection()); + query.prepare("update NoteResources set attributesourceurl=:url, isDirty=:isDirty where guid=:guid"); + query.bindValue(":guid", guid); + query.bindValue(":isDirty", isDirty); + query.bindValue(":url", url); + query.exec(); + query.exec("commit"); + logger.log(logger.HIGH, "Leaving RNoteResourceTable.updateNoteSourceUrl()"); + } + + // Get note source + public String getNoteSourceUrl(String guid) { + logger.log(logger.HIGH, "Entering RNoteResourceTable.getNoteSourceUrl()"); + NSqlQuery query = new NSqlQuery(db.getResourceConnection()); + query.prepare("Select attributesourceurl from noteresources where guid=:guid"); + query.bindValue(":guid", guid); + query.exec(); + if (query.next()) { + logger.log(logger.HIGH, "Leaving RNoteResourceTable.getNoteSourceUrl()"); + return query.valueString(0); + } + logger.log(logger.HIGH, "Leaving RNoteResourceTable.getNoteSourceUrl() - no value found"); + return null; + } }