annotate Agendas/trunk/src/Agendas.Factories/AgendaFactory.cs @ 209:a36a76bd6ec3

Se soluciona ticket 173. Se agrega eliminación de personas siempre y cuando no esté asociada a ninguna van.
author alabra
date Wed, 24 Aug 2011 19:27:30 -0300
parents 5346c0500594
children 72a96459f910
rev   line source
158
734d3f0853bf Manejando configuración de los publicadores con una sección propia en los .config
nelopauselli
parents: 138
diff changeset
1 using Agendas.Blog.Impl;
734d3f0853bf Manejando configuración de los publicadores con una sección propia en los .config
nelopauselli
parents: 138
diff changeset
2 using Agendas.NHibernate;
67
c8099df941bd Implementando persistencia con NHibernate en el proyecto web
nelopauselli
parents: 50
diff changeset
3 using AltNetHispano.Agendas.Domain;
94
db4b1e2cae49 Cambio del nombre de la clase Ponente a Persona
Nelo@Kenia.neluz.int
parents: 87
diff changeset
4 using AltNetHispano.Agendas.Domain.Repositories;
db4b1e2cae49 Cambio del nombre de la clase Ponente a Persona
Nelo@Kenia.neluz.int
parents: 87
diff changeset
5 using AltNetHispano.Agendas.Domain.Services;
158
734d3f0853bf Manejando configuración de los publicadores con una sección propia en los .config
nelopauselli
parents: 138
diff changeset
6 using AltNetHispano.Agendas.Google;
67
c8099df941bd Implementando persistencia con NHibernate en el proyecto web
nelopauselli
parents: 50
diff changeset
7 using AltNetHispano.Agendas.Repositories.NHibernate;
110
a456eb519e23 Lanzando twitts desde el sitio con la cuenta de AltNetHispanoDESA
Nelo@Kenia.neluz.int
parents: 94
diff changeset
8 using AltNetHispano.Agendas.Twitter;
67
c8099df941bd Implementando persistencia con NHibernate en el proyecto web
nelopauselli
parents: 50
diff changeset
9 using NHibernate;
c8099df941bd Implementando persistencia con NHibernate en el proyecto web
nelopauselli
parents: 50
diff changeset
10
15
08b9e96132a5 Persistimos los eventos de la agenda
nelo@MTEySS.neluz.int
parents:
diff changeset
11
34
475be11edf56 Ajuste en los nombre de los assemblies y namespaces
nelo@MTEySS.neluz.int
parents: 24
diff changeset
12 namespace AltNetHispano.Agendas.Factories
15
08b9e96132a5 Persistimos los eventos de la agenda
nelo@MTEySS.neluz.int
parents:
diff changeset
13 {
67
c8099df941bd Implementando persistencia con NHibernate en el proyecto web
nelopauselli
parents: 50
diff changeset
14 public static class AgendaFactory
c8099df941bd Implementando persistencia con NHibernate en el proyecto web
nelopauselli
parents: 50
diff changeset
15 {
c8099df941bd Implementando persistencia con NHibernate en el proyecto web
nelopauselli
parents: 50
diff changeset
16 private static Agenda _agenda;
19
74eb4577d447 HttpContext identity provider
nelo@MTEySS.neluz.int
parents: 15
diff changeset
17
67
c8099df941bd Implementando persistencia con NHibernate en el proyecto web
nelopauselli
parents: 50
diff changeset
18 public static Agenda GetAgenda()
c8099df941bd Implementando persistencia con NHibernate en el proyecto web
nelopauselli
parents: 50
diff changeset
19 {
158
734d3f0853bf Manejando configuración de los publicadores con una sección propia en los .config
nelopauselli
parents: 138
diff changeset
20 var publicadores =
734d3f0853bf Manejando configuración de los publicadores con una sección propia en los .config
nelopauselli
parents: 138
diff changeset
21 new CompositePublicador(new IPublicador[] {new TwitterPublicador(), new BlogPublicador(), new GooglePublicador()});
734d3f0853bf Manejando configuración de los publicadores con una sección propia en los .config
nelopauselli
parents: 138
diff changeset
22
67
c8099df941bd Implementando persistencia con NHibernate en el proyecto web
nelopauselli
parents: 50
diff changeset
23 ISessionFactory sessionFactory = NhHelper.GetSessionFactory();
110
a456eb519e23 Lanzando twitts desde el sitio con la cuenta de AltNetHispanoDESA
Nelo@Kenia.neluz.int
parents: 94
diff changeset
24 return _agenda ??
a456eb519e23 Lanzando twitts desde el sitio con la cuenta de AltNetHispanoDESA
Nelo@Kenia.neluz.int
parents: 94
diff changeset
25 (_agenda =
158
734d3f0853bf Manejando configuración de los publicadores con una sección propia en los .config
nelopauselli
parents: 138
diff changeset
26 new Agenda(publicadores, new EventoRepository(sessionFactory),
200
5346c0500594 Pasando a estructura de db fija, ya no se crea automáticamente.
nelopauselli
parents: 158
diff changeset
27 new PersonaRepository(sessionFactory)));
94
db4b1e2cae49 Cambio del nombre de la clase Ponente a Persona
Nelo@Kenia.neluz.int
parents: 87
diff changeset
28 }
db4b1e2cae49 Cambio del nombre de la clase Ponente a Persona
Nelo@Kenia.neluz.int
parents: 87
diff changeset
29
db4b1e2cae49 Cambio del nombre de la clase Ponente a Persona
Nelo@Kenia.neluz.int
parents: 87
diff changeset
30 public static IPersonaRepository GetPersonaRepository()
db4b1e2cae49 Cambio del nombre de la clase Ponente a Persona
Nelo@Kenia.neluz.int
parents: 87
diff changeset
31 {
db4b1e2cae49 Cambio del nombre de la clase Ponente a Persona
Nelo@Kenia.neluz.int
parents: 87
diff changeset
32 ISessionFactory sessionFactory = NhHelper.GetSessionFactory();
db4b1e2cae49 Cambio del nombre de la clase Ponente a Persona
Nelo@Kenia.neluz.int
parents: 87
diff changeset
33 return new PersonaRepository(sessionFactory);
db4b1e2cae49 Cambio del nombre de la clase Ponente a Persona
Nelo@Kenia.neluz.int
parents: 87
diff changeset
34 }
db4b1e2cae49 Cambio del nombre de la clase Ponente a Persona
Nelo@Kenia.neluz.int
parents: 87
diff changeset
35
209
a36a76bd6ec3 Se soluciona ticket 173. Se agrega eliminación de personas siempre y cuando no esté asociada a ninguna van.
alabra
parents: 200
diff changeset
36 public static IEventoRepository GetEventoRespository()
a36a76bd6ec3 Se soluciona ticket 173. Se agrega eliminación de personas siempre y cuando no esté asociada a ninguna van.
alabra
parents: 200
diff changeset
37 {
a36a76bd6ec3 Se soluciona ticket 173. Se agrega eliminación de personas siempre y cuando no esté asociada a ninguna van.
alabra
parents: 200
diff changeset
38 ISessionFactory sessionFactory = NhHelper.GetSessionFactory();
a36a76bd6ec3 Se soluciona ticket 173. Se agrega eliminación de personas siempre y cuando no esté asociada a ninguna van.
alabra
parents: 200
diff changeset
39 return new EventoRepository(sessionFactory);
a36a76bd6ec3 Se soluciona ticket 173. Se agrega eliminación de personas siempre y cuando no esté asociada a ninguna van.
alabra
parents: 200
diff changeset
40 }
a36a76bd6ec3 Se soluciona ticket 173. Se agrega eliminación de personas siempre y cuando no esté asociada a ninguna van.
alabra
parents: 200
diff changeset
41
a36a76bd6ec3 Se soluciona ticket 173. Se agrega eliminación de personas siempre y cuando no esté asociada a ninguna van.
alabra
parents: 200
diff changeset
42 public static PersonaService GetPersonaService()
a36a76bd6ec3 Se soluciona ticket 173. Se agrega eliminación de personas siempre y cuando no esté asociada a ninguna van.
alabra
parents: 200
diff changeset
43 {
a36a76bd6ec3 Se soluciona ticket 173. Se agrega eliminación de personas siempre y cuando no esté asociada a ninguna van.
alabra
parents: 200
diff changeset
44 return new PersonaService(GetPersonaRepository(), GetEventoRespository());
a36a76bd6ec3 Se soluciona ticket 173. Se agrega eliminación de personas siempre y cuando no esté asociada a ninguna van.
alabra
parents: 200
diff changeset
45 }
67
c8099df941bd Implementando persistencia con NHibernate en el proyecto web
nelopauselli
parents: 50
diff changeset
46 }
15
08b9e96132a5 Persistimos los eventos de la agenda
nelo@MTEySS.neluz.int
parents:
diff changeset
47 }