public IUnityContainer GetInstance() { UnityContainer container = new UnityContainer(); container.AddNewExtension <Interception>(); Interceptor interceptor = new Interceptor(new InterfaceInterceptor()); InterceptionBehavior interceptionBehavior = CreateInterceptionBehavior(); // Envios container.RegisterType <IEnvioRepository, EnvioRepository>(interceptor, interceptionBehavior); container.RegisterType <IEnvioService, EnvioService>(interceptor, interceptionBehavior); // Paquetes container.RegisterType <IPaqueteRepository, PaqueteRepository>(interceptor, interceptionBehavior); container.RegisterType <IPaqueteService, PaqueteService>(interceptor, interceptionBehavior); // Conversores PaqueteConversor paqueteConversor = new PaqueteConversor(); EnvioConversor envioConversor = new EnvioConversor(paqueteConversor); container.RegisterInstance(typeof(PaqueteConversor), paqueteConversor); container.RegisterInstance(typeof(EnvioConversor), envioConversor); // dbFactory container.RegisterType <IPaqDBFactory, PaqDBFactory>(); return(container); }
public PaqueteRepository(PaqueteConversor paqueteConversor, IPaqDBFactory dbFactory) { this.paqueteConversor = paqueteConversor; this.dbFactory = dbFactory; }