static void Main(string[] args)
 {
     Console.WriteLine(Resources.IniciandoAplicacao);
     try
     {
         var loggerFactory           = new LoggerFactory();
         var settings                = GetConfiguration();
         var messagingBuilderFactory = new MessagingBuilderFactory();
         using (var builder = messagingBuilderFactory.GetBuilder(settings, loggerFactory))
             using (var manager = new MessagingManager(builder, loggerFactory))
             {
                 var publisher = builder.BuildPublisher();
                 manager.LoadProcessors(null);
                 manager.Start();
                 Console.WriteLine(Resources.PublicandoMensagem);
                 publisher.Publish(new ExampleMessage()
                 {
                     Text = ItsWorking
                 }, Queue);
                 Console.WriteLine(Resources.RodandoAplicacao);
                 Console.ReadLine();
                 manager.Stop();
                 Console.WriteLine(Resources.AplicacaoEncerrada);
             }
     }
     catch (Exception err)
     {
         Console.WriteLine(Resources.ErroAoExecutarAplicacao, err.Message);
     }
 }
        public void DisposeTest()
        {
            var manager = new MessagingManager(builderMock.Object, loggerFactoryMock.Object);

            manager.Active = true;
            manager.Dispose();
        }
    // Use this for initialization
    void Start()
    {
        List <LookAtEachotherBehaviour> list = new List <LookAtEachotherBehaviour>(FindObjectsOfType <LookAtEachotherBehaviour>());

        other = list.Find(x => x != this).transform;
        MessagingManager.AddListener(this);
    }
        static void Main(string[] args)
        {
            Console.WriteLine("Iniciando aplicação");
            try
            {
                ILoggerFactory factory  = new LoggerFactory();
                var            settings = GetConfiguration();

                IBuilder builder = new AmqpBuilder(settings, factory);
                using (var manager = new MessagingManager(builder, factory))
                {
                    var publisher = builder.BuildPublisher();

                    manager.LoadProcessors(null);
                    manager.Start();
                    Console.WriteLine("[.] Publicando mensagem para [testQueue123] ...");
                    publisher.Publish(new ExampleMessage()
                    {
                        Text = "It's working"
                    }, "testQueue123");
                    Console.WriteLine("Rodando aplicação. Pressione (enter) para encerrar.");
                    Console.ReadLine();
                    manager.Stop();
                    Console.WriteLine("Aplicação encerrada com sucesso.");
                }
            }
            catch (Exception err)
            {
                Console.WriteLine($"Erro ao executar aplicação. Detalhes: ${err.Message}");
            }
        }
        public void When_Start_Should_Set_As_Active()
        {
            var manager = new MessagingManager(_builderMock.Object, _loggerFactoryMock.Object);

            manager.Start();

            manager.Active.Should().Be(true);
        }
        public void When_Stop_And_Inactive_Should_Log_Information()
        {
            var manager = new MessagingManager(_builderMock.Object, _loggerFactoryMock.Object);

            manager.Stop();

            _loggerMock.Verify(l => l.Log(LogLevel.Information, It.IsAny <EventId>(), new FormattedLogValues(Resources.MQManagerNotStarted), It.IsAny <Exception>(), It.IsAny <Func <object, Exception, string> >()), Times.Once);
        }
示例#7
0
 private void OnTriggerEnter2D(Collider2D other)
 {
     if (other.CompareTag("Obstacle"))
     {
         OnObstacleCollision.Invoke();
         MessagingManager <string> .SendMessage("PlaySFX", "impact");
     }
 }
        public void When_LoadProcessor_Should_Load_Only_Valid_Processors()
        {
            var manager = new MessagingManager(_builderMock.Object, _loggerFactoryMock.Object);

            manager.LoadProcessors(new Mock <IServiceProvider>().Object);

            Assert.Equal(1, manager.EnabledProcessors.Count);
            Assert.IsType <TestProcessor>(manager.EnabledProcessors[0]);
        }
        public void StartTwiceTest()
        {
            var manager = new MessagingManager(builderMock.Object, loggerFactoryMock.Object);

            manager.Active = true;
            Assert.True(manager.Active);
            manager.Start();
            Assert.True(manager.Active);
        }
        public void StopTest()
        {
            var manager = new MessagingManager(builderMock.Object, loggerFactoryMock.Object);

            manager.Active = true;
            Assert.True(manager.Active);
            manager.Active = false;
            Assert.False(manager.Active);
        }
        public void When_LoadProcessor_Already_registered_Should_Log()
        {
            var manager = new MessagingManager(_builderMock.Object, _loggerFactoryMock.Object);

            manager.RegisterProcessor(new TestProcessor());

            manager.LoadProcessors(new Mock <IServiceProvider>().Object);

            _loggerMock.Verify(l => l.Log(LogLevel.Debug, It.IsAny <EventId>(), new FormattedLogValues(string.Format(Resources.ProcessorAlreadyResgistered, typeof(TestProcessor))), It.IsAny <Exception>(), It.IsAny <Func <object, Exception, string> >()), Times.Once);
        }
        public void When_RegisterProcessor_Should_Add_MessageQueueMap_Item()
        {
            _builderMock.SetupGet(b => b.MessageQueueMap).Returns(new Dictionary <string, Type>());
            var manager   = new MessagingManager(_builderMock.Object, _loggerFactoryMock.Object);
            var processor = new TestProcessor();

            manager.RegisterProcessor(processor);

            _builderMock.Object.MessageQueueMap[processor.GetQueueName()].Should().Be(processor.GetMessageType());
        }
        public void When_RegisterProcessor_Should_Add_Enabled_Processor()
        {
            var manager   = new MessagingManager(_builderMock.Object, _loggerFactoryMock.Object);
            var processor = new TestProcessor();

            manager.RegisterProcessor(processor);

            manager.EnabledProcessors.Count.Should().Be(1);
            manager.EnabledProcessors[0].Should().Be(processor);
        }
        public void When_Start_Should_Start_Each_Created_Consumer()
        {
            var manager = new MessagingManager(_builderMock.Object, _loggerFactoryMock.Object);

            manager.EnabledProcessors.Add(GetProcessor <TestProcessor>());

            manager.Start();

            _consumerMock.Verify(c => c.Start(It.IsAny <IProcessor>(), It.IsAny <string>()), Times.Exactly(manager.EnabledProcessors.Count));
        }
        public void When_Start_Should_Build_Consumer_To_Enableds_Processors()
        {
            var manager = new MessagingManager(_builderMock.Object, _loggerFactoryMock.Object);

            manager.EnabledProcessors.Add(GetProcessor <TestProcessor>());

            manager.Start();

            _builderMock.Verify(b => b.BuildConsumer(), Times.Exactly(manager.EnabledProcessors.Count));
        }
示例#16
0
 void RestartGame()
 {
     Debug.Log("reload");
     MessagingManager.Broadcast(Messages.RESTART, this.gameObject);
     isRound             = false;
     victory1Image.color = Color.clear;
     victory2Image.color = Color.clear;
     useTimer            = false;
     //Application.LoadLevel(Application.loadedLevel);
 }
        public void When_Start_With_Error_Should_Set_As_Inactive()
        {
            _builderMock.Setup(b => b.BuildConsumer()).Throws <Exception>();
            var manager = new MessagingManager(_builderMock.Object, _loggerFactoryMock.Object);

            manager.EnabledProcessors.Add(GetProcessor <TestProcessor>());

            manager.Start();

            manager.Active.Should().Be(false);
        }
        public void When_Stop_Should_Set_As_Inactive()
        {
            var manager = new MessagingManager(_builderMock.Object, _loggerFactoryMock.Object)
            {
                Active = true
            };

            manager.Stop();

            manager.Active.Should().Be(false);
        }
示例#19
0
    // Use this for initialization
    void Start()
    {
        player0Data = PlayerInfoPasser.GetInfo(0);
        player1Data = PlayerInfoPasser.GetInfo(1);

        //Debug.Log(PlayerInfoPasser.GetController(0).movement.array[0]);

        CreatePlayers();

        MessagingManager.AddListener(this);
    }
示例#20
0
    public void OnDeath()
    {
        if (!_isDead)
        {
            Debug.Log("This");
            Transform parent = transform.parent;

            //foreach (DetonatePlayer d in GetComponentInChildren<DetonatePlayer>())
            //{
            //    d.OnDeath();
            //}

            //foreach (Collider c in parent.GetComponentsInChildren<Collider>())
            //{
            //c.enabled = true;
            //if (c.GetComponent<DealDamageOnCollision>()) c.GetComponent<DealDamageOnCollision>().enabled = false;
            //}

            foreach (RotateAroundAxis r in GetComponentsInChildren <RotateAroundAxis>())
            {
                r.enabled = false;
            }

            if (weaponBase != null)
            {
                weaponBase.transform.parent = this.transform.parent;
            }
            else
            {
                Debug.LogError("Need to set weapon base for process");
            }

            foreach (DealDamageOnCollision d in GetComponentsInChildren <DealDamageOnCollision>())
            {
                d.enabled = false;
            }

            GetComponent <Rigidbody>().useGravity  = true;
            GetComponent <Rigidbody>().constraints = RigidbodyConstraints.None;
            GetComponentInParent <PlayerAnimationHandler>().enabled = false;
            GetComponentInParent <Animator>().enabled         = false;
            GetComponent <RigidBodyTopDownMovement>().enabled = false;
            //transform.FindChild("BodyP/HeadP").parent = transform.parent;

            foreach (Transform t in GetComponentInChildren <Transform>())
            {
                t.parent = transform.parent;
            }

            MessagingManager.Broadcast(Messages.DEATH, this.transform.parent.gameObject);
            _isDead = true;
        }
    }
        public void When_Start_And_Already_Active_Should_Log_Information()
        {
            var manager = new MessagingManager(_builderMock.Object, _loggerFactoryMock.Object)
            {
                Active = true
            };

            manager.EnabledProcessors.Add(GetProcessor <TestProcessor>());

            manager.Start();

            _loggerMock.Verify(l => l.Log(LogLevel.Information, It.IsAny <EventId>(), new FormattedLogValues(Resources.MQManagerAlreadyStarted), It.IsAny <Exception>(), It.IsAny <Func <object, Exception, string> >()), Times.Once);
        }
示例#22
0
    private void Awake()
    {
        Debug.Log("Messaging Manager Started");

        if (Instance != null && Instance != this)
        {
            Destroy(gameObject);
        }

        Instance = this;

        DontDestroyOnLoad(gameObject);
    }
示例#23
0
    private void OnDisable()
    {
        MessagingManager <string> .DeregisterObserver("PlayMusic", playMusic);

        MessagingManager <string> .DeregisterObserver("PlaySFX", playSfx);

        MessagingManager.DeregisterObserver("StopMusic", stopMusic);
        MessagingManager.DeregisterObserver("PauseMusic", pauseMusic);
        MessagingManager.DeregisterObserver("UnpauseMusic", unpauseMusic);
        MessagingManager.DeregisterObserver("StopAmbience", stopAmbience);
        MessagingManager.DeregisterObserver("PauseAmbience", pauseAmbience);
        MessagingManager.DeregisterObserver("UnpauseAmbience", unpauseAmbience);
    }
        public void When_Start_And_Already_Active_Should_Not_Build_Consumer_To_Enableds_Processors()
        {
            var manager = new MessagingManager(_builderMock.Object, _loggerFactoryMock.Object)
            {
                Active = true
            };

            manager.EnabledProcessors.Add(GetProcessor <TestProcessor>());

            manager.Start();

            _builderMock.Verify(b => b.BuildConsumer(), Times.Never);
        }
        public void When_Start_With_Error_Should_Log_Information_About_Error()
        {
            var exception = new Exception();

            _builderMock.Setup(b => b.BuildConsumer()).Throws(exception);
            var manager = new MessagingManager(_builderMock.Object, _loggerFactoryMock.Object);

            manager.EnabledProcessors.Add(GetProcessor <TestProcessor>());

            manager.Start();

            _loggerMock.Verify(l => l.Log(LogLevel.Error, It.IsAny <EventId>(), new FormattedLogValues(Resources.MQManagerErrorWhileStarting), exception, It.IsAny <Func <object, Exception, string> >()), Times.Once);
        }
示例#26
0
 void Awake()
 {
     Debug.Log("Messaging Manager Started");
     //first we check if any instances are colliding
     if (Instance != null && Instance != this)
     {
         Destroy(gameObject);
     }
     //save this as our singleton instance
     Instance = this;
     //make sure this instance is not destroyed between seends
     DontDestroyOnLoad(gameObject);
 }
示例#27
0
        public void CreateMessaging(string username)
        {
            if (Messaging == null)
            {
                Messaging = new MessagingManager(username);

                Messaging.Connected += _messaging_Connected;
                Messaging.FugutiveLocationRecieved += _messaging_FugutiveLocationRecieved;
                Messaging.HelloRecieved            += Messaging_HelloRecieved;
                Messaging.SurrenderRecieved        += Messaging_SurrenderRecieved;
            }
            //TODO: remember to dispose of these
        }
    void Awake()
    {
        Debug.Log("Messaging manager started");

        if (Instance != null && Instance != this)
        {
            Destroy(gameObject);
        }

        Instance = this;

        DontDestroyOnLoad(gameObject);
    }
示例#29
0
    // Use this for initialization
    void Start()
    {
        Debug.Log(GetComponentsInChildren <AnalogToAxisLayer>().Length);

        MessagingManager.AddListener(this);
//		switch (playerID){
//		case 1:
//			camera.rect = new Rect(new Vector2(0,0), new Vector2(0.5f, 1));
//			break;
//		case 2:
//			camera.rect = new Rect(new Vector2(0,0.5f), new Vector2(0.5f, 1));
//			break;
//		}
    }
示例#30
0
        /// <summary>
        /// Runs the messaging application.
        /// </summary>
        /// <param name="messagingManager">The message manager.</param>
        /// <param name="server">The mail message server.</param>
        private void Run(MessagingManager messagingManager, MailMessageServer server)
        {
            MessageContainer message = messagingManager.DequeueMessage();

            while (message != null)
            {
                MessageSendResult result = server.Send(message.Message as MailMessageSerializable);
                message.Status = result.Ok ? MessageStatus.Sent : MessageStatus.Failed;
                message.SentAt = DateTime.Now;
                messagingManager.SaveMessage(message);

                message = messagingManager.DequeueMessage();
            }
        }
示例#31
0
 private void Awake()
 {
     Debug.Log("Messaging Manager Started");
     // First we check if there are any other instances conflicting
     if (Instance != null && Instance != this)
     {
         // Destroy other instances if it not the same
         Destroy(gameObject);
     }
     // Save our current singletone instance
     Instance = this;
     // Make sure that the instance is not destroyed between scenes (this is optional).
     DontDestroyOnLoad(this);
 }
        static void Main(string[] args)
        {
            Console.WriteLine("Iniciando aplicação");
            try
            {
                ILoggerFactory factory = new LoggerFactory();

                IBuilder builder   = new AmqpBuilder(GetConfiguration(), factory);
                var      manager   = new MessagingManager(builder, factory);
                var      publisher = builder.BuildPublisher();

                manager.LoadProcessors(null);
                manager.Start();
                Console.WriteLine("[.] Publicando mensagem para [testQueue123] ...");
                Console.WriteLine("Rodando aplicação. Digite (quit) para encerrar ou qualquer numero apra calcular Fibonacci.");
                while (true)
                {
                    var value = Console.ReadLine();
                    if (value == "quit")
                    {
                        break;
                    }
                    if (!Int32.TryParse(value, out int fibNum))
                    {
                        Console.WriteLine($"{value} não é um inteiro válido");
                    }

                    var reply = publisher.PublishAndWait <FibMessage>(new FibMessage()
                    {
                        Number = fibNum
                    }, "test.fibonacci").Result;
                    if (String.IsNullOrEmpty(reply.ErrorMessage))
                    {
                        Console.WriteLine($"Fibonacci para {fibNum} é igual a {reply.Number}");
                    }
                    else
                    {
                        Console.WriteLine($"Erro ao calcular fibonacci: {reply.ErrorMessage}");
                    }
                }

                manager.Stop();
                Console.WriteLine("Aplicação encerrada com sucesso.");
            }
            catch (Exception err)
            {
                Console.WriteLine($"Erro ao executar aplicação. Detalhes: ${err.Message}");
            }
        }
    void Awake()
    {
        Debug.Log("Messaging Manager Started");
        // First we check if there are any other instances conflicting
        if ( Instance != null && Instance != this)
        {
            Destroy(gameObject);
        }

        // save out singleton instance
        Instance = this;

        //Make sure that this instance is not destroyed
        // during scene transition ( this is optional )
        DontDestroyOnLoad(gameObject);
    }
 /// <summary>
 /// Initializes a new instance of the <see cref="MessagingService"/> class.
 /// </summary>
 public MessagingService()
 {
     this.messagingManager = Global.DependencyInjectionContainer.Resolve<MessagingManager>();
 }
 public FinanceEvents(ICustomerManager customerManager)
 {
     _customerManager = customerManager;
     _messenger = new MessagingManager("localhost");
 }