Exemplo n.º 1
0
 /// <summary>
 ///   Hides a configuration section in the VirtualUI Server Manager
 ///   GUI.
 /// </summary>
 /// <param name="section">The Server configuration section to
 ///                       hide to user. Use one of the following
 ///                       constants\:
 ///                       * SRVSEC_GENERAL\: Hides the General
 ///                         tab, that contains the Binding
 ///                         configuration.
 ///                       * SRVSEC_RDS\: Hides the tab with the
 ///                         Remote Desktop Services account
 ///                         configuration.
 ///                       * SRVSEC_APPLICATIONS\: Hides the list
 ///                         of applications.
 ///                       * SRVSEC_LICENSES\: Hides the tab with
 ///                         License information.
 /// </param>
 public void HideSection(ServerSection section)
 {
     if (m_Server != null)
     {
         m_Server.HideSection(section);
     }
 }
Exemplo n.º 2
0
 /// <summary>
 ///   Makes visible a configuration section in the VirtualUI Server
 ///   Manager GUI.
 /// </summary>
 /// <param name="section">The Server configuration section to
 ///                       show to user. Use one of the following
 ///                       constants\:
 ///                       * SRVSEC_GENERAL\: Shows the General
 ///                         tab, that contains the Binding
 ///                         configuration.
 ///                       * SRVSEC_RDS\: Shows the tab with the
 ///                         Remote Desktop Services account
 ///                         configuration.
 ///                       * SRVSEC_APPLICATIONS\: Shows the list
 ///                         of applications.
 ///                       * SRVSEC_LICENSES\: Shows the tab with
 ///                         License information.
 /// </param>
 public void ShowSection(ServerSection section)
 {
     if (m_Server != null)
     {
         m_Server.ShowSection(section);
     }
 }
Exemplo n.º 3
0
 public ApplicationAdapter(PropertyCollection configuration, string id)
     : base(configuration, id)
 {
     _syncObject     = new object();
     _config         = ConfigurationManager.GetSection(ServerSection.SectionKey) as ServerSection;
     _desktopManager = new DesktopManager();
 }
        public override void Invoke(ConfigurationRequest request)
        {
            ServerSection config = ConfigurationManager.GetSection(ServerSection.SectionKey) as ServerSection;

            ConfigurationResponse response = new ConfigurationResponse();

            var apps = new List <Application>();

            foreach (ApplicationElement e in config.ApplicationCollection)
            {
                apps.Add(new Application()
                {
                    Name = e.Name
                });
            }

            response.Applications = apps.ToArray();

            TransmitResponseMessage(response);
        }
 public ServerConfigurationHelper(ServerSection section)
 {
     Host = section.Host;
 }
Exemplo n.º 6
0
        /// <summary>
        ///  サーバ再起動する時、指定batファイルを呼び出す
        /// </summary>
        private static void ExecuteBatFile()
        {
            _logger.Debug("***ExecuteBatFile START***");

            Process proc = null;

            try
            {
                // 独自に定義したセクション
                ServerSection serSection = ConfigurationManager.GetSection("server.serversection") as ServerSection;
                if (serSection != null)
                {
                    // 指定検索内容情報リスト初期化
                    lstServiceErr = new List <ServerConfigElement>();

                    foreach (ServerConfigElement elem in serSection.ServerElements)
                    {
                        foreach (String serviceNm in elem.ServiceNm.Split(','))
                        {
                            //Processオブジェクトを作成
                            proc = new Process();

                            //出力とエラーをストリームに書き込むようにする
                            proc.StartInfo.UseShellExecute        = false;
                            proc.StartInfo.RedirectStandardOutput = true;
                            proc.StartInfo.RedirectStandardError  = true;

                            // 実行パラメータ設定する
                            string targetDir = Environment.CurrentDirectory;
                            proc.StartInfo.WorkingDirectory = targetDir;
                            proc.StartInfo.FileName         = "AmiVoiceStreamingRecognizer.bat";
                            proc.StartInfo.Arguments        = string.Format("{0} {1} {2} {3} {4}",
                                                                            elem.ServerAddress,
                                                                            elem.User,
                                                                            elem.Password,
                                                                            serviceNm,
                                                                            elem.ServiceInterval);

                            // //ウィンドウを表示しないようにする
                            proc.StartInfo.CreateNoWindow = false;
                            proc.StartInfo.WindowStyle    = ProcessWindowStyle.Hidden;

                            //起動
                            proc.Start();

                            //プロセス終了まで待機する
                            //WaitForExitはReadToEndの後である必要がある
                            //(親プロセス、子プロセスでブロック防止のため)
                            proc.WaitForExit();

                            // 実行結果を判定して、対応処理を行う
                            if (proc.ExitCode == 0)
                            {
                                // ログ出力
                                _logger.Info("服務器:" + elem.ServerAddress + "的" + serviceNm + @"服務已經被重啟!");
                            }
                            else
                            {
                                if (proc.ExitCode == 99)
                                {
                                    // ログ出力
                                    _logger.Error("服務器:" + elem.ServerAddress + @"連接錯誤!");

                                    break;
                                }
                                else
                                {
                                    // エラーの場合、エラーサービスをリストに設定する
                                    elem.ServiceErrNm = serviceNm;
                                    lstServiceErr.Add(elem);

                                    // ログ出力
                                    _logger.Error("服務器:" + elem.ServerAddress + "的" + serviceNm + @"服務啟動錯誤!");
                                }
                            }
                            proc.Close();
                        }
                    }
                }
                _logger.Debug("***ExecuteBatFile END***");
            }
            catch (Exception)
            {
                _logger.Debug("***ExecuteBatFile ERR***");
                throw;
            }
        }
Exemplo n.º 7
0
        /// <summary>
        ///  サーバ再起動する時、指定batファイルを呼び出す
        /// </summary>
        private static void ExecuteBatFileSc()
        {
            _logger.Debug("***ExecuteBatFileSc START***");

            WindowsServiceHelper windowsService = null;

            try
            {
                // 独自に定義したセクション
                ServerSection serSection = ConfigurationManager.GetSection("server.serversection") as ServerSection;

                // 入力パラメータからサービス起動タイプを取得する
                string strProStartupType = ConfigurationManager.AppSettings["ProgramStartupType"];

                if (serSection != null)
                {
                    // 指定検索内容情報リスト初期化
                    lstServiceErr = new List <ServerConfigElement>();

                    foreach (ServerConfigElement elem in serSection.ServerElements)
                    {
                        foreach (String serviceNm in elem.ServiceNm.Split(','))
                        {
                            try
                            {
                                //WindowsServiceHelperオブジェクトを作成
                                windowsService = new WindowsServiceHelper(elem.ServerAddress,
                                                                          elem.User,
                                                                          elem.Password,
                                                                          serviceNm,
                                                                          elem.ServiceInterval,
                                                                          strProStartupType);

                                //  サーバ再起動を実行する
                                windowsService.ExeStartService();

                                // ログ出力
                                _logger.Info("服務器:" + elem.ServerAddress + "的" + serviceNm + @"服務已經被重啟!");
                            }
                            catch (RestartSrException rsException)
                            {
                                if (rsException.ExceptionCd == RestartSrException.ExceptionCode.Err_97)
                                {
                                    // ログ出力
                                    string msg = rsException.Message + " : " + rsException.InnerException.Message;
                                    _logger.Error("服務器:" + elem.ServerAddress + @"連接錯誤!" + "錯誤信息如下所示:" + Environment.NewLine + msg);
                                    break;
                                }
                                else if (rsException.ExceptionCd == RestartSrException.ExceptionCode.Err_98)
                                {
                                    // ログ出力
                                    _logger.Error(@"指定IP:" + elem.ServerAddress + "下對應服务【" + serviceNm + "】不存在!");
                                    continue;
                                }
                                else
                                {
                                    // エラーの場合、エラーサービスをリストに設定する
                                    lstServiceErr.Add(CloneSerConfigItem(elem, serviceNm));

                                    // ログ出力
                                    _logger.Error("服務器:" + elem.ServerAddress + "的" + serviceNm + @"服務啟動錯誤!");
                                }
                            }
                            catch (Exception)
                            {
                                throw;
                            }
                        }
                    }
                }
                _logger.Debug("***ExecuteBatFileSc END***");
            }
            catch (Exception)
            {
                _logger.Debug("***ExecuteBatFileSc ERR***");
                throw;
            }
        }
 /// <summary>
 ///   Hides a configuration section in the VirtualUI Server Manager
 ///   GUI.
 /// </summary>
 /// <param name="section">The Server configuration section to
 ///                       hide to user. Use one of the following
 ///                       constants\:
 ///                       * SRVSEC_GENERAL\: Hides the General
 ///                         tab, that contains the Binding
 ///                         configuration.
 ///                       * SRVSEC_RDS\: Hides the tab with the
 ///                         Remote Desktop Services account
 ///                         configuration.
 ///                       * SRVSEC_APPLICATIONS\: Hides the list
 ///                         of applications.
 ///                       * SRVSEC_LICENSES\: Hides the tab with
 ///                         License information.
 /// </param>         
 public void HideSection(ServerSection section)
 {
     if (m_Server != null)
         m_Server.HideSection(section);
 }
 /// <summary>
 ///   Makes visible a configuration section in the VirtualUI Server
 ///   Manager GUI.
 /// </summary>
 /// <param name="section">The Server configuration section to
 ///                       show to user. Use one of the following
 ///                       constants\:
 ///                       * SRVSEC_GENERAL\: Shows the General
 ///                         tab, that contains the Binding
 ///                         configuration.
 ///                       * SRVSEC_RDS\: Shows the tab with the
 ///                         Remote Desktop Services account
 ///                         configuration.
 ///                       * SRVSEC_APPLICATIONS\: Shows the list
 ///                         of applications.
 ///                       * SRVSEC_LICENSES\: Shows the tab with
 ///                         License information.
 /// </param>         
 public void ShowSection(ServerSection section)
 {
     if (m_Server != null)
         m_Server.ShowSection(section);
 }
Exemplo n.º 10
0
        private void TimeoutThread()
        {
            ServerSection    config       = ConfigurationManager.GetSection(ServerSection.SectionKey) as ServerSection;
            MessagingSection engineConfig = ConfigurationManager.GetSection(MessagingSection.SectionKey) as MessagingSection;

            while (MessageEngine.Instance.IsRunning)
            {
                foreach (ClientSession session in SessionManager.Instance.GetSessions())
                {
                    bool hasLock = false;

                    try
                    {
                        Monitor.TryEnter(session, ref hasLock);

                        if (!hasLock)
                        {
                            continue;
                        }

                        DateTime lastActivityTime;
                        DateTime?killTime;

                        lock (session.SyncLock)
                        {
                            lastActivityTime = session.LastActivityTime;
                            killTime         = session.KillTime;
                        }

                        if (((DateTime.Now - lastActivityTime).TotalSeconds >= config.SessionIdleTimeout) || (killTime != null && DateTime.Now >= killTime))
                        {
                            try
                            {
                                ApplicationAdapterEndPoint endPoint = session.ApplicationEndPoint;

                                if (endPoint != null)
                                {
                                    ApplicationAdapter appAdapter = MessageEngine.Instance.AdapterProxy.ResolveUriToAdapter(endPoint.Uri) as ApplicationAdapter;

                                    if (appAdapter != null)
                                    {
                                        appAdapter.CloseApplication(endPoint);
                                    }
                                }
                            }
                            finally
                            {
                                SessionManager.Instance.DestroySession(session.Id);
                                session.Dispose();
                            }
                        }
                    }
                    catch (Exception ex)
                    {
                        if (ExceptionHelper.IsCritical(ex))
                        {
                            throw;
                        }
                    }
                    finally
                    {
                        if (hasLock)
                        {
                            Monitor.Exit(session);
                        }
                    }
                }

                Thread.Sleep(5000);
            }
        }
Exemplo n.º 11
0
        /// <summary>
        /// Initializes the instance. Use this method to construct pipelines and subscribe to messages.
        /// </summary>
        public override void Initialize()
        {
            ServerSection    config       = ConfigurationManager.GetSection(ServerSection.SectionKey) as ServerSection;
            MessagingSection engineConfig = ConfigurationManager.GetSection(MessagingSection.SectionKey) as MessagingSection;

            ContextTraceListener contextListener = ((ContextTraceListener)MessageEngine.Instance.Tracing.Listeners["ContextTraceListener"]);

            if (contextListener == null)
            {
                contextListener = new ContextTraceListener(new RollingFileTraceListener(Path.Combine(config.LogPath, InstanceName + ".log"), config.MaxLogSize));
                contextListener.TraceOutputOptions = TraceOptions.ProcessId | TraceOptions.ThreadId | TraceOptions.DateTime;
                contextListener.Name = "ContextTraceListener";
                MessageEngine.Instance.Tracing.Listeners.Add(contextListener);
            }

            PropertyCollection tcpAdapterConfig = new PropertyCollection();

            tcpAdapterConfig.Write("TcpAdapterPort", config.TcpAdapter.Port);
            tcpAdapterConfig.Write("TcpEndPointTimeout", config.TcpAdapter.SocketIdleTimeout * 1000);

            TcpAdapter tcpAdapter = new TcpAdapter(tcpAdapterConfig, "tcp");

            tcpAdapter.MessageReceived += new EventHandler <AdapterReceiveEventArgs>(MessageReceivedEventHandler);

            ComponentPipeline tcpReceivePipeline = new ComponentPipeline(PipelineType.Receive);

            PropertyCollection receiveCfg = new PropertyCollection();

            tcpReceivePipeline.AddComponent(typeof(StreamToMessageDisassembler), receiveCfg);

            PropertyCollection traceCfg = new PropertyCollection();

            traceCfg.Write("MaxLogSize", config.MaxLogSize);
            traceCfg.Write("LogPath", config.LogPath);
            tcpReceivePipeline.AddComponent(typeof(TraceContextComponent), traceCfg);

            ComponentPipeline tcpSendPipeline = new ComponentPipeline(PipelineType.Send);

            PropertyCollection appAdapterConfig = new PropertyCollection();

            appAdapterConfig.Write("ApplicationIdleTimeout", 999999999);

            ApplicationAdapter appAdapter = new ApplicationAdapter(appAdapterConfig, "app");

            appAdapter.EndPointDestroyed += EndPointDestroyedEventHandler;

            ComponentPipeline appReceivePipeline = new ComponentPipeline(PipelineType.Receive);
            ComponentPipeline appSendPipeline    = new ComponentPipeline(PipelineType.Send);

            //Bind adapters to pipelines
            MessageEngine.Instance.Bind(tcpAdapter, tcpReceivePipeline);
            MessageEngine.Instance.Bind(tcpAdapter, tcpSendPipeline);
            MessageEngine.Instance.Bind(appAdapter, appReceivePipeline);
            MessageEngine.Instance.Bind(appAdapter, appSendPipeline);

            MessageEngine.Instance.SubscriptionManager.Subscribe("http://www.im.se/wms/mobile/CreateSessionRequest", new CreateSessionSubscriber());
            MessageEngine.Instance.SubscriptionManager.Subscribe("http://www.im.se/wms/mobile/StateRequest", new StateSubscriber());
            MessageEngine.Instance.SubscriptionManager.Subscribe("http://www.im.se/wms/mobile/EventRequest", new EventSubscriber());
            MessageEngine.Instance.SubscriptionManager.Subscribe("http://www.im.se/wms/mobile/Application", new ApplicationSubscriber());
            MessageEngine.Instance.SubscriptionManager.Subscribe("http://www.im.se/wms/mobile/ConfigurationRequest", new ConfigurationSubscriber());

            //Add subscriber to reset the trace context after threads have finished
            MessageEngine.Instance.SubscriptionManager.Subscribe(new TraceContextReset());

            _remoteInterface = new RemoteInterfaceProxy(SessionManager.Instance);
            _remoteInterface.Initialize(config.ManagerPort, "IMIServer");
        }
Exemplo n.º 12
0
 public ServerConfigurationHelper(ServerSection section)
 {
     Host = section.Host;
 }
Exemplo n.º 13
0
        public LocalCacheService(ServerSection section, ServerCacheContainer cacheContainer)
        {
            _section = section;

            _cacheContainer = cacheContainer;
        }
Exemplo n.º 14
0
        public void Shouldnt_be_possible_get_an_operation_code_from_a_invalid_command_line()
        {
            MockRepository mocks = new MockRepository();
            var fakeView = mocks.DynamicMock<IMainView>();
            var fakeModel = mocks.DynamicMock<IMainModel>();
            var fakePresenter = mocks.DynamicMock<MainPresenter>(new object[] {fakeView, fakeModel});

            ServerSection fakeServerSection = new ServerSection();
            fakeServerSection.Server.address = "127.0.0.1";
            fakeServerSection.Server.username = "******";
            fakeServerSection.Server.password = "******";
            fakeServerSection.Collects.Add(new CollectElement() { Name="test", Target="10.0.0.1", Username="******", Password="******", Definitions="test-definitions.xml" });           
            Expect.Call(fakePresenter.ReadServerSection()).IgnoreArguments().Return(fakeServerSection);

            mocks.ReplayAll();

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] {""}));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-c", "-s" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsFalse(fakePresenter.PrepareOptions(new String[] { "-g", "-x" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-c", "-l" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-c" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-s" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsFalse(fakePresenter.PrepareOptions(new String[] { "-g" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsFalse(fakePresenter.PrepareOptions(new String[] { "-e" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-e", "test" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());
            
            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-g", "collectrequests/1" }));
            Assert.AreEqual(Operation.GetResults, fakePresenter.CheckParameters());

            Assert.IsFalse(fakePresenter.PrepareOptions(new String[] { "-x" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-x", "collectrequests/1" }));
            Assert.AreEqual(Operation.CancelCollect, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-l" }));
            Assert.AreEqual(Operation.ListCollectsInExecution, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-n" }));
            Assert.AreEqual(Operation.ValidateSchematronOnly, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-n", "-e", "test" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--collect"}));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--collect-sync" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsFalse(fakePresenter.PrepareOptions(new String[] { "--get-results" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--get-results", "collectrequests/1" }));
            Assert.AreEqual(Operation.GetResults, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--get-results", "collectrequests/1", "-e", "test" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsFalse(fakePresenter.PrepareOptions(new String[] { "--cancel" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--cancel", "collectrequests/1" }));
            Assert.AreEqual(Operation.CancelCollect, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--cancel", "collectrequests/1", "-e", "test" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--list" }));
            Assert.AreEqual(Operation.ListCollectsInExecution, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--list", "-e", "tests" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--list", "--preset", "test" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            //  Send Collect
            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-c", "-m", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-c", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.SendCollect, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-c", "-n", "-m", "http://*****:*****@rd", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.SendCollect, fakePresenter.CheckParameters());
            
            Assert.IsFalse(fakePresenter.PrepareOptions(new String[] { "-c", "-n", "-e", "-m", "http://*****:*****@rd", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-c", "-n", "-e", "test", "-m", "http://*****:*****@rd", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.SendCollect, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-c", "-n", "-e", "test", "-m", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.SendCollect, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-c", "-n", "-e", "test" }));
            Assert.AreEqual(Operation.SendCollect, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-c", "-n", "-e", "default", "-m", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());           
            
            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-c", "-m", "http://*****:*****@rd", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.SendCollect, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--collect", "--modsic", "http://*****:*****@rd", "--target", "10.0.0.1", "--target-username", "administrator", "--target-password", "P@$$w@rd" }));
            Assert.AreEqual(Operation.SendCollect, fakePresenter.CheckParameters());

            //  Send Collect Synchronous
            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-s", "-m", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-s", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.SendCollectSync, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-s", "-m", "http://*****:*****@rd", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.SendCollectSync, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--collect-sync", "--modsic", "http://*****:*****@rd", "--target", "10.0.0.1", "--target-username", "administrator", "--target-password", "P@$$w@rd" }));
            Assert.AreEqual(Operation.SendCollectSync, fakePresenter.CheckParameters());

            Assert.IsFalse(fakePresenter.PrepareOptions(new String[] { "-s", "-n", "-e", "-m", "http://*****:*****@rd", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-s", "-n", "-e", "test", "-m", "http://*****:*****@rd", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.SendCollectSync, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-s", "-n", "-e", "test", "-m", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.SendCollectSync, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-s", "-n", "-e", "test" }));
            Assert.AreEqual(Operation.SendCollectSync, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-s", "-n", "-e", "default", "-m", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            //  Get Results
            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-g", "collectrequests/1", "-m", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.GetResults, fakePresenter.CheckParameters());

            Assert.IsFalse(fakePresenter.PrepareOptions(new String[] { "-g", "-n", "collectrequests/1", "-m", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsFalse(fakePresenter.PrepareOptions(new String[] { "-g", "-m", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-g", "collectrequests/1", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-g", "collectrequests/1", "-m", "http://*****:*****@rd", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--get-results", "collectrequests/1", "--modsic", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.GetResults, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--get-results", "collectriquestis/1", "--modsic", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            //  Cancel Collect
            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-x", "collectrequests/1", "-m", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.CancelCollect, fakePresenter.CheckParameters());

            Assert.IsFalse(fakePresenter.PrepareOptions(new String[] { "-x", "-n", "collectrequests/1", "-m", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsFalse(fakePresenter.PrepareOptions(new String[] { "-x", "-m", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-x", "collectrequests/1", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-x", "collectrequests/1", "-m", "http://*****:*****@rd", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--cancel", "collectrequests/1", "--modsic", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.CancelCollect, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--cancel", "collectriquestis/1", "--modsic", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            //  List collects in execution
            Assert.IsFalse(fakePresenter.PrepareOptions(new String[] { "-l", "collectrequests/1", "-m", "http://*****:*****@rd" }));

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-l", "-m", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.ListCollectsInExecution, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-l", "-n", "-m", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-l", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-l", "-m", "http://*****:*****@rd", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--list", "--modsic", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.ListCollectsInExecution, fakePresenter.CheckParameters());

            mocks.VerifyAll();
        }   
Exemplo n.º 15
0
        public void Shouldnt_be_possible_get_an_operation_code_from_a_invalid_command_line()
        {
            MockRepository mocks         = new MockRepository();
            var            fakeView      = mocks.DynamicMock <IMainView>();
            var            fakeModel     = mocks.DynamicMock <IMainModel>();
            var            fakePresenter = mocks.DynamicMock <MainPresenter>(new object[] { fakeView, fakeModel });

            ServerSection fakeServerSection = new ServerSection();

            fakeServerSection.Server.address  = "127.0.0.1";
            fakeServerSection.Server.username = "******";
            fakeServerSection.Server.password = "******";
            fakeServerSection.Collects.Add(new CollectElement()
            {
                Name = "test", Target = "10.0.0.1", Username = "******", Password = "******", Definitions = "test-definitions.xml"
            });
            Expect.Call(fakePresenter.ReadServerSection()).IgnoreArguments().Return(fakeServerSection);

            mocks.ReplayAll();

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-c", "-s" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsFalse(fakePresenter.PrepareOptions(new String[] { "-g", "-x" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-c", "-l" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-c" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-s" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsFalse(fakePresenter.PrepareOptions(new String[] { "-g" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsFalse(fakePresenter.PrepareOptions(new String[] { "-e" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-e", "test" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-g", "collectrequests/1" }));
            Assert.AreEqual(Operation.GetResults, fakePresenter.CheckParameters());

            Assert.IsFalse(fakePresenter.PrepareOptions(new String[] { "-x" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-x", "collectrequests/1" }));
            Assert.AreEqual(Operation.CancelCollect, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-l" }));
            Assert.AreEqual(Operation.ListCollectsInExecution, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-n" }));
            Assert.AreEqual(Operation.ValidateSchematronOnly, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-n", "-e", "test" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--collect" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--collect-sync" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsFalse(fakePresenter.PrepareOptions(new String[] { "--get-results" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--get-results", "collectrequests/1" }));
            Assert.AreEqual(Operation.GetResults, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--get-results", "collectrequests/1", "-e", "test" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsFalse(fakePresenter.PrepareOptions(new String[] { "--cancel" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--cancel", "collectrequests/1" }));
            Assert.AreEqual(Operation.CancelCollect, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--cancel", "collectrequests/1", "-e", "test" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--list" }));
            Assert.AreEqual(Operation.ListCollectsInExecution, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--list", "-e", "tests" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--list", "--preset", "test" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            //  Send Collect
            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-c", "-m", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-c", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.SendCollect, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-c", "-n", "-m", "http://*****:*****@rd", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.SendCollect, fakePresenter.CheckParameters());

            Assert.IsFalse(fakePresenter.PrepareOptions(new String[] { "-c", "-n", "-e", "-m", "http://*****:*****@rd", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-c", "-n", "-e", "test", "-m", "http://*****:*****@rd", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.SendCollect, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-c", "-n", "-e", "test", "-m", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.SendCollect, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-c", "-n", "-e", "test" }));
            Assert.AreEqual(Operation.SendCollect, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-c", "-n", "-e", "default", "-m", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-c", "-m", "http://*****:*****@rd", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.SendCollect, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--collect", "--modsic", "http://*****:*****@rd", "--target", "10.0.0.1", "--target-username", "administrator", "--target-password", "P@$$w@rd" }));
            Assert.AreEqual(Operation.SendCollect, fakePresenter.CheckParameters());

            //  Send Collect Synchronous
            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-s", "-m", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-s", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.SendCollectSync, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-s", "-m", "http://*****:*****@rd", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.SendCollectSync, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--collect-sync", "--modsic", "http://*****:*****@rd", "--target", "10.0.0.1", "--target-username", "administrator", "--target-password", "P@$$w@rd" }));
            Assert.AreEqual(Operation.SendCollectSync, fakePresenter.CheckParameters());

            Assert.IsFalse(fakePresenter.PrepareOptions(new String[] { "-s", "-n", "-e", "-m", "http://*****:*****@rd", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-s", "-n", "-e", "test", "-m", "http://*****:*****@rd", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.SendCollectSync, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-s", "-n", "-e", "test", "-m", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.SendCollectSync, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-s", "-n", "-e", "test" }));
            Assert.AreEqual(Operation.SendCollectSync, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-s", "-n", "-e", "default", "-m", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            //  Get Results
            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-g", "collectrequests/1", "-m", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.GetResults, fakePresenter.CheckParameters());

            Assert.IsFalse(fakePresenter.PrepareOptions(new String[] { "-g", "-n", "collectrequests/1", "-m", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsFalse(fakePresenter.PrepareOptions(new String[] { "-g", "-m", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-g", "collectrequests/1", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-g", "collectrequests/1", "-m", "http://*****:*****@rd", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--get-results", "collectrequests/1", "--modsic", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.GetResults, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--get-results", "collectriquestis/1", "--modsic", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            //  Cancel Collect
            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-x", "collectrequests/1", "-m", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.CancelCollect, fakePresenter.CheckParameters());

            Assert.IsFalse(fakePresenter.PrepareOptions(new String[] { "-x", "-n", "collectrequests/1", "-m", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsFalse(fakePresenter.PrepareOptions(new String[] { "-x", "-m", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-x", "collectrequests/1", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-x", "collectrequests/1", "-m", "http://*****:*****@rd", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--cancel", "collectrequests/1", "--modsic", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.CancelCollect, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--cancel", "collectriquestis/1", "--modsic", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            //  List collects in execution
            Assert.IsFalse(fakePresenter.PrepareOptions(new String[] { "-l", "collectrequests/1", "-m", "http://*****:*****@rd" }));

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-l", "-m", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.ListCollectsInExecution, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-l", "-n", "-m", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-l", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "-l", "-m", "http://*****:*****@rd", "-t", "10.0.0.1", "-y", "administrator", "-z", "P@$$w@rd" }));
            Assert.AreEqual(Operation.Error, fakePresenter.CheckParameters());

            Assert.IsTrue(fakePresenter.PrepareOptions(new String[] { "--list", "--modsic", "http://*****:*****@rd" }));
            Assert.AreEqual(Operation.ListCollectsInExecution, fakePresenter.CheckParameters());

            mocks.VerifyAll();
        }
Exemplo n.º 16
0
 public StateSubscriber()
 {
     _config = ConfigurationManager.GetSection(ServerSection.SectionKey) as ServerSection;
 }