Beispiel #1
0
        /// <summary>
        /// Constructor with initialization. Shallow copy.
        /// </summary>
        /// <param name="arrayOfValues">values to copy.</param>
        public MessageCollection(Message[] arrayOfValues)
        {
            if (arrayOfValues == null)
            {
                throw new ArgumentNullException();
            }

            foreach (Message value in arrayOfValues)
            {
                this.Add(value);
            }
        }
Beispiel #2
0
        /// <summary>
        /// Publish the Message Available Event.
        /// </summary>
        /// <param name="localActorName">Local Actor Name.</param>
        /// <param name="remoteActorName">Remote Actor Name.</param>
        /// <param name="message">Message.</param>
        /// <param name="direction">Message direction.></param>
        public void PublishMessageAvailableEvent(ActorName localActorName, ActorName remoteActorName, Message message, MessageDirectionEnum direction)
        {
            BaseMessage baseMessage = new BaseMessage(message, direction);
            MessageAvailableEventArgs messageAvailableEvent = new MessageAvailableEventArgs(localActorName, remoteActorName, baseMessage);

            if (OnMessageAvailable != null)
            {
                OnMessageAvailable(this, messageAvailableEvent);
            }
        }
Beispiel #3
0
 /// <summary>
 /// Class constructor.
 /// </summary>
 /// <param name="message">Base message.</param>
 /// <param name="direction">Message direction.</param>
 public BaseMessage(Message message, MessageDirectionEnum direction)
 {
     _message = message;
     _direction = direction;
 }
Beispiel #4
0
 //
 // - Methods -
 //
 /// <summary>
 /// Adds a message that has been received or send by this Thread.
 /// </summary>
 /// <param name="message"></param>
 internal void AddMessage(Message message)
 {
     lock (this.threadManager.MessageLock)
     {
         this.messages.Add(message);
         this.threadManager.AddMessage(message);
     }
 }
Beispiel #5
0
 /// <summary>
 /// Removes this message from the list of received and send messages.
 /// </summary>
 /// <param name="message"></param>
 public void RemoveMessage(Message message)
 {
     lock (this.threadManager.MessageLock)
     {
         this.messages.Remove(message);
         this.threadManager.RemoveMessage(message);
     }
 }
Beispiel #6
0
 /// <summary>
 /// Removes the first occurrence of a specific item from the IList.
 /// </summary>
 /// <param name="value">The item to remove from the <see cref="System.Collections.IList"/>.</param>
 public void Remove(Message value)
 {
     base.Remove(value);
 }
Beispiel #7
0
 /// <summary>
 /// Inserts an item to the IList at the specified position.
 /// </summary>
 /// <param name="index">The zero-based index at which <c>value</c> should be inserted. </param>
 /// <param name="value">The item to insert into the <see cref="System.Collections.IList"/>.</param>
 public void Insert(int index, Message value)
 {
     base.Insert(index, value);
 }
Beispiel #8
0
 /// <summary>
 /// Determines the index of a specific item in the <see cref="System.Collections.IList"/>.
 /// </summary>
 /// <param name="value">The item to locate in the <see cref="System.Collections.IList"/>.</param>
 /// <returns>The index of <c>value</c> if found in the list; otherwise, -1.</returns>
 public int IndexOf(Message value)
 {
     return base.IndexOf(value);
 }
Beispiel #9
0
 /// <summary>
 /// Determines whether the <see cref="System.Collections.IList"/> contains a specific item.
 /// </summary>
 /// <param name="value">The item to locate in the <see cref="System.Collections.IList"/>.</param>
 /// <returns><see langword="true"/> if the item is found in the <see cref="System.Collections.IList"/>; otherwise, <see langword="false"/>.</returns>
 public bool Contains(Message value)
 {
     return base.Contains(value);
 }
Beispiel #10
0
 //
 // - Methods -
 //
 /// <summary>
 /// Adds an item to the <see cref="System.Collections.IList"/>.
 /// </summary>
 /// <param name="value">The item to add to the <see cref="System.Collections.IList"/>. </param>
 /// <returns>The position into which the new element was inserted.</returns>
 public int Add(Message value)
 {
     return base.Add(value);
 }