public void send_message_to_all_listeners_for_a_message_type()
        {
            var listener1 = new StubListener<Message1>();
            var listener2 = new StubListener<Message1>();
            var listener3 = new StubListener<Message1>();
            var listener4 = new StubListener<Message2>();

            events.AddListeners(listener1, listener2, listener3, this, listener4);

            var message1 = new Message1();
            var message2 = new Message2();

            events.SendMessage(message1);
            events.SendMessage(message2);

            Wait.Until(
                () =>
                    listener1.LastMessage != null && listener2.LastMessage != null && listener3.LastMessage != null &&
                    listener4.LastMessage != null);

            listener1.LastMessage.ShouldBeTheSameAs(message1);
            listener2.LastMessage.ShouldBeTheSameAs(message1);
            listener3.LastMessage.ShouldBeTheSameAs(message1);

            listener4.LastMessage.ShouldBeTheSameAs(message2);
        }
        public void listeners_can_fail_one_at_a_time()
        {
            var listener1 = new StubListener<Message1>();
            var listener2 = new StubListener<Message1>();
            var listener3 = new StubListener<Message1>();
            var listener4 = new StubListener<Message2>();

            events.AddListeners(listener1, listener2, listener3, this, listener4);
            events.AddListener(new ErrorCausingHandler());

            var message1 = new Message1();
            var message2 = new Message2();

            events.SendMessage(message1);
            events.SendMessage(message2);

            Wait.Until(
                () =>
                    listener1.LastMessage != null && listener2.LastMessage != null && listener3.LastMessage != null &&
                    listener4.LastMessage != null);

            listener1.LastMessage.ShouldBeTheSameAs(message1);
            listener2.LastMessage.ShouldBeTheSameAs(message1);
            listener3.LastMessage.ShouldBeTheSameAs(message1);

            listener4.LastMessage.ShouldBeTheSameAs(message2);
        }
        public void enqueue_an_oject_array()
        {
            var messages = new FubuTransportation.Runtime.Invocation.InvocationContext(new Envelope{Message = new Message1()}, new HandlerChain());
            var m1 = new Message1();
            var m2 = new Message2();

            messages.EnqueueCascading(new object[]{m1, m2});

            messages.OutgoingMessages().ShouldHaveTheSameElementsAs(m1, m2);
        }
        public void enqueue()
        {
            var messages = new FubuMVC.Core.ServiceBus.Runtime.Invocation.InvocationContext(new Envelope{Message = new Message1()}, new HandlerChain());
            var m1 = new Message1();
            var m2 = new Message2();

            messages.EnqueueCascading(m1);
            messages.EnqueueCascading(m2);

            messages.OutgoingMessages().ShouldHaveTheSameElementsAs(m1, m2);
        }
        public void SubscriberShouldNotReceiveMessageWhichItIsNotSubscribedTo()
        {
            var mock = new Mock<ISubscriber<Message1>>();
            var eventAggregator = new EventAggregator();

            eventAggregator.Subscribe(mock.Object);
            var msg = new Message2();
            eventAggregator.Publish(msg);

            mock.Verify(s => s.Handle(It.IsAny<Message1>()), Times.Never());
        }
Beispiel #6
0
		public static IMessage GetRemoveObjectTask(WorldObject obj, Map rgn)
		{
		    var moveTask = new Message2<WorldObject, Map>();

			moveTask.Parameter1 = obj;
			moveTask.Parameter2 = rgn;

            moveTask.Callback = ((worldObj, objRgn) =>
            {
                objRgn.RemoveObjectNow(worldObj);
            });

			return moveTask;
		}
Beispiel #7
0
		public static IMessage GetInitializeCharacterTask(Character chr, Map rgn)
		{
			var initTask = new Message2<Character, Map>();

			initTask.Parameter1 = chr;
			initTask.Parameter2 = rgn;

			initTask.Callback = ((initChr, initRgn) =>
			{
				initRgn.AddObjectNow(chr);
				//Map.s_log.Debug("Owner added to the map");

				//Map.s_log.Debug("Owner initialized");
			});

			return initTask;
		}
Beispiel #8
0
        public void EnsureWithMultipleMessageTypesInterfaceHandlerIsInvoked()
        {
            var      bus = new Bus();
            Message1 receivedMessage1 = null;

            bus.AddHandler(new ActionConsumer <Message1>(m => receivedMessage1 = m));
            Message2 receivedMessage2 = null;

            bus.AddHandler(new ActionConsumer <Message2>(m => receivedMessage2 = m));
            string text = null;

            bus.AddHandler(new ActionConsumer <IEvent>(_ => { text = "ding"; }));

            var message1 = new Message1 {
                CorrelationId = "1234"
            };

            bus.Handle(message1);
            bus.Handle(new TheEvent());
            Assert.AreSame(message1, receivedMessage1);
            Assert.IsNotNull(receivedMessage1);
            Assert.AreEqual(message1.CorrelationId, receivedMessage1.CorrelationId);
            Assert.AreEqual("ding", text);
        }
Beispiel #9
0
 public void Process(Message2 message) => ProcessedMessages2.Add(message);
Beispiel #10
0
 public void Post([FromBody] Message2 message2)
 {
     _db.MessagesTest2.Add(message2);
     _db.SaveChanges();
 }
 public void Handle(Message2 _)
 {
     MarkAsComplete();
     Context.Completed = true;
 }
Beispiel #12
0
 public void Handle(Message2 message)
 {
     ReplyToOriginator(new AlmostDoneMessage {
         SomeID = Data.SomeID
     });
 }
Beispiel #13
0
 protected bool Equals(Message2 other)
 {
     return string.Equals(Name, other.Name);
 }
 public Task Handle(Message2 message, IMessageHandlerContext context)
 {
     MarkAsComplete();
     return(context.SendLocal(new SagaCompleted()));
 }
Beispiel #15
0
 public ValueTask <bool> ProcessMessageAsync(Message2 message, CancellationToken cancellation)
 {
     return(new ValueTask <bool>(message != null));
 }
Beispiel #16
0
 public void Handle(Message2 message)
 {
     MarkAsComplete();
     Bus.SendLocal(new SagaCompleted());
 }
 public void Handle(Message2 message2)
 {
 }
Beispiel #18
0
 public void Consume(Message2 message)
 {
 }
Beispiel #19
0
    // Update is called once per frame
    void Update()
    {
        Time.timeScale   = 1;
        waitingHappened -= Time.deltaTime;

        if (waitingHappened <= 0)
        {
            switch (SequenceNumber)
            {
            case 0:
                myAudioSource.Play();
                Message1ReturnToOld = Message1.GetComponent <Text>().text;
                SequenceNumber      = 1;
                waitingHappened     = waitTime;
                MessageBackdrop.SetActive(true);
                Message1.SetActive(true);
                break;

            case 1:
                myAudioSource.Stop();
                SequenceNumber  = 2;
                waitingHappened = waitTime * 2;
                Message1.GetComponent <Text>().text += ".";
                break;

            case 2:
                SequenceNumber  = 3;
                waitingHappened = waitTime;
                Message1.GetComponent <Text>().text += ".";
                OptionsSaveLoad.LoadSettings(true);
                break;

            case 3:
                if (OptionsSaveLoad.OptionsSaveExists)
                {
                    SequenceNumber  = 5;
                    waitingHappened = waitTime;
                    Message1.GetComponent <Text>().text += ".";
                    //OptionsSaveLoad.LoadSettings(true);
                }
                else
                {
                    SequenceNumber  = 4;
                    waitingHappened = waitTime * 2;
                    Message1.GetComponent <Text>().text = Message1Error;
                    myAudioSource.Play();
                    GameOptions.current = new GameOptions();
                }
                break;

            case 4:
                //myAudioSource.Stop();
                SequenceNumber  = 5;
                waitingHappened = waitTime;
                Message1.GetComponent <Text>().text = Message1ReturnToOld + "..";
                OptionsSaveLoad.SaveSettings();
                break;

            case 5:
                //myAudioSource.Stop();
                SequenceNumber  = 6;
                waitingHappened = waitTime * 2;
                Message1.GetComponent <Text>().text = Message1ReturnToOld + "...";
                break;

            case 6:
                SequenceNumber  = 7;
                waitingHappened = waitTime;
                Message1.SetActive(false);
                MessageBackdrop.SetActive(false);
                break;

            case 7:
                myAudioSource.Play();
                SequenceNumber  = 8;
                waitingHappened = waitTime;
                MessageBackdrop.SetActive(true);
                Message2.SetActive(true);
                break;

            case 8:
                //myAudioSource.Stop();
                SequenceNumber  = 9;
                waitingHappened = waitTime;
                Message2.SetActive(false);
                MessageBackdrop.SetActive(false);
                break;

            case 9:
                SceneManager.LoadScene(NextSceneNameHere);
                break;
            }
        }
    }
 public void Handle(Message2 message, Envelope envelope)
 {
     Received.Add(envelope);
 }
Beispiel #21
0
 public Task Simple2(Message2 message)
 {
     LastMessage2 = message;
     return(Task.CompletedTask);
 }
Beispiel #22
0
 public Task Handle(Message2 _, IMessageHandlerContext context)
 {
     MarkAsComplete();
     Context.Completed = true;
     return(Task.FromResult(0));
 }
Beispiel #23
0
 public void Simple2(Message2 message)
 {
     LastMessage2 = message;
 }
Beispiel #24
0
        public static void HandleCharCreateRequest(IRealmClient client, RealmPacketIn packet)
        {
            var acc = client.Account;
            if (acc == null || client.ActiveCharacter != null)
                return;

            try
            {
                var characterName = packet.ReadCString();
                var errorCode = IsNameValid(ref characterName);

                if (errorCode != LoginErrorCode.RESPONSE_SUCCESS)
                {
                    SendCharCreateReply(client, errorCode);
                    return;
                }

                if (CharacterRecord.Exists(characterName))
                {
                    SendCharCreateReply(client, LoginErrorCode.CHAR_CREATE_NAME_IN_USE);
                    return;
                }

                var chrRace = (RaceId)packet.ReadByte();
                var chrClass = (ClassId)packet.ReadByte();

                var archetype = ArchetypeMgr.GetArchetype(chrRace, chrClass);
                if (archetype == null)
                {
                    SendCharCreateReply(client, LoginErrorCode.CHAR_CREATE_ERROR);
                    return;
                }

                if (!acc.Role.IsStaff)
                {
                    if (archetype.Class.StartLevel > BaseClass.DefaultStartLevel && acc.HighestCharLevel < archetype.Class.StartLevel)
                    {
                        SendCharCreateReply(client, LoginErrorCode.CHAR_CREATE_LEVEL_REQUIREMENT);
                        return;
                    }

                    //if (!RealmServer.Instance.ServerRules.CanCreateCharacter(client, chrRace, chrClass, out errorCode))
                    //{
                    //    SendCharCreateReply(client, errorCode);
                    //    return;
                    //}
                }

                var record = CharacterRecord.CreateNewCharacterRecord(client.Account, characterName);

                if (record == null)
                {
                    log.Error("Unable to create character record!");
                    SendCharCreateReply(client, LoginErrorCode.CHAR_CREATE_ERROR);

                    return;
                }

                var gender = (GenderType)packet.ReadByte();
                record.Gender = gender;
                record.Skin = packet.ReadByte();
                record.Face = packet.ReadByte();
                record.HairStyle = packet.ReadByte();
                record.HairColor = packet.ReadByte();
                record.FacialHair = packet.ReadByte();
                record.Outfit = packet.ReadByte();
                record.GodMode = acc.Role.AppearAsGM;

                record.SetupNewRecord(archetype);

                var charCreateTask = new Message2<IRealmClient, CharacterRecord>
                {
                    Callback = CharCreateCallback,
                    Parameter1 = client,
                    Parameter2 = record
                };

                RealmServer.IOQueue.AddMessage(charCreateTask);
            }
            catch (Exception e)
            {
                LogUtil.ErrorException(e);
                SendCharCreateReply(client, LoginErrorCode.CHAR_CREATE_ERROR);
            }
        }
 public override Task <Reply> Send(Message2 request, ServerCallContext context)
 {
     Console.WriteLine($"GRPC Core - Otrzymano wiadomoϾ: {request.Subject} {request.Created}");
     return(Task.FromResult(new Reply()));
 }
Beispiel #26
0
 public void Handle(Message2 message)
 {
     // code to handle Message2
 }
Beispiel #27
0
 public void Delete(Message2 message)
 {
     throw new NotImplementedException();
 }
 public void ShowProduct(Message2 msg)
 {
     Process.Start(string.Format("http://www.aliexpress.com/item/a/{0}.html", msg.ProductID));
 }
Beispiel #29
0
 public void Record(Message2 message)
 {
     _message2.SetResult(message);
 }
 public Task Handle(Message2 message, IMessageHandlerContext context)
 {
     Data.SomeId             = message.SomeId;
     Data.MessageTwoReceived = true;
     return(PerformSagaCompletionCheck(context));
 }
Beispiel #31
0
 public void Handle(Message2 msg)
 {
 }
 public Task Handle(Message2 message, IMessageHandlerContext context)
 {
     throw new NotImplementedException();
 }
Beispiel #33
0
 public Task Handle(Message2 message)
 {
     // Do work asynchronously
     return(Task.CompletedTask);
 }
Beispiel #34
0
 public void Handle(Message2 message)
 {
     _tracker.Record(message);
 }
 public void Go3(Message2 input, IService service, IService2 service2)
 {
 }
Beispiel #36
0
 public static void GoStatic(Message2 message)
 {
 }
Beispiel #37
0
 public void Handler(Message2 message, IWidget widget, IFakeService service)
 {
     LastWidget   = widget;
     LastMessage2 = message;
     LastService  = service;
 }
Beispiel #38
0
 public void Handle(Message2 message2)
 {
 }
 public void Handle(Message2 message)
 {
     LastHandledMessage = message;
 }
Beispiel #40
0
 public async Task Handle(Message2 message)
 {
     _events.Enqueue($"Handling {message.GetType().Name}");
 }
Beispiel #41
0
 public void Handle(Message2 message)
 {
     Data.SomeId             = message.SomeId;
     Data.MessageTwoReceived = true;
     PerformSagaCompletionCheck();
 }