main
  1using System;
  2using System.Collections;
  3using System.Collections.Generic;
  4using Db4objects.Db4o;
  5using Db4objects.Db4o.Ext;
  6using Db4objects.Db4o.Query;
  7using gorilla.utility;
  8
  9namespace solidware.financials.service.orm
 10{
 11    public class DB4OConnection : Connection
 12    {
 13        readonly IObjectContainer session;
 14        Id<long> id = new Id<long>(DateTime.Now.Ticks);
 15
 16        public DB4OConnection(IObjectContainer session)
 17        {
 18            this.session = session;
 19        }
 20
 21        public void Dispose()
 22        {
 23            session.Dispose();
 24        }
 25
 26        public void Activate(object obj, int depth)
 27        {
 28            session.Activate(obj, depth);
 29        }
 30
 31        public bool Close()
 32        {
 33            return session.Close();
 34        }
 35
 36        public void Commit()
 37        {
 38            session.Commit();
 39        }
 40
 41        public void Deactivate(object obj, int depth)
 42        {
 43            session.Deactivate(obj, depth);
 44        }
 45
 46        public void Delete(object obj)
 47        {
 48            session.Delete(obj);
 49        }
 50
 51        public IExtObjectContainer Ext()
 52        {
 53            return session.Ext();
 54        }
 55
 56        public IObjectSet QueryByExample(object template)
 57        {
 58            return session.QueryByExample(template);
 59        }
 60
 61        public IQuery Query()
 62        {
 63            return session.Query();
 64        }
 65
 66        public IObjectSet Query(Type clazz)
 67        {
 68            return session.Query(clazz);
 69        }
 70
 71        public IObjectSet Query(Predicate predicate)
 72        {
 73            return session.Query(predicate);
 74        }
 75
 76        public IObjectSet Query(Predicate predicate, IQueryComparator comparator)
 77        {
 78            return session.Query(predicate, comparator);
 79        }
 80
 81        public IObjectSet Query(Predicate predicate, IComparer comparer)
 82        {
 83            return session.Query(predicate, comparer);
 84        }
 85
 86        public void Rollback()
 87        {
 88            session.Rollback();
 89        }
 90
 91        public void Store(object obj)
 92        {
 93            session.Store(obj);
 94        }
 95
 96        public IList<Extent> Query<Extent>(Predicate<Extent> match)
 97        {
 98            return session.Query(match);
 99        }
100
101        public IList<Extent> Query<Extent>(Predicate<Extent> match, IComparer<Extent> comparer)
102        {
103            return session.Query(match, comparer);
104        }
105
106        public IList<Extent> Query<Extent>(Predicate<Extent> match, Comparison<Extent> comparison)
107        {
108            return session.Query(match, comparison);
109        }
110
111        public IList<ElementType> Query<ElementType>(Type extent)
112        {
113            return session.Query<ElementType>(extent);
114        }
115
116        public IList<Extent> Query<Extent>()
117        {
118            return session.Query<Extent>();
119        }
120
121        public IList<Extent> Query<Extent>(IComparer<Extent> comparer)
122        {
123            return session.Query(comparer);
124        }
125    }
126}