Ejemplo n.º 1
0
        private void removeTagButton_Click(object sender, EventArgs e)
        {
            TaggerEventArgs args = new TaggerEventArgs();

            if (chatTable.SelectedObjects != null)
            {
                foreach (var obj in chatTable.SelectedObjects)
                {
                    DynamicMessage dyn = obj as DynamicMessage;
                    args.messages = new List <int>();
                    args.messages.Add(dyn.Id);
                    if (dyn.Situations.Count == 1)
                    {
                        args.Tag = dyn.Situations.FirstOrDefault().Key;
                        args.Id  = dyn.Situations.FirstOrDefault().Value;
                        RemoveTag?.Invoke(this, args);
                    }
                    if (dyn.Situations.Count > 1)
                    {
                        //todo
                    }
                    //MessageContainer.Messages[dyn.Id].Situations.Clear();
                }
            }
        }
 internal string OnTagValueGetter(OLVColumn cl, object o, string key)
 {
     //I mean shouldnt this work with AspectName instead lmao
     if (cl.Name != "Tag")
     {
         DynamicMessage message = (DynamicMessage)o;
         return(message.Contents[key].ToString());
     }
     else
     {
         if (o != null)
         {
             DynamicMessage m = (DynamicMessage)o;
             if (m.Situations != null)
             {
                 return(String.Join(",", m.Situations.ToArray()));
             }
             else
             {
                 return("");
             }
         }
         else
         {
             return("");
         }
     }
 }
Ejemplo n.º 3
0
        private void addTagButton_Click(object sender, EventArgs e)
        {
            if (tagsetView.SelectedItems.Count != 0 && chatTable.SelectedObjects.Count != 0)
            {
                TaggerEventArgs args = new TaggerEventArgs();
                args.Id = IndexEngine.SituationIndex.TagsetCounter[tagsetView.SelectedItems[0].Text];

                args.Tag = tagsetView.SelectedItems[0].Text;

                args.messages = new List <int>();

                foreach (var obj in chatTable.SelectedObjects)
                {
                    DynamicMessage msg = (DynamicMessage)obj;
                    args.messages.Add(msg.Id);
                }

                AddTag?.Invoke(this, args);

                //fastSituationView.Items.Add(args.Tag + " " + args.Id);
                chatTable.UpdateObjects(MessageContainer.Messages.FindAll(x => args.messages.Contains(x.Id)));
            }
            else
            {
                MessageBox.Show("Select a tag and messages first");
            }
        }
Ejemplo n.º 4
0
        public void TestDynamicMessage()
        {
            const string definition =
                "uint32 seq\n" +
                "time stamp\n" +
                "string frame_id";

            DynamicMessage message =
                DynamicMessage.CreateFromDependencyString("iviz_test/Header", definition);

            Assert.True(message.Fields.Count == 3);

            Assert.True(message.Fields[0].TrySet((uint)1));
            Assert.False(message.Fields[0].TrySet(0)); // int, not uint
            Assert.False(message.Fields[0].TrySet("a"));

            time now = new time(DateTime.Now);

            Assert.True(message.Fields[1].TrySet(now));
            Assert.False(message.Fields[1].TrySet("a"));

            Assert.True(message.Fields[2].TrySet("map"));
            Assert.False(message.Fields[2].TrySet(0));

            var realHeader = new Header(1, now, "map");

            Assert.True(message.RosInstanceMd5Sum == Header.RosMd5Sum);
            Assert.True(message.RosMessageLength == realHeader.RosMessageLength);

            byte[] messageBytes      = message.SerializeToArray();
            byte[] otherMessageBytes = realHeader.SerializeToArray();

            Assert.True(messageBytes.SequenceEqual(otherMessageBytes));
        }
Ejemplo n.º 5
0
        /// <summary>
        /// </summary>
        /// <param name="message">
        /// </param>
        public void Send(MessageBase message)
        {
            var temp = new DynamicMessage();

            temp.DataObject = message;
            this.Send(temp);
        }
Ejemplo n.º 6
0
        public bool Send(DynamicMessage request)
        {
            var hubContext = GlobalHost.ConnectionManager.GetHubContext <MessageHub>();

            hubContext.Clients.Users(request.UserIds.Select(p => p.ToString()).ToList()).broadcastMessage(request.DynamicShowArea);
            return(true);
        }
Ejemplo n.º 7
0
 /// <summary>
 /// </summary>
 /// <param name="client">
 /// </param>
 /// <param name="messageObject">
 /// </param>
 internal void ISComDataReceived(IClient client, DynamicMessage messageObject)
 {
     if (messageObject.DataObject is VicinityChatMessage)
     {
         this.DistributeVicinityChat((VicinityChatMessage)messageObject.DataObject);
     }
 }
Ejemplo n.º 8
0
 /// <summary>
 /// </summary>
 /// <param name="messageobject">
 /// </param>
 internal void ProcessISComMessage(DynamicMessage messageobject)
 {
     // Switch to handlers
     if (messageobject.DataObject is ChatCommand)
     {
         this.HandleChatCommand((ChatCommand)messageobject.DataObject);
     }
 }
Ejemplo n.º 9
0
        /// <summary>
        /// </summary>
        /// <param name="client">
        /// </param>
        /// <param name="messageObject">
        /// </param>
        internal void ISComDataReceived(object sender, DynamicMessage messageObject)
        {
            var message = messageObject.DataObject as VicinityChatMessage;

            if (message != null)
            {
                this.DistributeVicinityChat(message);
            }
        }
Ejemplo n.º 10
0
        private void FastObjectListView1_FormatRow(object sender, FormatRowEventArgs e)
        {
            DynamicMessage dyn = (DynamicMessage)e.Item.RowObject;

            if (Hits.Contains(dyn.Id))
            {
                e.Item.BackColor = Color.Pink;
            }
        }
Ejemplo n.º 11
0
        /// <summary>
        /// </summary>
        /// <param name="client">
        /// </param>
        /// <param name="dataBytes">
        /// </param>
        private void ISComV2ServerDataReceived(object sender, OnDataReceivedArgs e)
        {
            if (this.DataReceived != null)
            {
                MessagePackSerializer <DynamicMessage> serializer = MessagePackSerializer.Create <DynamicMessage>();
                DynamicMessage result = serializer.UnpackSingleObject(e.dataBytes);

                this.DataReceived(sender, result);
            }
        }
Ejemplo n.º 12
0
        /// <summary>
        /// </summary>
        /// <param name="client">
        /// </param>
        /// <param name="dataBytes">
        /// </param>
        private void ISComV2ServerDataReceived(ISComV2ClientHandler client, byte[] dataBytes)
        {
            if (this.DataReceived != null)
            {
                MessagePackSerializer <DynamicMessage> serializer = MessagePackSerializer.Create <DynamicMessage>();
                DynamicMessage result = serializer.UnpackSingleObject(dataBytes);

                this.DataReceived(client, result);
            }
        }
Ejemplo n.º 13
0
        public void TestDynamicMessageWrongDefinition()
        {
            const string wrongDefinition =
                "float seq      #no float type!\n" +
                "time stamp                    \n" +
                "string frame_id               \n";

            Assert.Catch <MessageDependencyException>(() =>
                                                      DynamicMessage.CreateFromDependencyString("iviz_test/Header", wrongDefinition));
        }
Ejemplo n.º 14
0
        /// <summary>
        /// </summary>
        /// <param name="dataBytes">
        /// </param>
        private void clientBase_ReceivedData(byte[] dataBytes)
        {
            MessagePackSerializer <DynamicMessage> serializer = MessagePackSerializer.Create <DynamicMessage>();
            DynamicMessage tmp = serializer.UnpackSingleObject(dataBytes);

            // Is the handler set?
            if (this.OnReceiveData != null)
            {
                this.OnReceiveData(tmp);
            }
        }
Ejemplo n.º 15
0
        /// <summary>
        /// </summary>
        /// <param name="dataBytes">
        /// </param>
        private void ClientBaseReceivedData(object sender, OnDataReceivedArgs e)
        {
            MessagePackSerializer <DynamicMessage> serializer = MessagePackSerializer.Create <DynamicMessage>();
            DynamicMessage tmp = serializer.UnpackSingleObject(e.dataBytes);

            // Is the handler set?
            if (this.OnReceiveData != null)
            {
                this.OnReceiveData(this, tmp);
            }
        }
Ejemplo n.º 16
0
        /// <summary>
        /// </summary>
        /// <param name="dataObject">
        /// </param>
        public void Send(DynamicMessage dataObject)
        {
            MessagePackSerializer <object> serializer = MessagePackSerializer.Create <object>();

            byte[] data   = serializer.PackSingleObject(dataObject);
            byte[] header = new byte[8];
            BitConverter.GetBytes(0x00ff55aa).CopyTo(header, 0);
            BitConverter.GetBytes(data.Length).CopyTo(header, 4);
            this.Send(header);
            this.Send(data);
        }
Ejemplo n.º 17
0
        /// <summary>
        /// </summary>
        /// <param name="dataObject">
        /// </param>
        public void Send(DynamicMessage dataObject)
        {
            MessagePackSerializer <object> serializer = MessagePackSerializer.Create <object>();

            byte[] data      = serializer.PackSingleObject(dataObject);
            byte[] finalData = new byte[8 + data.Length];
            BitConverter.GetBytes(0x00ff55aa).CopyTo(finalData, 0);
            BitConverter.GetBytes(data.Length).CopyTo(finalData, 4);
            Array.Copy(data, 0, finalData, 8, data.Length);
            this.clientBase.Send(finalData);
        }
Ejemplo n.º 18
0
 public TopicInfo(string callerId, string topic, DynamicMessage generator)
     : this(
         generator.RosInstanceDependencies ??
         throw new NullReferenceException("Dynamic message has not been initialized"),
         callerId, topic,
         generator.RosInstanceMd5Sum ??
         throw new NullReferenceException("Dynamic message has not been initialized"),
         generator.RosType,
         generator as IDeserializable <T> ??
         throw new InvalidOperationException("Type T needs to be DynamicMessage"))
 {
 }
        private void ChatTable_FormatRow(object sender, FormatRowEventArgs e)
        {
            DynamicMessage dyn = (DynamicMessage)e.Item.RowObject;

            if (TagsetColors != null)
            {
                if (dyn.Situations.Count != 0)
                {
                    e.Item.BackColor = TagsetColors[dyn.Situations.Keys.ToList <string>()[0]];
                }
            }
        }
 public bool Filter(object modelObject)
 {
     if (modelObject is DynamicMessage)
     {
         DynamicMessage d = (DynamicMessage)modelObject;
         if (d.Situations.Count != 0)
         {
             return(true);
         }
         return(false);
     }
     return(false);
 }
Ejemplo n.º 21
0
        public Task SendToTopic(CancellationToken cancellationToken)
        {
            var uspsMessage = new DynamicMessage
            {
                OrderId      = "1www",
                PrintDate    = DateTimeOffset.Now,
                TrackingInfo = Guid.NewGuid().ToString()
            };

            var topic = _producers.First(x => x.Named == ServiceBusNames.TopicSubscriptions);

            // specify label/ subject
            return(topic.SendMessageAsync(uspsMessage));
        }
Ejemplo n.º 22
0
        /// <summary>
        /// The received object.
        /// </summary>
        /// <param name="result">
        /// The result.
        /// </param>
        private void ReceivedObject(IAsyncResult result)
        {
            this.stream.EndRead(result);
            var buffer = result.AsyncState as byte[];

            if (buffer != null)
            {
                BaseMessage bm = DynamicMessage.Unpack(buffer);
                EventHandler <ReceivedObjectEventArgs> handler = this.ObjectReceived;
                if (handler != null)
                {
                    handler(this, new ReceivedObjectEventArgs(bm));
                }
            }
        }
Ejemplo n.º 23
0
        /// <summary>
        /// </summary>
        /// <param name="client">
        /// </param>
        /// <param name="messageObject">
        /// </param>
        internal void ISComDataReceived(object sender, DynamicMessage messageObject)
        {
            var message = messageObject.DataObject as VicinityChatMessage;

            if (message != null)
            {
                this.DistributeVicinityChat(message);
            }
            var requestPlayfieldList = messageObject.DataObject as RequestPlayfieldList;

            if (requestPlayfieldList != null)
            {
                this.PushRequestPlayfieldListReply(requestPlayfieldList);
            }
        }
Ejemplo n.º 24
0
        /// <summary>
        /// </summary>
        /// <param name="messageobject">
        /// </param>
        internal void ProcessISComMessage(DynamicMessage messageobject)
        {
            // Switch to handlers
            var chatCommand = messageobject.DataObject as ChatCommand;

            if (chatCommand != null)
            {
                this.HandleChatCommand(chatCommand);
            }

            var requestPlayfieldList = messageobject.DataObject as RequestPlayfieldList;

            if (requestPlayfieldList != null)
            {
                this.HandleRequestPlayfieldList(requestPlayfieldList);
            }
        }
Ejemplo n.º 25
0
        public List <DynamicMessage> MakeSearchResultsReadable()
        {
            List <DynamicMessage> searchResults = new List <DynamicMessage>();

            for (int i = 0; i < Hits.TotalHits; i++)
            {
                List <string> data = new List <string>();
                ScoreDoc      d    = Hits.ScoreDocs[i];
                Document      idoc = LuceneService.Searcher.Doc(d.Doc);
                foreach (var field in ProjectInfo.Data.SelectedFields)
                {
                    data.Add(idoc.GetField(field).GetStringValue());
                }

                DynamicMessage message = new DynamicMessage(data, ProjectInfo.Data.SelectedFields, ProjectInfo.DateFieldKey,
                                                            idoc.GetField("id").GetInt32Value().Value);
                searchResults.Add(message);
            }
            return(searchResults);
        }
Ejemplo n.º 26
0
        public void TestDynamicMessageWithDependencies()
        {
            const string fullDependencies = @"
            Header header
            string child_frame_id # the frame id of the child frame
            geometry_msgs/Transform transform
            ================================================================================
            MSG: std_msgs/Header
            uint32 seq
            time stamp
            string frame_id
            ================================================================================
            MSG: geometry_msgs/Transform
            Vector3 translation
            Quaternion rotation
            ================================================================================
            MSG: geometry_msgs/Vector3
            float64 x
            float64 y
            float64 z
            ================================================================================
            MSG: geometry_msgs/Quaternion
            float64 x
            float64 y
            float64 z
            float64 w
            ";

            DynamicMessage message =
                DynamicMessage.CreateFromDependencyString("iviz_test/TransformStamped", fullDependencies);

            var realTransformStamped = new TransformStamped();

            Assert.True(message.RosInstanceMd5Sum == TransformStamped.RosMd5Sum);
            Assert.True(message.RosMessageLength == realTransformStamped.RosMessageLength);

            byte[] messageBytes      = message.SerializeToArray();
            byte[] otherMessageBytes = realTransformStamped.SerializeToArray();

            Assert.True(messageBytes.SequenceEqual(otherMessageBytes));
        }
Ejemplo n.º 27
0
        private void SetUpChatView()
        {
            List <OLVColumn> columns = new List <OLVColumn>();

            foreach (var key in ProjectInfo.Data.SelectedFields)
            {
                OLVColumn cl = new OLVColumn();
                cl.AspectGetter = delegate(object x)
                {
                    DynamicMessage message = (DynamicMessage)x;
                    return(message.Contents[key]);
                };
                cl.Text     = key;
                cl.WordWrap = true;


                columns.Add(cl);
            }
            suggesterView.AllColumns.Clear();
            suggesterView.AllColumns.AddRange(columns);

            foreach (var cl in suggesterView.AllColumns)
            {
                if (cl.Text != ProjectInfo.TextFieldKey)
                {
                    cl.AutoResize(ColumnHeaderAutoResizeStyle.ColumnContent);
                }
                else
                {
                    cl.FillsFreeSpace = true;
                }
            }

            suggesterView.RebuildColumns();
            suggesterView.Refresh();
        }
Ejemplo n.º 28
0
 /// <summary>
 /// </summary>
 /// <param name="messageobject">
 /// </param>
 private static void ISComClientOnReceiveData(object sender, DynamicMessage messageobject)
 {
     zoneServer.ProcessISComMessage(messageobject);
 }
Ejemplo n.º 29
0
 /// <summary>
 /// The send.
 /// </summary>
 /// <param name="messageData">
 /// The message data.
 /// </param>
 public void Send(BaseMessage messageData)
 {
     this.Send(DynamicMessage.Pack(messageData));
 }
Ejemplo n.º 30
0
        /// <summary>
        /// 重新加载配置
        /// </summary>
        /// <returns>返回是否加载成功</returns>
        public bool Reload()
        {
            Clear();

            try {
                var header_desc = factory.GetMsgDiscriptor("com.owent.xresloader.pb.xresloader_datablocks");
                if (null == header_desc)
                {
                    ExcelConfigManager.LastError = string.Format("load configure file {0} failed, com.owent.xresloader.pb.xresloader_datablocks not registered", fileName);
                    return(false);
                }

                var msg_desc = factory.GetMsgDiscriptor(protocol);
                if (null == msg_desc)
                {
                    ExcelConfigManager.LastError = string.Format("load configure file {0} failed, {1} not registered", fileName, protocol);
                    return(false);
                }

                DynamicMessage data_set = factory.Decode(header_desc, ExcelConfigManager.GetFileStream(fileName));
                if (null == data_set)
                {
                    ExcelConfigManager.LastError = string.Format("load configure file {0} failed, {1}", fileName, factory.LastError);
                    return(false);
                }

                foreach (var cfg_item in data_set.GetFieldList("data_block"))
                {
                    DynamicMessage data_item = factory.Decode(msg_desc, new MemoryStream((byte[])cfg_item));
                    if (null == data_item)
                    {
                        ExcelConfigManager.LastError = string.Format("load configure file {0} failed, {1}", fileName, factory.LastError);
                        continue;
                    }

                    bool filter_pass = true;
                    foreach (var fn in filters)
                    {
                        filter_pass = fn(data_item);
                        if (!filter_pass)
                        {
                            break;
                        }
                    }

                    if (!filter_pass)
                    {
                        continue;
                    }

                    datas.Add(data_item);
                    foreach (var index in kvIndex)
                    {
                        if (null != index.Handle)
                        {
                            Key key = index.Handle(data_item);
                            index.Index[key] = data_item;
                        }
                    }

                    foreach (var index in klIndex)
                    {
                        if (null != index.Handle)
                        {
                            List <DynamicMessage> ls;
                            Key key = index.Handle(data_item);
                            if (index.Index.TryGetValue(key, out ls))
                            {
                                ls.Add(data_item);
                            }
                            else
                            {
                                index.Index[key] = new List <DynamicMessage> {
                                    data_item
                                };
                            }
                        }
                    }
                }

                foreach (var index in klIndex)
                {
                    if (null != index.SortRule)
                    {
                        foreach (var ls in index.Index)
                        {
                            ls.Value.Sort(index.SortRule);
                        }
                    }
                }
            } catch (Exception e) {
                ExcelConfigManager.LastError = string.Format("{0}", e.Message);
                return(false);
            }

            return(true);
        }