Esempio n. 1
0
        public LifeCycleManager(IAuthenticationProvider authenticationProvider, String entityType)
        {
            Debug.WriteLine("Create new instance of LifeCycleManager for entityType '{0}'", entityType);
            _entityType = entityType;

            lock (_lock)
            {
                if (null == _staticStateMachineConfigLoader)
                {
                    LoadAndComposeParts();
                    _staticStateMachineConfigLoader = _stateMachineConfigLoader;
                    _staticCalloutExecutor          = _calloutExecutor;
                }
                else
                {
                    _stateMachineConfigLoader = _staticStateMachineConfigLoader;
                    _calloutExecutor          = _staticCalloutExecutor;
                }
            }
            _coreService = new CumulusCoreService.Core(new Uri(ConfigurationManager.AppSettings[CORE_ENDPOINT_URL_KEY]));
            _coreService.BuildingRequest += CoreServiceOnBuildingRequest;

            _entityController = new EntityController(authenticationProvider);
            _stateMachine     = new StateMachine.StateMachine();
            ConfigureStateMachine(entityType);
        }
Esempio n. 2
0
        internal SnipInsightViewModel(Dictionary <string, Action> actions)
        {
            StateMachine = new StateMachine.StateMachine(actions);

            CaptureCommand      = StateMachine.CreateCommand(SnipInsightTrigger.CaptureScreen);
            QuickCaptureCommand = StateMachine.CreateCommand(SnipInsightTrigger.QuickSnip);
            PhotoCommand        = StateMachine.CreateCommand(SnipInsightTrigger.CaptureCamera);
            WhiteboardCommand   = StateMachine.CreateCommand(SnipInsightTrigger.Whiteboard);
            WhiteboardForCurrentWindowCommand = StateMachine.CreateCommand(SnipInsightTrigger.WhiteboardForCurrentWindow);
            RecordCommand                 = StateMachine.CreateCommand(SnipInsightTrigger.Record);
            PauseCommand                  = StateMachine.CreateCommand(SnipInsightTrigger.Pause);
            StopCommand                   = StateMachine.CreateCommand(SnipInsightTrigger.Stop);
            PlayCommand                   = StateMachine.CreateCommand(SnipInsightTrigger.TogglePlayStop);
            ExitCommand                   = StateMachine.CreateCommand(SnipInsightTrigger.Exit);
            ShareLinkCommand              = StateMachine.CreateCommand(SnipInsightTrigger.ShareLink);
            ShareEmbedCommand             = StateMachine.CreateCommand(SnipInsightTrigger.ShareEmbed);
            ShareEmailCommand             = StateMachine.CreateCommand(SnipInsightTrigger.ShareEmail);
            ShareSendToOneNoteCommand     = StateMachine.CreateCommand(SnipInsightTrigger.ShareSendToOneNote);
            SaveCommand                   = StateMachine.CreateCommand(SnipInsightTrigger.Save);
            CopyCommand                   = StateMachine.CreateCommand(SnipInsightTrigger.Copy);
            DeleteCommand                 = StateMachine.CreateCommand(SnipInsightTrigger.Delete);
            ShowMainWindowCommand         = StateMachine.CreateCommand(SnipInsightTrigger.ShowMainWindow); // Tool Window used to show main window for lib.
            ShowLibraryCommand            = StateMachine.CreateCommand(SnipInsightTrigger.ShowLibraryPanel);
            ShowSettingsCommand           = StateMachine.CreateCommand(SnipInsightTrigger.ShowSettingsPanel);
            MicrophoneOptionsCommand      = StateMachine.CreateCommand(SnipInsightTrigger.ShowMicrophoneOptions);
            DeleteLibraryItemsCommand     = new DelegateCommand(actions[ActionNames.DeleteLibraryItems]);
            DoImageInsightsCommand        = StateMachine.CreateCommand(SnipInsightTrigger.DoImageInsights);
            ShowImageResultsWindowCommand = StateMachine.CreateCommand(SnipInsightTrigger.ShowImageResultsWindow);
            ShowAIPanelCommand            = StateMachine.CreateCommand(SnipInsightTrigger.ShowAIPanel);
            HideAIPanelCommand            = StateMachine.CreateCommand(SnipInsightTrigger.HideAIPanel);

            CloseMainWindowCommand = new DelegateCommand(actions[ActionNames.CloseMainWindow]); // Hide + EditingWindowClosed Trigger
        }
Esempio n. 3
0
        /// <summary>
        /// StateIterator constructor
        /// </summary>
        /// <param name="stateMachine">Instance of state machine.</param>
        /// <param name="filePath">Full path of the rule file.</param>
        public StateIterator(StateMachine.StateMachine <T> stateMachine, string filePath)
        {
            // TODO: Use Factory Pattern to generate this interpreter instance
            rulesInterpreter = new SCXMLInterpreter();
            rulesInterpreter.LoadRuleFile(filePath);
            rulesInterpreter.OnEvent(new OnDataEvent(this));

            this.stateMachine = stateMachine;
            this.iterator     = this.GetEnumerator();
        }
        public LifeCycleManager(IAuthenticationProvider authenticationProvider, String entityType)
        {
            Debug.WriteLine("Create new instance of LifeCycleManager for entityType '{0}'", entityType);
            _entityType = entityType;

            lock (_lock)
            {
                if (null == _staticStateMachineConfigLoader)
                {
                    LoadAndComposeParts();
                    _staticStateMachineConfigLoader = _stateMachineConfigLoader;
                    _staticCalloutExecutor = _calloutExecutor;
                }
                else
                {
                    _stateMachineConfigLoader = _staticStateMachineConfigLoader;
                    _calloutExecutor = _staticCalloutExecutor;
                }
            }
            _coreService = new CumulusCoreService.Core(new Uri(ConfigurationManager.AppSettings[CORE_ENDPOINT_URL_KEY]));
            _coreService.BuildingRequest += CoreServiceOnBuildingRequest;

            _entityController = new EntityController(authenticationProvider);
            _stateMachine = new StateMachine.StateMachine();
            ConfigureStateMachine(entityType);
        }