public void AddMessage(CrmMessage message) { if (message == null) { throw new ArgumentNullException("message"); } else if (m_messageList.ContainsKey(message.MessageId)) { throw new ArgumentException("Message is already in the list"); } else { ValidateEntity(message); } m_messageList.Add(message.MessageId, message); }
public void RemoveMessageEntity(CrmMessage message, Guid messageEntityId) { if (message == null) { throw new ArgumentNullException("message"); } else if (message.MessageEntities.ContainsKey(messageEntityId)) { message.RemoveMessageEntity(messageEntityId); } else if (m_messageEntityList.ContainsKey(messageEntityId)) { m_messageEntityList.Remove(messageEntityId); } else { throw new ArgumentException("MessageEntity is not in list", "messageEntityId"); } }
private void ValidateEntity(CrmMessage message) { if (message == null) { throw new ArgumentNullException(); } else if (m_messageList.ContainsKey(message.MessageId)) { throw new ArgumentException("Message is already in the list"); } else if (message.Organization != this) { throw new ArgumentException("Organization must match"); } else if (message.MessageId == Guid.Empty) { throw new ArgumentException("MessageId must be set to valid Guid"); } }
public void AddMessageEntity(CrmMessage message, CrmMessageEntity entity) { if (message == null) { throw new ArgumentNullException("message"); } else if (entity == null) { throw new ArgumentNullException("entity"); } else if (!message.MessageEntities.ContainsKey(entity.MessageEntityId)) { message.AddMessageEntity(entity); return; } else { ValidateEntity(entity); } m_messageEntityList.Add(entity.EntityId, entity); }
public void RemoveMessage(Guid messageId) { if (m_messageList.ContainsKey(messageId)) { CrmMessage message = m_messageList[messageId]; //Copy the list of MessageEntities. Can't use the enumerator because we are changing the underlying data Guid[] entityIdList = new Guid[message.MessageEntities.Count]; message.MessageEntities.Keys.CopyTo(entityIdList, 0); //Loop through the MessageEntity id's foreach (Guid messageEntityId in entityIdList) { RemoveMessageEntity(message, messageEntityId); } m_messageList.Remove(messageId); } else { throw new ArgumentException("Invalid Message Id", "messageId"); } }