コード例 #1
0
 // Additional constructor to allow dependency injection
 public BuildingController(string id, ILightManager iLightManager, IFireAlarmManager iFireAlarmManager, IDoorManager iDoorManager, IWebService iWebService, IEmailService iEmailService)
 {
     buildingID       = id.ToLower();
     lightManager     = iLightManager;
     doorManager      = iDoorManager;
     fireAlarmManager = iFireAlarmManager;
     webservice       = iWebService;
     emailService     = iEmailService;
 }
コード例 #2
0
            public ManagedDoorCollectionHandler(
                IDoorManager doorManager,
                ILogger logger,
                IManagedDoorSettingsProvider managedDoorSettingsProvider)
            {
                _doorManager = doorManager;
                _logger      = logger;
                _managedDoorSettingsProvider = managedDoorSettingsProvider;

                _collectDoorOperationPool = new ObjectPool <CollectDoorOperation>(onFinished
                                                                                  => new CollectDoorOperation(this, onFinished));
            }
コード例 #3
0
            public ProgramReloadHandler(
                IBackgroundWorker backgroundWorker,
                IBlockCollectionManager blockCollectionManager,
                IDoorManager doorManager,
                IProgramSettingsProvider programSettingsProvider)
            {
                _backgroundWorker        = backgroundWorker;
                _blockCollectionManager  = blockCollectionManager;
                _programSettingsProvider = programSettingsProvider;

                _manageDoorsOperationConstructor = doorManager.MakeManageDoorsOperation;
            }
コード例 #4
0
        public BuildingController(string id, ILightManager iLightManager, IFireAlarmManager iFireAlarmManager,
                                  IDoorManager iDoorManager, IWebService iWebService, IEmailService iEmailService)
        {
            string idLower = id.ToLower();

            buildingID   = idLower;
            currentState = "out of hours";
            lightManager = iLightManager;
            fireAlarm    = iFireAlarmManager;
            doorManager  = iDoorManager;
            webService   = iWebService;
            emailService = iEmailService;
        }
コード例 #5
0
 public ProgramManager(
     IBackgroundWorker backgroundWorker,
     IConfigManager configManager,
     IDoorManager doorManager,
     IEchoProvider echoProvider,
     IMyGridProgramRuntimeInfo gridProgramRuntimeInfo,
     ILogger logger)
 {
     _backgroundWorker       = backgroundWorker;
     _configManager          = configManager;
     _doorManager            = doorManager;
     _echoProvider           = echoProvider;
     _gridProgramRuntimeInfo = gridProgramRuntimeInfo;
     _logger = logger;
 }
コード例 #6
0
        //(L3R1)
        public BuildingController(string id, ILightManager iLightManager,
                                  IFireAlarmManager iFireAlarmManager,
                                  IDoorManager iDoorManager, IWebService iWebService,
                                  IEmailService iEmailService)
        {
            checkIdIsWithinLimits(id);

            this.buildingID        = id.ToLower();
            this._lightManager     = iLightManager;
            this._fireAlarmManager = iFireAlarmManager;
            this._doorManager      = iDoorManager;
            this._webService       = iWebService;
            this._emailService     = iEmailService;

            this.currentState = STATE_OUT_OF_HOURS; //(L1R2)

            ThrowExcpetionIfAnObjectIsNull();       //(L3R1)

            ThrowExceptionStateInvalid();           //(L2R3)

            ThrowExceptionIfIdIsNull(id);           // (L1R1)
        }
        IDoorManager GetMockDoorManager()
        {
            IDoorManager stubDoorManager = Substitute.For <IDoorManager>();

            return(stubDoorManager);
        }