public static EntityStatus ConvertState(ServiceBusMessageState state) { switch (state) { case ServiceBusMessageState.Active: return(EntityStatus.Active); case ServiceBusMessageState.Disabled: return(EntityStatus.Disabled); case ServiceBusMessageState.ReceiveDisabled: return(EntityStatus.ReceiveDisabled); case ServiceBusMessageState.Restoring: return(EntityStatus.Restoring); case ServiceBusMessageState.SendDisabled: return(EntityStatus.SendDisabled); default: return(EntityStatus.Disabled); } }
/// <summary> /// Creates a new ServiceBusReceivedMessage instance for mocking. /// </summary> public static ServiceBusReceivedMessage ServiceBusReceivedMessage( BinaryData body = default, string messageId = default, string partitionKey = default, string viaPartitionKey = default, string sessionId = default, string replyToSessionId = default, TimeSpan timeToLive = default, string correlationId = default, string subject = default, string to = default, string contentType = default, string replyTo = default, DateTimeOffset scheduledEnqueueTime = default, IDictionary <string, object> properties = default, Guid lockTokenGuid = default, int deliveryCount = default, DateTimeOffset lockedUntil = default, long sequenceNumber = -1, string deadLetterSource = default, long enqueuedSequenceNumber = default, DateTimeOffset enqueuedTime = default, ServiceBusMessageState serviceBusMessageState = default) { var amqpMessage = new AmqpAnnotatedMessage(new AmqpMessageBody(new ReadOnlyMemory <byte>[] { body })); if (correlationId != default) { amqpMessage.Properties.CorrelationId = new AmqpMessageId(correlationId); } amqpMessage.Properties.Subject = subject; if (to != default) { amqpMessage.Properties.To = new AmqpAddress(to); } amqpMessage.Properties.ContentType = contentType; if (replyTo != default) { amqpMessage.Properties.ReplyTo = new AmqpAddress(replyTo); } amqpMessage.MessageAnnotations[AmqpMessageConstants.ScheduledEnqueueTimeUtcName] = scheduledEnqueueTime.UtcDateTime; if (messageId != default) { amqpMessage.Properties.MessageId = new AmqpMessageId(messageId); } if (partitionKey != default) { amqpMessage.MessageAnnotations[AmqpMessageConstants.PartitionKeyName] = partitionKey; } if (viaPartitionKey != default) { amqpMessage.MessageAnnotations[AmqpMessageConstants.ViaPartitionKeyName] = viaPartitionKey; } if (sessionId != default) { amqpMessage.Properties.GroupId = sessionId; } if (replyToSessionId != default) { amqpMessage.Properties.ReplyToGroupId = replyToSessionId; } if (timeToLive != default) { amqpMessage.Header.TimeToLive = timeToLive; } if (properties != default) { foreach (KeyValuePair <string, object> kvp in properties) { amqpMessage.ApplicationProperties.Add(kvp); } } amqpMessage.Header.DeliveryCount = (uint)deliveryCount; amqpMessage.MessageAnnotations[AmqpMessageConstants.LockedUntilName] = lockedUntil.UtcDateTime; amqpMessage.MessageAnnotations[AmqpMessageConstants.SequenceNumberName] = sequenceNumber; amqpMessage.MessageAnnotations[AmqpMessageConstants.DeadLetterSourceName] = deadLetterSource; amqpMessage.MessageAnnotations[AmqpMessageConstants.EnqueueSequenceNumberName] = enqueuedSequenceNumber; amqpMessage.MessageAnnotations[AmqpMessageConstants.EnqueuedTimeUtcName] = enqueuedTime.UtcDateTime; amqpMessage.MessageAnnotations[AmqpMessageConstants.MessageStateName] = serviceBusMessageState; return(new ServiceBusReceivedMessage(amqpMessage) { LockTokenGuid = lockTokenGuid, }); }