summaryrefslogtreecommitdiff
path: root/product/database/db4o/ObjectDatabaseConnection.cs
diff options
context:
space:
mode:
Diffstat (limited to 'product/database/db4o/ObjectDatabaseConnection.cs')
-rw-r--r--product/database/db4o/ObjectDatabaseConnection.cs48
1 files changed, 48 insertions, 0 deletions
diff --git a/product/database/db4o/ObjectDatabaseConnection.cs b/product/database/db4o/ObjectDatabaseConnection.cs
new file mode 100644
index 0000000..7149d25
--- /dev/null
+++ b/product/database/db4o/ObjectDatabaseConnection.cs
@@ -0,0 +1,48 @@
+using System;
+using System.Collections.Generic;
+using Db4objects.Db4o;
+using momoney.database.transactions;
+
+namespace momoney.database.db4o
+{
+ public class ObjectDatabaseConnection : DatabaseConnection
+ {
+ readonly IObjectContainer container;
+
+ public ObjectDatabaseConnection(IObjectContainer container)
+ {
+ this.container = container;
+ }
+
+ public void Dispose()
+ {
+ container.Close();
+ container.Dispose();
+ }
+
+ public IEnumerable<T> query<T>()
+ {
+ return container.Query<T>();
+ }
+
+ public IEnumerable<T> query<T>(Predicate<T> predicate)
+ {
+ return container.Query(predicate);
+ }
+
+ public void delete<T>(T entity)
+ {
+ container.Delete(entity);
+ }
+
+ public void commit()
+ {
+ container.Commit();
+ }
+
+ public void store<T>(T entity)
+ {
+ container.Store(entity);
+ }
+ }
+} \ No newline at end of file