com.microsoft.azure.eventhubs.impl.RequestResponseCloser Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of azure-eventhubs Show documentation
Show all versions of azure-eventhubs Show documentation
Please note, a newer package azure-messaging-eventhubs for Azure Event Hubs is available at https://search.maven.org/artifact/com.azure/azure-messaging-eventhubs as of February 2020. While this package will continue to receive critical bug fixes, we strongly encourage you to upgrade. Read the migration guide at https://aka.ms/azsdk/java/migrate/eh for more details.
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
package com.microsoft.azure.eventhubs.impl;
public class RequestResponseCloser implements Operation {
private FaultTolerantObject innerChannel = null;
public RequestResponseCloser() {
}
// innerChannel is not available when this object is constructed, have to set later
public void setInnerChannel(final FaultTolerantObject innerChannel) {
this.innerChannel = innerChannel;
}
@Override
public void run(OperationResult closeOperationCallback) {
final RequestResponseChannel channelToBeClosed = this.innerChannel.unsafeGetIfOpened();
if (channelToBeClosed == null) {
closeOperationCallback.onComplete(null);
} else {
channelToBeClosed.close(new OperationResultBase<>(
closeOperationCallback::onComplete,
closeOperationCallback::onError));
}
}
}