public void Delete(UniqueIdentifier id)
 {
     using (Message message = MessageComposer.CreateDeleteMessage(id))
     {
         using (Message responseMessage = this.Invoke((c) => c.Delete(message)))
         {
             responseMessage.ThrowOnFault();
         }
     }
 }
        public void Delete(IEnumerable <UniqueIdentifier> resourceIDs)
        {
            if (!resourceIDs.Any())
            {
                return;
            }

            using (Message message = MessageComposer.CreateDeleteMessage(resourceIDs))
            {
                using (Message responseMessage = this.Invoke((c) => c.Delete(message)))
                {
                    responseMessage.ThrowOnFault();
                }
            }
        }
Example #3
0
        public void Delete(UniqueIdentifier id)
        {
            if (id == null)
            {
                throw new ArgumentNullException(nameof(id));
            }

            using (Message message = MessageComposer.CreateDeleteMessage(id))
            {
                using (Message responseMessage = this.Invoke((c) => c.Delete(message)))
                {
                    responseMessage.ThrowOnFault();
                }
            }
        }
        public void Delete(IEnumerable <UniqueIdentifier> resourceIDs)
        {
            if (resourceIDs == null)
            {
                throw new ArgumentNullException(nameof(resourceIDs));
            }

            using (Message message = MessageComposer.CreateDeleteMessage(resourceIDs.ToArray()))
            {
                using (Message responseMessage = this.Invoke((c) => c.Delete(message)))
                {
                    responseMessage.ThrowOnFault();
                }
            }
        }
        internal static Message CreateDeleteMessage(UniqueIdentifier[] ids)
        {
            if (ids == null || ids.Length == 0)
            {
                throw new ArgumentNullException(nameof(ids));
            }
            else if (ids.Length == 1)
            {
                return(MessageComposer.CreateDeleteMessage(ids.First()));
            }

            MessageComposer.ThrowOnDeleteBuiltInResource(ids);

            Message message = Message.CreateMessage(MessageVersion.Default, Namespaces.Delete);

            message.AddHeader(Namespaces.ResourceManagement, HeaderConstants.CompositeTypeOperation, null);
            message.AddHeader(HeaderConstants.ResourceReferenceProperty, ids.Select(t => t.ToString()).ToCommaSeparatedString());

            return(message);
        }