コード例 #1
0
ファイル: Bootstrapper.cs プロジェクト: jume2003/SK800
        protected override void ConfigureIoC(IStyletIoCBuilder builder)
        {
            base.ConfigureIoC(builder);

            builder.Bind <ISqlMapper>().ToInstance(EntityMapper);
            builder.Bind <IJudgerParamerService>().To <JudgerParamerService>().InSingletonScope();
            builder.Bind <IUserService>().To <UserService>().InSingletonScope();
            builder.Bind <IUserDAO>().To <UserDAO>().InSingletonScope();

            builder.Bind <IGelService>().To <GelService>().InSingletonScope();
            builder.Bind <IGELDAO>().To <GELDAO>().InSingletonScope();

            builder.Bind <IBJService>().To <BJService>().InSingletonScope();
            builder.Bind <IBJDAO>().To <BJDAO>().InSingletonScope();

            builder.Bind <ITraceService>().To <TraceService>().InSingletonScope();
            builder.Bind <ITraceDAO>().To <TraceDAO>().InSingletonScope();

            builder.Bind <IResultService>().To <ResultService>().InSingletonScope();
            builder.Bind <IResultDAO>().To <ResultDAO>().InSingletonScope();

            builder.Bind <ILogicService>().To <LogicService>().InSingletonScope();
            builder.Bind <ILogicDAO>().To <LogicDAO>().InSingletonScope();

            builder.Bind <IPlcBjParamService>().To <PlcBjParamService>().InSingletonScope();
            builder.Bind <IPlcBjParamDAO>().To <PlcBjParamDAO>().InSingletonScope();

            builder.Bind <AbstractScaner>().WithKey("FX8090").To <FX8090>().InSingletonScope();
            builder.Bind <AbstractScaner>().WithKey("BL1300").To <BL1300>().InSingletonScope();
            builder.Bind <AbstractScaner>().WithKey("FM316").To <FM316>().InSingletonScope();
            builder.Bind <ScanDevice>().To <ScanDevice>().InSingletonScope();

            builder.Bind <AbstractCanComm>().To <ZLGCanComm>().InSingletonScope();
            builder.Bind <OtherPart>().ToFactory <OtherPart>(c =>
            {
                var bjService = c.Get <IPlcBjParamService>();
                OtherPart op  = bjService.LoadFromJson <OtherPart>();
                op            = op ?? new OtherPart();
                return(op);
            }).InSingletonScope();

            builder.Bind <AbstractComm>().WithKey("PLC").ToFactory <Communicater>(c =>
            {
                var op   = c.Get <OtherPart>();
                var comm = new Communicater(op.IpAddress, op.Port);
                return(comm);
            }).InSingletonScope();
            //builder.Bind<AbstractComm>().WithKey("PCB").ToFactory<PcbComm>(c =>
            //{
            //    var op = c.Get<OtherPart>();
            //    var comm = new PcbComm(op.SencondIpAddress, op.SecondPort);
            //    return comm;
            //}).InSingletonScope();

            builder.Bind <PiercerDevice>().ToFactory <PiercerDevice>(c =>
            {
                var bjService = c.Get <IPlcBjParamService>();
                Piercer Pie   = bjService.LoadFromJson <Piercer>();
                Pie           = Pie ?? new Piercer(true);
                return(new PiercerDevice(c.Get <AbstractCanComm>(), Pie));
            }).InSingletonScope();
            builder.Bind <CentrifugeDevice>().ToFactory <CentrifugeDevice>(c =>
            {
                var bjService            = c.Get <IPlcBjParamService>();
                CentrifugeSystem CentSys = bjService.LoadFromJson <CentrifugeSystem>();
                CentSys = CentSys ?? new CentrifugeSystem(true);
                return(new CentrifugeDevice(c.Get <AbstractCanComm>(), CentSys));
            }).InSingletonScope();
            builder.Bind <CentrifugeMrg>().ToFactory <CentrifugeMrg>(c =>
            {
                var bjService = c.Get <IPlcBjParamService>();
                var cen_datas = bjService.LoadFromJson <CentrifugeData>();
                cen_datas     = cen_datas ?? CentrifugeData.Create();
                return(new CentrifugeMrg(c.Get <AbstractCanComm>(), cen_datas));
            }).InSingletonScope();

            builder.Bind <GelWarehouseDevice>().ToFactory <GelWarehouseDevice>(c =>
            {
                var bjService        = c.Get <IPlcBjParamService>();
                GelWarehouse GelWare = bjService.LoadFromJson <GelWarehouse>();
                GelWare = GelWare ?? new GelWarehouse(true);
                return(new GelWarehouseDevice(c.Get <AbstractCanComm>(), GelWare));
            }).InSingletonScope();
            builder.Bind <MachineHandDevice>().ToFactory <MachineHandDevice>(c =>
            {
                var bjService    = c.Get <IPlcBjParamService>();
                MachineHand Hand = bjService.LoadFromJson <MachineHand>();
                Hand             = Hand ?? new MachineHand(true);
                Hand.CheckNull();
                return(new MachineHandDevice(c.Get <AbstractCanComm>(), Hand));
            }).InSingletonScope();
            builder.Bind <CouveuseMixerDevice>().ToFactory <CouveuseMixerDevice>(c =>
            {
                var bjService    = c.Get <IPlcBjParamService>();
                CouveuseMixer CM = bjService.LoadFromJson <CouveuseMixer>();
                CM = CM ?? new CouveuseMixer(true);
                CM.checkNull();
                return(new CouveuseMixerDevice(c.Get <AbstractCanComm>(), CM));
            }).InSingletonScope();
            builder.Bind <OtherPartDevice>().ToFactory <OtherPartDevice>(c =>
            {
                var op = c.Get <OtherPart>();
                return(new OtherPartDevice(c.Get <AbstractCanComm>(), op));
            }).InSingletonScope();
            builder.Bind <InjectorDevice>().ToFactory <InjectorDevice>(c =>
            {
                var bjService     = c.Get <IPlcBjParamService>();
                Injector Injector = bjService.LoadFromJson <Injector>();
                Injector          = Injector ?? new Injector(Constants.EntercloseCount);
                Injector.checkNull();
                return(new InjectorDevice(c.Get <AbstractCanComm>(), Injector));
            }).InSingletonScope();
            builder.Bind <CameraDevice>().To <CameraDevice>().InSingletonScope();
        }
コード例 #2
0
ファイル: PiercerDevice.cs プロジェクト: jume2003/SK800
 public PiercerDevice(AbstractCanComm CanComm, Piercer Pie)
 {
     this.CanComm = CanComm;
     this.Pie     = Pie;
 }