namespace Amazon.Lambda.MQEvents
{
using System;
using System.Collections.Generic;
///
/// RabbitMQ event
/// https://docs.aws.amazon.com/lambda/latest/dg/with-mq.html
///
public class RabbitMQEvent
{
///
/// The source of the event.
///
public string EventSource { get; set; }
///
/// The ARN of the event source.
///
public string EventSourceArn { get; set; }
///
/// List of RabbitMQ messages.
///
public IDictionary> RmqMessagesByQueue { get; set; }
///
/// Class that represents a RabbitMQ message.
///
public class RabbitMQMessage
{
///
/// Properties of RabbitMQ message
///
public BasicProperties BasicProperties { get; set; }
///
/// Indicates if the message was redelivered.
///
public bool? Redelivered { get; set; }
///
/// Data sent to Rabbit MQ broker encoded in Base 64.
///
public string Data { get; set; }
}
///
/// Class representing RabbitMQ message properties.
/// https://rabbitmq.github.io/rabbitmq-dotnet-client/api/RabbitMQ.Client.IBasicProperties.html
///
public class BasicProperties
{
///
/// Content Type
///
public string ContentType { get; set; }
///
/// Content Encoding
///
public string ContentEncoding { get; set; }
///
/// Message headers
///
public IDictionary Headers { get; set; }
///
/// Delivery Mode
///
public int DeliveryMode { get; set; }
///
/// Priority
///
public int Priority { get; set; }
///
/// Correlation ID
///
public string CorrelationId { get; set; }
///
/// Reply To
///
public string ReplyTo { get; set; }
///
/// Expiration
///
public string Expiration { get; set; }
///
/// Message ID
///
public string MessageId { get; set; }
///
/// Timestamp
///
public string Timestamp { get; set; }
///
/// Message Type
///
public string Type { get; set; }
///
/// User ID
///
public string UserId { get; set; }
///
/// App ID
///
public string AppId { get; set; }
///
/// Cluster ID
///
public string ClusterId { get; set; }
///
/// Message body size
///
public int BodySize { get; set; }
}
}
}