示例#1
0
        //Prilikom izvrsavanje komande mozemo da definisemo preprocessing i postprocessing
        public void ExecuteCommand <Request>(ICommend <Request> command, Request request)
        {
            //1. Ispisivanje poruke ko je i koju komandu izvrsio (preprocessing)
            logger.Log(command, actor, request);

            if (!actor.AllowedUseCases.Contains(command.Id))
            {
                throw new UnauthorizedException(command, actor);
            }

            //2. Samo izvrsavanje komande
            command.Execute(request);
        }
示例#2
0
 /// <summary>
 /// 添加命令
 /// </summary>
 /// <param name="commend"></param>
 public void AddCommand(ICommend commend)
 {
     AllCommand.Add(commend);
 }