コード例 #1
0
 public OperationEntry(
     string parentComponentInstanceName,
     string name,
     OperationStateMachine innerOperation,
     Maybe <string> dependencyName,
     OperationStateMachine operationStateMachine)
 {
     ParentComponentInstanceName = parentComponentInstanceName;
     Name                  = name;
     InnerOperation        = innerOperation;
     DependencyName        = dependencyName;
     OperationStateMachine = operationStateMachine;
 }
        private OperationViewModel OperationViewModelFor(
            OperationEntry operationEntry,
            OperationPropertiesViewModelBuilder operationPropertiesViewModelBuilder,
            OperationStateMachine defaultOperationStateMachine)
        {
            var operationViewModelFor = new OperationViewModel(
                operationEntry.Name,
                operationEntry.DependencyName,
                operationEntry.ParentComponentInstanceName,
                AllowingCommandExecution(),
                operationPropertiesViewModelBuilder,
                defaultOperationStateMachine);

            return(operationViewModelFor);
        }
        public OperationViewModel(string name, Maybe <string> maybeDependencyName, string operationEntryParentComponentInstanceName, OperationCommandFactory operationCommandFactory, OperationPropertiesViewModelBuilder operationPropertiesViewModelBuilder, OperationStateMachine operationStateMachine)
        {
            Name = name;
            ComponentInstanceName    = operationEntryParentComponentInstanceName;
            _propertyListBuilder     = operationPropertiesViewModelBuilder;
            _maybeDependencyName     = maybeDependencyName;
            _operationCommandFactory = operationCommandFactory;
            _operationStateMachine   = operationStateMachine;

            if (_maybeDependencyName.HasValue)
            {
                _operationStateMachine.Initial(this);
            }
            else
            {
                _operationStateMachine.Ready(this);
            }
        }
コード例 #4
0
 public void Add(string componentInstanceName, string name, OperationStateMachine operation, Maybe <string> dependencyName)
 {
     _operations.Add(OperationEntry.With(componentInstanceName, name, operation, dependencyName, operation));
 }
コード例 #5
0
 public static OperationEntry With(string componentInstanceName, string name, OperationStateMachine operation, Maybe <string> dependencyName, OperationStateMachine operationStateMachine)
 {
     return(new OperationEntry(componentInstanceName, name, operation, dependencyName, operationStateMachine));
 }
        public OperationViewModel CreateOperationViewModel(OperationEntry operationEntry, OperationStateMachine operationStateMachine)
        {
            //bug move it elsewhere
            var propertySetBuilder = _propertySetBuilderFactory.CreateNewPropertySet(operationEntry.Name);
            var operationPropertiesViewModelBuilder =
                new OperationPropertiesViewModelBuilder(propertySetBuilder);

            operationEntry.AddParametersTo(operationPropertiesViewModelBuilder);
            operationPropertiesViewModelBuilder.RetrieveList();

            var operationViewModel = OperationViewModelFor(
                operationEntry,
                operationPropertiesViewModelBuilder, operationEntry.OperationStateMachine);

            return(operationViewModel);
        }
 public void Register(OperationStateMachine defaultOperationStateMachine)
 {
     _operationMachinesByPluginView[defaultOperationStateMachine] = defaultOperationStateMachine;
 }