public ShellViewModel(
            IEventAggregator eventAggregator,
            SocketClient socketClient,
            RobotCommand moveCommand,
            ControllerClass controllerClass
            )
        {
            _socketClient    = socketClient;
            _dashboardClient = new SocketClient(eventAggregator);

            _roboServer = new SocketServer(eventAggregator);

            _robotCommand    = moveCommand;
            _controllerClass = controllerClass;

            _eventAggregator = eventAggregator;
            _eventAggregator.Subscribe(this);

            _controllerClass.StartController();

            _serial       = new SerialCommunication(eventAggregator);
            _BTConnection = new BluetoothConnection(eventAggregator);

            ComPortList       = SerialPort.GetPortNames();
            BaudRateList      = DataLists.GetBaudRates();
            MotorStepTypeList = DataLists.GetStepTypes();
        }
Esempio n. 2
0
        internal static void LoadControllerClasses() // only used in unit testing
        {
            _controllerTypesByName = new Dictionary <string, ControllerClass>(StringComparer.OrdinalIgnoreCase);
            _viewComponentsByName  = new Dictionary <string, ControllerClass>(StringComparer.OrdinalIgnoreCase);
            _controllerTypesByType = new Dictionary <Type, ControllerClass>();

            List <Type> controllerTypes = new List <Type>();

            foreach (Assembly assembly in _registeredAssemblies)
            {
                controllerTypes.AddRange(TypeHelper.FindCompatibleTypes(assembly, typeof(Controller)));
            }

            foreach (Type type in controllerTypes)
            {
                ControllerClass controllerClass = new ControllerClass(type);

                if (controllerClass.IsViewComponent)
                {
                    _viewComponentsByName.Add(controllerClass.Name, controllerClass);
                }
                else
                {
                    _controllerTypesByName.Add(controllerClass.Name, controllerClass);
                    _controllerTypesByType.Add(type, controllerClass);

                    foreach (Route route in controllerClass.Routes)
                    {
                        Router.InsertRoute(route);
                    }
                }
            }
        }
Esempio n. 3
0
        static void Main()
        {
            //userAuthenticate = System.Security.Principal.WindowsIdentity.GetCurrent().IsAuthenticated;

            if (IsAdministrator())
            {
                if (ControllerClass.PathConnectorVerify())
                {
                    if (EntryDocument.InstallEntryVerify())
                    {
                        Application.EnableVisualStyles();
                        Application.SetCompatibleTextRenderingDefault(false);
                        Application.Run(new StartPage());
                    }
                    else
                    {
                        Application.Exit();
                    }
                }
                else
                {
                    MessageBox.Show("Connector service não está instalado!" + " Não é possível prosseguir.", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }

            else
            {
                MessageBox.Show("O usuário da sessão atual não possui direitos de administrador para realizar a instalação." +
                                " Não é possível prosseguir.", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Error);

                Application.Exit();
            }
        }
Esempio n. 4
0
        public void Test_Controller_Worker_Stop()
        {
            var mockRepository = new Mock <IRepository>();
            var mockView       = new Mock <IView>();

            var controller = new ControllerClass(mockView.Object, mockRepository.Object);

            controller.Stop();
            mockView.Verify(m => m.DisableStopButton(), Times.AtLeast(1));
            mockView.Verify(m => m.EnableStartButton(), Times.AtLeast(1));
        }
Esempio n. 5
0
        public void BookTest()
        {
            try
            {
                ControllerClass controller = new ControllerClass();

                //Author
                controller.AddAuthor("Allah", "Jahid");
                var sAuthor = controller.FindAuthors("Jahid");
                Assert.AreEqual(sAuthor.Count(), 1, "Auhtor not found");

                Assert.AreEqual("Allah", sAuthor[0].Name);
                Assert.AreEqual("Jahid", sAuthor[0].Sorname);

                //Book
                controller.AddBook(sAuthor[0].ItemId, "TestBook", 1995);
                var sBook = controller.FindBooks("Jahid");
                Assert.AreEqual(sBook.Count(), 1, "Book not found");

                Assert.AreEqual("TestBook", sBook[0].Name);
                Assert.AreEqual(1995, sBook[0].Year);

                //Book Copy
                controller.AddCopy(sBook[0].ItemId, "TestBookCopy1");
                var sBookCopy = controller.FindCopies("TestBookCopy1");
                Assert.AreEqual(sBookCopy.Count(), 1, "Book Copy not found");

                Assert.AreEqual(sBook[0].ItemId, sBookCopy[0].Book);
                Assert.AreEqual("TestBookCopy1", sBookCopy[0].ID);

                //Reader
                controller.AddReader("John", "Smith", "Japan, Tokyo 12, 5", 0960644445);
                var sReader = controller.FindReaders("John");
                Assert.AreEqual(sReader.Count(), 1, "Reader not found");

                Assert.AreEqual(sReader[0].Name, "John");
                Assert.AreEqual(sReader[0].Sorname, "Smith");
                Assert.AreEqual(sReader[0].Adress, "Japan, Tokyo 12, 5");
                Assert.AreEqual(sReader[0].TelNumber, 0960644445);

                //Renting book
                controller.RentBook(sBookCopy[0].ItemId, sReader[0].ItemId);
                Assert.AreEqual(sBookCopy[0].OnHand, sReader[0].ItemId);

                //Return book
                controller.ReturnBook(sBookCopy[0].ItemId);
                Assert.AreEqual(sBookCopy[0].OnHand, 0);
            }
            catch (Exception e)
            {
                Assert.Fail(e.Message);
            }
        }
Esempio n. 6
0
 static void Main(string[] args)
 {
     using (CinemaContext dB = new CinemaContext())
     {
         /*MovieDAO rd = new MovieDAO(dB);
          * SeanceDAO gd = new SeanceDAO(dB);
          * TicketDAO bd = new TicketDAO(dB);
          * HallDAO d = new HallDAO(dB);*/
         ControllerClass controller = new ControllerClass(dB);
         controller.Start();
     }
 }
 static void Main(string[] args)
 {
     using (HotelContext dB = new HotelContext())
     {
         RoomDAO         rd         = new RoomDAO(dB);
         GuestDAO        gd         = new GuestDAO(dB);
         BookingDAO      bd         = new BookingDAO(dB);
         DictionaryDAO   d          = new DictionaryDAO(dB);
         ControllerClass controller = new ControllerClass(dB);
         controller.Start();
     }
 }
 public CustomApplicationContext()
 {
     if (IsAlreadyExecuting())
     {
         Environment.Exit(1);
     }
     else
     {
         InitializeContext();
         controllerClass = new ControllerClass();
     }
 }
Esempio n. 9
0
        public void BookTest()
        {
            try
            {
                ControllerClass controller = new ControllerClass();

                //Author
                controller.AddAuthor("Allah", "Jahid");
                var sAuthor = controller.FindAuthors("Jahid");
                Assert.AreEqual(sAuthor.Count(), 1, "Auhtor not found");

                Assert.AreEqual("Allah", sAuthor[0].Name);
                Assert.AreEqual("Jahid", sAuthor[0].Sorname);

                //Book
                controller.AddBook(sAuthor[0].ItemId, "TestBook", 1995);
                var sBook = controller.FindBooks("Jahid");
                Assert.AreEqual(sBook.Count(), 1, "Book not found");

                Assert.AreEqual("TestBook", sBook[0].Name);
                Assert.AreEqual(1995, sBook[0].Year);

                //Book Copy
                controller.AddCopy(sBook[0].ItemId, "TestBookCopy1");
                var sBookCopy = controller.FindCopies("TestBookCopy1");
                Assert.AreEqual(sBookCopy.Count(), 1, "Book Copy not found");

                Assert.AreEqual(sBook[0].ItemId, sBookCopy[0].Book);
                Assert.AreEqual("TestBookCopy1", sBookCopy[0].ID);

                //Reader
                controller.AddReader("John", "Smith", "Japan, Tokyo 12, 5", 0960644445);
                var sReader = controller.FindReaders("John");
                Assert.AreEqual(sReader.Count(), 1, "Reader not found");

                Assert.AreEqual(sReader[0].Name, "John");
                Assert.AreEqual(sReader[0].Sorname, "Smith");
                Assert.AreEqual(sReader[0].Adress, "Japan, Tokyo 12, 5");
                Assert.AreEqual(sReader[0].TelNumber, 0960644445);

                //Renting book
                controller.RentBook(sBookCopy[0].ItemId, sReader[0].ItemId);
                Assert.AreEqual(sBookCopy[0].OnHand, sReader[0].ItemId);

                //Return book
                controller.ReturnBook(sBookCopy[0].ItemId);
                Assert.AreEqual(sBookCopy[0].OnHand, 0);
            }
            catch (Exception e)
            {
                Assert.Fail(e.Message);
            }
        }
Esempio n. 10
0
        public bool Add(ControllerClass @class)
        {
            ControllerClass.Merge.Instance hashCode = new ControllerClass.Merge.Instance();
            if (!@class)
            {
                return(false);
            }
            hashCode.hash   = @class.GetHashCode();
            hashCode.@value = @class;
            if (this.length == 1)
            {
                if (this.hash == hashCode.hash && object.ReferenceEquals(this.first.@value, hashCode.@value))
                {
                    return(false);
                }
            }
            else if (this.length > 1 && (this.hash & hashCode.hash) == hashCode.hash)
            {
                for (int i = 0; i < this.length; i++)
                {
                    if (this.classes[i].hash == this.hash && object.ReferenceEquals(this.classes[i].@value, hashCode.@value))
                    {
                        return(false);
                    }
                }
            }
            ControllerClass.Merge merge = this;
            merge.hash = merge.hash | hashCode.hash;
            ControllerClass.Merge merge1 = this;
            int num  = merge1.length;
            int num1 = num;

            merge1.length = num + 1;
            int num2 = num1;

            if (num2 == 0)
            {
                this.first = hashCode;
            }
            else if (num2 != 1)
            {
                Array.Resize <ControllerClass.Merge.Instance>(ref this.classes, this.length);
                this.classes[num2] = hashCode;
            }
            else
            {
                this.classes      = new ControllerClass.Merge.Instance[] { this.first, hashCode };
                this.first.hash   = 0;
                this.first.@value = null;
            }
            return(true);
        }
Esempio n. 11
0
        public bool Add(ControllerClass @class)
        {
            Instance instance;

            if (@class == null)
            {
                return(false);
            }
            instance.hash  = @class.GetHashCode();
            instance.value = @class;
            if (this.length == 1)
            {
                if ((this.hash == instance.hash) && object.ReferenceEquals(this.first.value, instance.value))
                {
                    return(false);
                }
            }
            else if ((this.length > 1) && ((this.hash & instance.hash) == instance.hash))
            {
                for (int i = 0; i < this.length; i++)
                {
                    if ((this.classes[i].hash == this.hash) && object.ReferenceEquals(this.classes[i].value, instance.value))
                    {
                        return(false);
                    }
                }
            }
            this.hash |= instance.hash;
            int index = this.length++;

            switch (index)
            {
            case 0:
                this.first = instance;
                break;

            case 1:
                this.classes     = new Instance[] { this.first, instance };
                this.first.hash  = 0;
                this.first.value = null;
                break;

            default:
                Array.Resize <Instance>(ref this.classes, this.length);
                this.classes[index] = instance;
                break;
            }
            return(true);
        }
Esempio n. 12
0
        public void Test_Controller_WriteToDatabase_OK()
        {
            var mockRepository = new Mock <IRepository>();
            var mockView       = new Mock <IView>();

            var controller = new ControllerClass(mockView.Object, mockRepository.Object);
            var data       = new GeneratedData()
            {
                ThreadID = "1", Data = "ABCDEFG", Time = DateTime.Now
            };

            controller.InsertToDatabase(data);

            mockRepository.Verify(x => x.Create(data.ThreadID, data.Data, data.Time), Times.Once);
        }
Esempio n. 13
0
        public void Test_Controller_WriteToDatabase_ERROR()
        {
            var mockRepository = new Mock <IRepository>();
            var mockView       = new Mock <IView>();

            var controller = new ControllerClass(mockView.Object, mockRepository.Object);
            var data       = new GeneratedData()
            {
                ThreadID = "1", Data = "ABCDEFG", Time = DateTime.Now
            };

            mockRepository.Setup(m => m.Create(data.ThreadID, data.Data, data.Time)).Throws <Exception>();

            controller.InsertToDatabase(data);
            mockView.Verify(m => m.DisableStopButton(), Times.AtLeast(1));
            mockView.Verify(m => m.EnableStartButton(), Times.AtLeast(1));
            mockView.Verify(m => m.ShowErrorMessage(It.IsAny <Exception>()), Times.Once);
        }
Esempio n. 14
0
        public void AddRemoveAuthorTest()
        {
            try
            {
                ControllerClass controller = new ControllerClass();
                controller.AddAuthor("Allah", "Jahid");

                var sAuthor = controller.FindAuthors("Jahid");
                Assert.AreEqual(sAuthor.Count(), 1);

                Assert.AreEqual("Allah", sAuthor[0].Name);
                Assert.AreEqual("Jahid", sAuthor[0].Sorname);

                controller.RemoveAuthor(sAuthor[0].ItemId);

                sAuthor = controller.FindAuthors("Jahid");
                Assert.AreEqual(sAuthor.Count(), 0);
            }
            catch (Exception e)
            {
                Assert.Fail(e.Message);
            }
        }
Esempio n. 15
0
        public void AddRemoveAuthorTest()
        {
            try
            {
                ControllerClass controller = new ControllerClass();
                controller.AddAuthor("Allah", "Jahid");

                var sAuthor = controller.FindAuthors("Jahid");
                Assert.AreEqual(sAuthor.Count(), 1);

                Assert.AreEqual("Allah", sAuthor[0].Name);
                Assert.AreEqual("Jahid", sAuthor[0].Sorname);

                controller.RemoveAuthor(sAuthor[0].ItemId);

                sAuthor = controller.FindAuthors("Jahid");
                Assert.AreEqual(sAuthor.Count(), 0);

            }
            catch (Exception e)
            {
                Assert.Fail(e.Message);
            }
        }
Esempio n. 16
0
 public bool Add(ControllerClass @class)
 {
     ControllerClass.Merge.Instance hashCode = new ControllerClass.Merge.Instance();
     if (!@class)
     {
         return false;
     }
     hashCode.hash = @class.GetHashCode();
     hashCode.@value = @class;
     if (this.length == 1)
     {
         if (this.hash == hashCode.hash && object.ReferenceEquals(this.first.@value, hashCode.@value))
         {
             return false;
         }
     }
     else if (this.length > 1 && (this.hash & hashCode.hash) == hashCode.hash)
     {
         for (int i = 0; i < this.length; i++)
         {
             if (this.classes[i].hash == this.hash && object.ReferenceEquals(this.classes[i].@value, hashCode.@value))
             {
                 return false;
             }
         }
     }
     ControllerClass.Merge merge = this;
     merge.hash = merge.hash | hashCode.hash;
     ControllerClass.Merge merge1 = this;
     int num = merge1.length;
     int num1 = num;
     merge1.length = num + 1;
     int num2 = num1;
     if (num2 == 0)
     {
         this.first = hashCode;
     }
     else if (num2 != 1)
     {
         Array.Resize<ControllerClass.Merge.Instance>(ref this.classes, this.length);
         this.classes[num2] = hashCode;
     }
     else
     {
         this.classes = new ControllerClass.Merge.Instance[] { this.first, hashCode };
         this.first.hash = 0;
         this.first.@value = null;
     }
     return true;
 }
Esempio n. 17
0
        internal static void LoadControllerClasses() // only used in unit testing
        {
            _controllerTypesByName = new Dictionary<string, ControllerClass>(StringComparer.OrdinalIgnoreCase);
            _viewComponentsByName = new Dictionary<string, ControllerClass>(StringComparer.OrdinalIgnoreCase);
            _controllerTypesByType = new Dictionary<Type, ControllerClass>();

            List<Type> controllerTypes = new List<Type>();

            foreach (Assembly assembly in _registeredAssemblies)
            {
                controllerTypes.AddRange(TypeHelper.FindCompatibleTypes(assembly, typeof (Controller)));
            }

            foreach (Type type in controllerTypes)
            {
                ControllerClass controllerClass = new ControllerClass(type);

                if (controllerClass.IsViewComponent)
                {
                    _viewComponentsByName.Add(controllerClass.Name, controllerClass);
                }
                else
                {
                    _controllerTypesByName.Add(controllerClass.Name, controllerClass);
                    _controllerTypesByType.Add(type, controllerClass);

                    foreach (Route route in controllerClass.Routes)
                        Router.InsertRoute(route);
                }
            }
        }
Esempio n. 18
0
        static void Main(string[] args)
        {
            ControllerClass controller = new ControllerClass();

            controller.Start();
        }
 public void UnRegisterPoll(ControllerClass controller)
 {
     // Remove the controller in the collection of controller objects
     Polls.Remove(controller);
     FormMain.SetMenuItems(Polls.Count);
 }
 public void RegisterPoll(ControllerClass controller)
 {
     // Store the controller in the collection of controller objects
     Polls.Add(controller);
     FormMain.SetMenuItems(Polls.Count);
 }
Esempio n. 21
0
 internal bool MergeClasses(ref ControllerClass.Merge merge)
 {
     return (!this.@class ? false : merge.Add(this.controllable.@class));
 }
Esempio n. 22
0
 internal static bool MergeClasses(IDMain character, ref ControllerClass.Merge merge)
 {
     bool flag;
     if (character)
     {
         Controllable component = character.GetComponent<Controllable>();
         Controllable controllable = component;
         if (!component)
         {
             flag = false;
             return flag;
         }
         flag = controllable.MergeClasses(ref merge);
         return flag;
     }
     flag = false;
     return flag;
 }
Esempio n. 23
0
        //Instalação do Import Service
        public void ProgressImportInstalation()
        {
            if (InvokeRequired)
            {
                this.Invoke(new MethodInvoker(ProgressImportInstalation));
                return;
            }

            //Se não for Update, cria o serviço
            if (!ControllerClass.isUpdate)
            {
                lblProConnector.Text = "Copiando Componentes...";
                lblProConnector.Refresh();

                //Copia DBMGR
                Components();

                //Copia o SQLCMD para a ferramenta DBMGR
                CopySQLCMD();

                lblProConnector.Text = "Criando chaves de registro...";
                lblProConnector.Refresh();

                //Move progress
                ProgressBarUpdate();

                //Cria Chaves de registro NDDigital
                eConnector.CreateNDDigitalRegKeys();

                lblProConnector.Text = "Criando Banco de Dados...";
                lblProConnector.Refresh();

                //Move progress
                ProgressBarUpdate();

                /*if (!ControllerClass.Oracle && !ControllerClass.Informix)
                 * {
                 *  DBMGR = new CreateDataBase();
                 *
                 *  if (!ControllerClass.SGBDCreated || !ControllerClass.SGBDCreatedCold)
                 *  {
                 *      if (!eConnector.VerifyDBMGRResult())
                 *      {
                 *          MessageBox.Show("Não foi possível acessar o banco de dados, verifique os eventos do Windows para maiores informações!", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Error);
                 *          StartPage.ActiveForm.Close();
                 *      }
                 *  }
                 * }*/

                //Move progress
                ProgressBarUpdate();

                lblProConnector.Text = "Criando Pastas de destino...";
                lblProConnector.Refresh();

                //Cria as pastas de destino para as DLLS
                eConnector.CreateFolderConnector();

                //Move progress
                ProgressBarUpdate();

                lblProConnector.Text = "Criando Serviços...";
                lblProConnector.Refresh();

                //Move progress
                ProgressBarUpdate();

                //Cria serviço Connector Service
                Services.CreateService(ControllerClass.PathFolder + @"\Connector\Connector Service\NDDigital.eForms.ConnectorService.exe", "NDDigitaleFormsConnectorService",
                                       "Serviço responsável pela captura e processamento de documentos enviados à solução e-Forms.", "NDDigital e-Forms Connector Service");

                //Move progress
                ProgressBarUpdate();

                //Estraindo DLLs
                ExtractResources("Settings");
                ExtractResources("Service");
                ExtractResources("Services");
                ExtractResources("B2B");
                ExtractResources("DPEC");

                CalculateFileQuantity();

                //Movendo as DLLs para o caminho de destino
                MoveDLLs(@"C:\Inst\ConnectorSettings", "Connector Settings");
                Thread.Sleep(500);

                MoveDLLs(@"C:\Inst\ConnectorService", "Connector Service");
                Thread.Sleep(500);

                MoveDLLs(@"C:\Inst\ConnectorServices", "Connector Services");
                Thread.Sleep(500);

                MoveDLLs(@"C:\Inst\B2B", "B2B Service");
                Thread.Sleep(500);

                MoveDLLs(@"C:\Inst\DPEC", "DPEC Server");
                Thread.Sleep(500);
            }

            //Caso seja Update, para o serviço para atualizar as DLLs
            else
            {
                lblProConnector.Text = "Verificando update...";
                lblProConnector.Refresh();

                ControllerClass.VerifyRegKeysIFUpdate();

                //Move progress
                ProgressBarUpdate();

                lblProConnector.Text = "Verificando pastas existentes...";
                lblProConnector.Refresh();

                eConnector.CreateFolderConnector();

                //Move progress
                ProgressBarUpdate();


                lblProConnector.Text = "Parando os Serviços...";
                lblProConnector.Refresh();

                Services.ConnectorServiceStop();
                Thread.Sleep(3500);

                //Move progress
                ProgressBarUpdate();


                lblProConnector.Text = "Deletando arquivo antigos...";
                lblProConnector.Refresh();

                removeFiles.DeleteSchemasFrom(ControllerClass.PathFolder + @"\Connector\Connector Service\Schemas");
                removeFiles.DeleteFilesFrom(ControllerClass.PathFolder + @"\Connector\Connector Settings");
                removeFiles.DeleteFilesFrom(ControllerClass.PathFolder + @"\Connector\Connector Service");
                removeFiles.DeleteFilesFrom(ControllerClass.PathFolder + @"\Connector\Connector Services");
                removeFiles.DeleteFilesFrom(ControllerClass.PathFolder + @"\Connector\B2B Service");
                removeFiles.DeleteFilesFrom(ControllerClass.PathFolder + @"\Connector\DPEC Server");

                //Move progress
                ProgressBarUpdate();

                //Estraindo DLLs
                ExtractResources("Settings");
                ExtractResources("Service");
                ExtractResources("Services");
                ExtractResources("B2B");
                ExtractResources("DPEC");

                //Move progress
                ProgressBarUpdate();

                //Calcula a quantidade de arquivos para definir o tamanho da barra de progresso
                CalculateFileQuantity();

                MoveDLLs(@"C:\Inst\ConnectorSettings", "Connector Settings");
                Thread.Sleep(500);

                MoveDLLs(@"C:\Inst\ConnectorService", "Connector Service");
                Thread.Sleep(500);

                MoveDLLs(@"C:\Inst\ConnectorServices", "Connector Services");
                Thread.Sleep(500);

                MoveDLLs(@"C:\Inst\B2B", "B2B Service");
                Thread.Sleep(500);

                MoveDLLs(@"C:\Inst\DPEC", "DPEC Server");
                Thread.Sleep(500);

                //Move progress
                ProgressBarUpdate();

                lblProConnector.Text = "Finalizando...";
                lblProConnector.Refresh();
            }


            lblProConnector.Text = "Atualizando atalhos...";
            lblProConnector.Refresh();

            ShortcutConnector(ControllerClass.PathFolder);
            //ShortcutMonitor(ControllerClass.RootFolder);

            lblProConnector.Text = "Iniciando os Serviços...";
            lblProConnector.Refresh();

            //Inicia Serviço
            Services.ConnectorServiceStart();

            //Move progress
            ProgressBarUpdate();

            lblProConnector.Font      = new Font(lblProConnector.Font, FontStyle.Bold);
            lblProConnector.ForeColor = Color.Green;
            lblProConnector.Text      = "Concluido";
            PctImport.Visible         = true;
            BtnNext.Enabled           = true;
            lblCopy.Text = "Todos os arquivos foram copiados";
            lblFile.Text = "";
            groupGeneral.Refresh();
        }