com.azure.messaging.eventhubs.implementation.EventHubAmqpConnection Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of azure-messaging-eventhubs Show documentation
Show all versions of azure-messaging-eventhubs Show documentation
Libraries built on Microsoft Azure Event Hubs
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
package com.azure.messaging.eventhubs.implementation;
import com.azure.core.amqp.AmqpConnection;
import com.azure.core.amqp.AmqpRetryOptions;
import com.azure.core.amqp.implementation.AmqpReceiveLink;
import com.azure.core.amqp.implementation.AmqpSendLink;
import com.azure.messaging.eventhubs.models.EventPosition;
import com.azure.messaging.eventhubs.models.ReceiveOptions;
import reactor.core.publisher.Mono;
/**
* A connection to a specific Event Hub resource in Azure Event Hubs.
*/
public interface EventHubAmqpConnection extends AmqpConnection {
/**
* Gets the management node for fetching metadata about the Event Hub and performing management operations.
*
* @return A Mono that completes with a session to the Event Hub's management node.
*/
Mono getManagementNode();
/**
* Creates or gets a send link. The same link is returned if there is an existing send link with the same {@code
* linkName}. Otherwise, a new link is created and returned.
*
* @param linkName The name of the link.
* @param entityPath The remote address to connect to for the message broker.
* @param retryOptions Options to use when creating the link.
* @param clientIdentifier The identifier of client.
* @return A new or existing send link that is connected to the given {@code entityPath}.
*/
Mono createSendLink(String linkName, String entityPath, AmqpRetryOptions retryOptions, String clientIdentifier);
/**
* Creates or gets an existing receive link. The same link is returned if there is an existing receive link with the
* same {@code linkName}. Otherwise, a new link is created and returned.
*
* @param linkName The name of the link.
* @param entityPath The remote address to connect to for the message broker.
* @param eventPosition Position to set the receive link to.
* @param options Consumer options to use when creating the link.
* @param clientIdentifier The identifier of client.
* @return A new or existing receive link that is connected to the given {@code entityPath}.
*/
Mono createReceiveLink(String linkName, String entityPath, EventPosition eventPosition,
ReceiveOptions options, String clientIdentifier);
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy