Exemple #1
0
 public CustomersController(
     IUseCase loginUseCase,
     Presenter presenter)
 {
     this.loginUseCase = loginUseCase;
     this.presenter    = presenter;
 }
 public void Log(IUseCase useCase, IApplicationActor actor, object data)
 {
     Console.WriteLine($"\n Date and time: {DateTime.Now} \n " +
                       $"Executor: {actor.Identity} \n " +
                       $"Command: {useCase.Name} \n " +
                       $"Data: {JsonConvert.SerializeObject(data)} \n");
 }
 public AccountsController(
     IUseCase depositUseCase,
     DepositPresenter presenter)
 {
     _depositUseCase = depositUseCase;
     _presenter      = presenter;
 }
        protected virtual void CreateUseCases(UseCaseCollection useCaseCollection)
        {
            UseCaseCollectionItem helpUseCaseItem = CreateHelpCommand();

            if (helpUseCaseItem != null)
            {
                useCases.Add(helpUseCaseItem);
            }

            Assembly currentAssembly = Assembly.GetExecutingAssembly();

            IEnumerable <Assembly> assemblies = AppDomain.CurrentDomain.GetAssemblies()
                                                .Where(x => x != currentAssembly);

            foreach (Assembly assembly in assemblies)
            {
                IEnumerable <Type> useCasesTypes = assembly.GetTypes()
                                                   .Where(x => typeof(IUseCase).IsAssignableFrom(x) && !x.IsInterface && !x.IsAbstract);

                foreach (Type useCasesType in useCasesTypes)
                {
                    string name = useCasesType.Name.EndsWith("UseCase", StringComparison.InvariantCultureIgnoreCase)
                        ? useCasesType.Name.Substring(0, useCasesType.Name.Length - "UseCase".Length).ToLower()
                        : useCasesType.Name;

                    IUseCase useCase = serviceProvider.GetService(useCasesType) as IUseCase;

                    useCaseCollection.Add(name, useCase);
                }
            }
        }
Exemple #5
0
        public void ViewManagerCreateView()
        {
            #region Mock intialization

            DynamicMock useCase = new DynamicMock(typeof(IUseCase));
            DynamicMock engine  = new DynamicMock(typeof(IRegexEngine));
            DynamicMock view    = new DynamicMock(typeof(IRegexView));

            IRegexView   viewMockInstance    = (IRegexView)view.MockInstance;
            IUseCase     useCaseMockInstance = (IUseCase)useCase.MockInstance;
            IRegexEngine engineMockInstance  = (IRegexEngine)engine.MockInstance;

            #endregion


            useCase.ExpectAndReturn("CreateNewView", viewMockInstance);
            useCase.ExpectAndReturn("CreateNewEngine", engineMockInstance);
            engine.Expect("AttachView", withSameObjectAs(viewMockInstance));
            view.Expect("Init", withSameObjectAs(engineMockInstance));


            ViewManager factory = new ViewManager();
            IRegexView  newView = factory.CreateView(useCaseMockInstance);

            useCase.Verify();
            engine.Verify();
            view.Verify();

            Assert.AreSame(newView, viewMockInstance, "Returned view is not the same instance as expected");
        }
Exemple #6
0
        private Task ExecuteUseCase(string inputOperation, List <IUseCase> useCases, CancellationToken cancellationToken)
        {
            if (int.TryParse(inputOperation, out int index))
            {
                // An index was entered as input.
                if (useCases.Count >= index)
                {
                    return(useCases[index - 1].ExecuteAsync(cancellationToken));
                }
            }
            else
            {
                // Use case name was entered as input.
                IUseCase useCase = useCases.FirstOrDefault(u => string.Equals(u.Name, inputOperation, StringComparison.OrdinalIgnoreCase));
                if (useCase != null)
                {
                    return(useCase.ExecuteAsync(cancellationToken));
                }
            }

            // Invalid operation. Display valid operations.
            System.Console.WriteLine($"Invalid operation: {inputOperation}");
            DisplayRegisteredOperations(useCases);
            return(Task.CompletedTask);
        }
 public StarOverviewController(
     IUseCase addItemUsecase,
     ISaveStarItemInputPort saveItemUsecase)
 {
     this.AddItemUsecase  = addItemUsecase;
     this.SaveItemUsecase = saveItemUsecase;
 }
 public AccountsController(
     IUseCase TransferUseCase,
     TransferPresenter presenter)
 {
     _TransferUseCase = TransferUseCase;
     _presenter       = presenter;
 }
 public AccountsController(
     IUseCase getAccountDetailsUseCase,
     GetAccountDetailsPresenter presenter)
 {
     _getAccountDetailsUseCase = getAccountDetailsUseCase;
     _presenter = presenter;
 }
Exemple #10
0
 public AccountsController(
     IUseCase closeAccountUseCase,
     Presenter presenter)
 {
     _closeAccountUseCase = closeAccountUseCase;
     _presenter           = presenter;
 }
Exemple #11
0
        void Awake()
        {
            var presenter  = new BMIPresenter(bmiView);
            var repository = new PersonRepository();

            bmiUseCase = new BMIUseCase(presenter, repository);
        }
 public PostEventsController(IPostEvent postEvent, IGetEvent getEvent, IUseCase <InvitationInput> inviteUseCase)
 {
     _postEvent     = postEvent;
     _getEvent      = getEvent;
     _inviteUseCase = inviteUseCase;
     _eventFactory  = new Domain.Events.EventFactory();
 }
Exemple #13
0
 public CustomersController(
     IUseCase getCustomerDetailsUseCase,
     Presenter presenter)
 {
     _getCustomerDetailsUseCase = getCustomerDetailsUseCase;
     _presenter = presenter;
 }
 public AccountsController(
     IUseCase withdrawUseCase,
     Presenter presenter)
 {
     _withdrawUseCase = withdrawUseCase;
     _presenter       = presenter;
 }
Exemple #15
0
 public LoggingUseCaseDecorator(
     IUseCase <TRequest, TResponse> decoratee,
     ILogger logger)
 {
     this.decoratee = decoratee;
     this.logger    = logger;
 }
Exemple #16
0
 public AccountsController(
     IUseCase refundUseCase,
     RefundPresenter presenter)
 {
     _refundUseCase = refundUseCase;
     _presenter     = presenter;
 }
 public CustomersController(
     IUseCase registerUseCase,
     Presenter presenter)
 {
     _registerUseCase = registerUseCase;
     _presenter       = presenter;
 }
Exemple #18
0
        public void Setup()
        {
            CreneauDto creneau = new CreneauDto
            {
                date  = new DateTime(2019, 10, 9, 10, 00, 00),
                duree = TimeSpan.FromHours(2)
            };

            CandidatDto candidat = new CandidatDto
            {
                experience = TimeSpan.FromDays(500),
                name       = "Willy",
                specialite = Specialite.csharp
            };

            RecruteurDto recruteur = new RecruteurDto
            {
                experience = TimeSpan.FromDays(5000),
                name       = "Yohan",
                specialite = Specialite.csharp
            };

            SalleDto salle = new SalleDto {
                name = "kilimanjaro", statut = SalleStatut.Libre
            };

            genMock = new Mock <IGenerateur <int> >();
            genMock.Setup(gen => gen.GetNewId()).Returns(1);
            planifierUnEntretien = new PlanifierUnEntretien(genMock.Object, creneau, candidat, recruteur, salle);
        }
Exemple #19
0
        private Task ExecuteUseCase(IUseCase useCase, CancellationToken cancellationToken = default(CancellationToken))
        {
            if (useCase == null)
            {
                throw new ArgumentNullException(nameof(useCase));
            }

            return(useCase.ExecuteAsync(cancellationToken));
        }
        public IRegexView CreateView(IUseCase useCaseInstance)
        {
            IRegexView newView = useCaseInstance.CreateNewView();
            IRegexEngine engine = useCaseInstance.CreateNewEngine();
            engine.AttachView(newView);
            newView.Init(engine);

            return newView;
        }
Exemple #21
0
        public IRegexView CreateView(IUseCase useCaseInstance)
        {
            IRegexView   newView = useCaseInstance.CreateNewView();
            IRegexEngine engine  = useCaseInstance.CreateNewEngine();

            engine.AttachView(newView);
            newView.Init(engine);

            return(newView);
        }
Exemple #22
0
 public void Log(IUseCase useCase, IApplicationActor actor, object data)
 {
     using (System.IO.StreamWriter file = new System.IO.StreamWriter(_pathToFileLogger, true))
     {
         file.WriteLine($"\n Date and time: {DateTime.Now} \n " +
                        $"Executor: {actor.Identity} \n " +
                        $"Command: {useCase.Name} \n " +
                        $"Data: {JsonConvert.SerializeObject(data)} \n");
     }
 }
        public DailyAppUsageViewModel(IUseCase <AppDurationOverview> useCase,
                                      Mediator mediator)
        {
            this.useCase  = useCase;
            this.mediator = mediator;

            appsList = new TaskRunner <IEnumerable <AppDurationOverview> >(useCase.Get, this);

            this.mediator.Register(MediatorMessages.REFRESH_LOGS, new Action(appsList.Reload));
        }
        public void Execute(IMenuCommand command)
        {
            // A selection of starting points:
            // IDiagram diagram = this.DiagramContext.CurrentDiagram;
            Microsoft.VisualStudio.ArchitectureTools.Extensibility.Presentation.IUseCaseDiagram usercaseDiagram = DiagramContext.CurrentDiagram as IUseCaseDiagram;
            var dslDiagram = DiagramContext.CurrentDiagram.GetObject <Microsoft.VisualStudio.Modeling.Diagrams.Diagram>();

            IEnumerable <IShape <IUseCase> > shapelist = usercaseDiagram.GetSelectedShapes <IUseCase>();

            var selectedShapes = DiagramContext.CurrentDiagram.GetSelectedShapes <IClassifier>();

            if (selectedShapes.Count() > 0)
            {
                IClassifier firstElement = selectedShapes.First().Element;
            }


            foreach (IShape shape in shapelist)
            {
                string strPrint = string.Format("xpos:{0};ypos:{1};color:{2};width:{3};height:{4}",
                                                shape.XPosition, shape.YPosition, shape.Color, shape.Width, shape.Height);
                // shape.GetObject<Shape>();
                // IElement element = shape.Element;
                IShape <IUseCase> classShape = shape.ToIShape <IUseCase>();
                if (classShape != null)
                {
                    IUseCase aUseCase = classShape.Element;
                    //  如果节点没有子节点,说明是终节点,此处应该弹出菜单,跳转至目标位置
                    IEnumerable <IShape <IUseCase> > nodeChilds = shape.GetChildShapes <IUseCase>();
                    if (nodeChilds.Count() == 0)
                    {
                        SetHtmlSql(aUseCase);
                    }
                }

                // aClass.
                IElement ele = shape.GetElement();

                // string str = ele.OwnedComments.ToString();
                IShape <Microsoft.VisualStudio.Uml.UseCases.IUseCase> cc = shape.ToIShape <IUseCase>();
            }

            //foreach (IShape<IUseCase> shape in usercaseDiagram.GetChildShapes<IUseCase>())
            //{
            //    IUseCase displayedElement = shape.Element;
            //}

            // IPackage linkedPackage = DiagramContext.CurrentDiagram..Element as IPackage;


            IModelStore modelStore = usercaseDiagram.ModelStore;
            IModel      model      = modelStore.Root;
            //foreach (IElement element in modelStore.AllInstances<IClass>())
            //{ }
        }
 public void Log(IUseCase useCase, IApplicationActor actor, object useCaseData)
 {
     _context.UseCaseLogs.Add(new Domain.UseCaseLog
     {
         Actor        = actor.Identity,
         Podaci       = JsonConvert.SerializeObject(useCaseData),
         Datum        = DateTime.UtcNow,
         UseCaseNaziv = useCase.Name
     });
     _context.SaveChanges();
 }
Exemple #26
0
 public void Log(IUseCase useCase, IActorInApp actor, object useCaseData)
 {
     context.UseCaseLogs.Add(new UseCaseLog
     {
         Actor        = actor.Identifikator,
         Datum        = DateTime.UtcNow,
         Podaci       = JsonConvert.SerializeObject(useCaseData),
         NazivUseCase = useCase.Opis
     });
     context.SaveChanges();
 }
Exemple #27
0
 public void Log(IUseCase useCase, IApplicationActor actor, object useCaseData)
 {
     _context.UseCaseLogs.Add(new Domain.UseCaseLog
     {
         Date      = DateTime.UtcNow,
         Data      = JsonConvert.SerializeObject(useCaseData),
         UseCaseId = useCase.Id,
         UserId    = actor.Id
     });
     _context.SaveChanges();
 }
Exemple #28
0
 public void Log(IUseCase useCase, IApplicationActor actor, object UseCaseData)
 {
     Context.UseCaseLogs.Add(new UseCaseLogs
     {
         Actor       = actor.Identity,
         Data        = JsonConvert.SerializeObject(UseCaseData),
         Date        = DateTime.Now,
         UseCaseName = useCase.Name
     });
     Context.SaveChanges();
 }
Exemple #29
0
 public Startup(
     IUseCase <Core.Boundaries.AddTodoItem.Request> addTodoItem,
     TodoList.Core.Boundaries.FinishTodoItem.IUseCase finishTodoItem,
     TodoList.Core.Boundaries.ListTodoItems.IUseCase listTodoItems,
     IUseCase <TodoList.Core.Boundaries.UpdateTitle.Request> updateTitle)
 {
     _addTodoItem    = addTodoItem;
     _finishTodoItem = finishTodoItem;
     _listTodoItems  = listTodoItems;
     _updateTitle    = updateTitle;
 }
        public void Log(IUseCase useCase, IApplicationActor actor, object data)
        {
            _context.UseCaseLogs.Add(new UseCaseLog
            {
                Date        = DateTime.UtcNow,
                UseCaseName = useCase.Name,
                Data        = JsonConvert.SerializeObject(data),
                Actor       = actor.Identity,
            });

            _context.SaveChanges();
        }
        public void Log(IUseCase useCase, IApplicationActor actor, object data)
        {
            _context.UseCaseLoggers.Add(new Domain.UseCaseLogger
            {
                Actor    = actor.Identity,
                UseCase  = useCase.Name,
                Data     = JsonConvert.SerializeObject(data),
                DateTime = DateTime.Now
            });

            _context.SaveChanges();
        }
        internal void BuildDetailsForUseCase(IUseCase useCase, ISolutionBuilderViewModel solutionBuilderModel)
        {
            var application = useCase.As<IProductElement>().Root.As<IApplication>();

            this.CleanDetails();

            // Endpoints
            this.CreateEndpointsUseCasePanel(application, solutionBuilderModel, useCase, 0);

            // Components
            this.CreateComponentsForUseCasePanel(solutionBuilderModel, useCase, 1);

            // Commands
            this.CreateCommandsForUseCasePanel(solutionBuilderModel, useCase, 2);

            // Events
            this.CreateEventsForUseCasePanel(solutionBuilderModel, useCase, 3);
        }
 private void CreateEndpointsUseCasePanel(IApplication application, ISolutionBuilderViewModel solutionBuilderModel, IUseCase useCase, int position)
 {
     var endpointsVM = new InnerPanelViewModel();
     endpointsVM.Title = "Deployed to the following Endpoints";
     endpointsVM.Items.Add(new InnerPanelTitle
     {
         Product = useCase.As<IProductElement>(),
         Text = "Started In",
         ForceText = true,
         MenuFilters = new string[] { "Add Started By Endpoint" },
         IconPath = solutionBuilderModel.FindNodeFor(useCase.Parent.As<IProductElement>()).IconPath
     });
     foreach (var endpoint in useCase.EndpointsStartingUseCases)
     {
         endpointsVM.Items.Add(new InnerPanelItem { Product = endpoint.As<IProductElement>(), Text = endpoint.As<IProductElement>().InstanceName });
     }
     endpointsVM.Items.Add(new InnerPanelTitle
     {
         Product = useCase.As<IProductElement>(),
         Text = "Goes through",
         ForceText = true,
         MenuFilters = new string[] { },
         IconPath = solutionBuilderModel.FindNodeFor(useCase.Parent.As<IProductElement>()).IconPath
     });
     foreach (var endpoint in useCase.RelatedEndpoints)
     {
         endpointsVM.Items.Add(new InnerPanelItem { Product = endpoint.As<IProductElement>(), Text = endpoint.As<IProductElement>().InstanceName });
     }
     this.SetPanel(position, new LogicalView(new LogicalViewModel(solutionBuilderModel, endpointsVM)));
 }
 private void CreateEventsForUseCasePanel(ISolutionBuilderViewModel solutionBuilderModel, IUseCase useCase, int position)
 {
     var events = useCase.RelatedEvents;
     var eventsVM = new InnerPanelViewModel();
     eventsVM.Title = "Events";
     var eventsNode = new InnerPanelTitle
     {
         Product = useCase.As<IProductElement>(),
         Text = "Events",
         ForceText = true,
         MenuFilters = new string[] { "Add Event" },
         IconPath = solutionBuilderModel.FindNodeFor(useCase.Parent.As<IProductElement>()).IconPath
     };
     eventsVM.Items.Add(eventsNode);
     foreach (var service in events.Select(c => c.Parent.Parent.Parent).Distinct())
     {
         eventsVM.Items.Add(new InnerPanelTitle { Product = service.As<IProductElement>(), Text = service.InstanceName });
         foreach (var @event in events.Where(c => c.Parent.Parent.Parent == service))
         {
             eventsVM.Items.Add(new InnerPanelItem { Product = @event.As<IProductElement>(), Text = @event.InstanceName });
         }
     }
     this.SetPanel(position, new LogicalView(new LogicalViewModel(solutionBuilderModel, eventsVM)));
 }