예제 #1
0
        private void Receive()
        {
            try
            {
                var bytes = new Byte[1024];
                var data  = string.Empty;


                while (this.isStarted)
                {
                    var i = stream.Read(bytes, 0, bytes.Length);
                    if (MMSVariable.TryGetMmsVariables(bytes, out var result))
                    {
                        var receivedMmsData = new List <MMSVariable>(result.Count);

                        foreach (var variable in result)
                        {
                            receivedMmsData.Add(variable);
                        }

                        var newMessage = new NewMessageEventArgs();
                        newMessage.MmsVariables = receivedMmsData;
                        this.OnNewMessage(newMessage);
                    }
                }

                client.Close();
            }
            catch (Exception e)
            {
                throw;
            }
        }
예제 #2
0
        public bool AddTag(MMSVariable mmsVariable)
        {
            if (string.IsNullOrEmpty(mmsVariable.Name))
            {
                throw new ArgumentException("Tag must have a name");
            }

            if (this.mmsVariables.Any(x => x.Name == mmsVariable.Name))
            {
                throw new DuplicateNameException("Tag already exist");
            }

            this.mmsVariables.Add(mmsVariable);
            return(true);
        }