main
 1using System;
 2using System.Collections.Generic;
 3using System.Linq;
 4using gorilla.utility;
 5using solidware.financials.service.domain;
 6using Db4objects.Db4o.Linq;
 7
 8namespace solidware.financials.service.orm
 9{
10    public class DB4OPersonRepository : PersonRepository
11    {
12        Connection session;
13
14        public DB4OPersonRepository(Connection session)
15        {
16            this.session = session;
17        }
18
19        public void save(Person person)
20        {
21            if(person.id.Equals(Id<Guid>.Default))
22                person.id = new Id<Guid>(Guid.NewGuid());
23            session.Store(person);
24        }
25
26        public Person find_by(Guid id)
27        {
28            return session.AsQueryable<Person>().Single(x => x.id == id);
29        }
30
31        public IEnumerable<Person> find_all()
32        {
33            return session.AsQueryable<Person>();
34        }
35    }
36}