aboutsummaryrefslogtreecommitdiffstats
path: root/org_apg/src/org/thialfihar/android/apg/provider/blob/ApgServiceBlobDatabase.java
diff options
context:
space:
mode:
authorDominik <dominik@dominikschuermann.de>2012-06-09 03:46:30 +0300
committerDominik <dominik@dominikschuermann.de>2012-06-13 19:28:23 +0300
commit5a51f7912694db0f24588b07cd21ca4f94fe9101 (patch)
tree4f45e02f5aef854b22e92ca7a5de878278121157 /org_apg/src/org/thialfihar/android/apg/provider/blob/ApgServiceBlobDatabase.java
parent7b61ad24d7b9b4d633d924dd7db38758012e4a8e (diff)
downloadopen-keychain-5a51f7912694db0f24588b07cd21ca4f94fe9101.tar.gz
open-keychain-5a51f7912694db0f24588b07cd21ca4f94fe9101.tar.bz2
open-keychain-5a51f7912694db0f24588b07cd21ca4f94fe9101.zip
working on externalizing encrypt methods into the service
Diffstat (limited to 'org_apg/src/org/thialfihar/android/apg/provider/blob/ApgServiceBlobDatabase.java')
-rw-r--r--org_apg/src/org/thialfihar/android/apg/provider/blob/ApgServiceBlobDatabase.java72
1 files changed, 72 insertions, 0 deletions
diff --git a/org_apg/src/org/thialfihar/android/apg/provider/blob/ApgServiceBlobDatabase.java b/org_apg/src/org/thialfihar/android/apg/provider/blob/ApgServiceBlobDatabase.java
new file mode 100644
index 000000000..5122f9da1
--- /dev/null
+++ b/org_apg/src/org/thialfihar/android/apg/provider/blob/ApgServiceBlobDatabase.java
@@ -0,0 +1,72 @@
+/*
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.thialfihar.android.apg.provider.blob;
+
+import org.thialfihar.android.apg.service.ApgService2;
+
+import android.content.ContentUris;
+import android.content.ContentValues;
+import android.content.Context;
+import android.database.Cursor;
+import android.database.sqlite.SQLiteDatabase;
+import android.database.sqlite.SQLiteOpenHelper;
+import android.net.Uri;
+import android.util.Log;
+
+public class ApgServiceBlobDatabase extends SQLiteOpenHelper {
+
+ private static final String TAG = "ApgServiceBlobDatabase";
+
+ private static final int VERSION = 1;
+ private static final String NAME = "apg_service_blob_data";
+ private static final String TABLE = "data";
+
+ public ApgServiceBlobDatabase(Context context) {
+ super(context, NAME, null, VERSION);
+ if (ApgService2.LOCAL_LOGD)
+ Log.d(TAG, "constructor called");
+ }
+
+ @Override
+ public void onCreate(SQLiteDatabase db) {
+ if (ApgService2.LOCAL_LOGD)
+ Log.d(TAG, "onCreate() called");
+ db.execSQL("create table " + TABLE + " ( _id integer primary key autoincrement,"
+ + "key text not null)");
+ }
+
+ @Override
+ public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
+ if (ApgService2.LOCAL_LOGD)
+ Log.d(TAG, "onUpgrade() called");
+ // no upgrade necessary yet
+ }
+
+ public Uri insert(ContentValues vals) {
+ if (ApgService2.LOCAL_LOGD)
+ Log.d(TAG, "insert() called");
+ SQLiteDatabase db = this.getWritableDatabase();
+ long newId = db.insert(TABLE, null, vals);
+ return ContentUris.withAppendedId(ApgServiceBlobProvider.CONTENT_URI, newId);
+ }
+
+ public Cursor query(String id, String key) {
+ if (ApgService2.LOCAL_LOGD)
+ Log.d(TAG, "query() called");
+ SQLiteDatabase db = this.getReadableDatabase();
+ return db.query(TABLE, new String[] { "_id" }, "_id = ? and key = ?", new String[] { id,
+ key }, null, null, null);
+ }
+}