com.microsoft.azure.sdk.iot.device.IotHubMessageResult Maven / Gradle / Ivy
Show all versions of iot-device-client Show documentation
// Copyright (c) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
package com.microsoft.azure.sdk.iot.device;
/**
* A return value from a message callback that instructs an IoT hub to complete, abandon, or reject the message. These
* states are only valid for AMQP messages.
*
* See The cloud-to-device message life cycle
* for more details on the states and what it means for message delivery and retry.
*
*/
public enum IotHubMessageResult
{
/**
* Instructs IoT hub to complete the message.
*
* This will remove it from the IoT hub messaging queue and set the message to the Completed state.
*
*/
COMPLETE,
/**
* Instructs IoT hub to abandon the message.
*
* This will put the message back into the IoT hub messaging queue to be processed again. The message will
* be enqueued back to the IoT hub messaging queue for the value specified for "Max Delivery Count" times.
* After the max is reached, the message will be set to to the dead lettered state and removed.
*
*/
ABANDON,
/**
* Instructs IoT hub to reject the message.
*
* This will remove the message from the IoT hub messaging queue and sets the message to the dead lettered state.
*
*/
REJECT
}