com.microsoft.azure.servicebus.MessageSession Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of azure-servicebus Show documentation
Show all versions of azure-servicebus Show documentation
Java library for Azure Service Bus
The newest version!
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
package com.microsoft.azure.servicebus;
import java.net.URI;
import java.time.Instant;
import java.util.concurrent.CompletableFuture;
import com.microsoft.azure.servicebus.primitives.MessagingEntityType;
import com.microsoft.azure.servicebus.primitives.MessagingFactory;
import com.microsoft.azure.servicebus.primitives.ServiceBusException;
public class MessageSession extends MessageReceiver implements IMessageSession {
private String requestedSessionId;
MessageSession(URI namespaceEndpointURI, String entityPath, MessagingEntityType entityType, String requestedSessionId, ClientSettings clientSettings, ReceiveMode receiveMode) {
super(namespaceEndpointURI, entityPath, entityType, clientSettings, receiveMode);
this.requestedSessionId = requestedSessionId;
}
MessageSession(MessagingFactory messagingFactory, String entityPath, MessagingEntityType entityType, String requestedSessionId, ReceiveMode receiveMode) {
super(messagingFactory, entityPath, entityType, receiveMode);
this.requestedSessionId = requestedSessionId;
}
@Override
protected final boolean isSessionReceiver() {
return true;
}
@Override
protected boolean isBrowsableSession() {
return false;
}
@Override
protected String getRequestedSessionId() {
return this.requestedSessionId;
}
@Override
public Instant getLockedUntilUtc() {
return this.getInternalReceiver().getSessionLockedUntilUtc();
}
@Override
public void renewSessionLock() throws InterruptedException, ServiceBusException {
Utils.completeFuture(this.renewSessionLockAsync());
}
@Override
public CompletableFuture renewSessionLockAsync() {
return this.getInternalReceiver().renewSessionLocksAsync();
}
@Override
public void setState(byte[] sessionState) throws InterruptedException, ServiceBusException {
Utils.completeFuture(this.setStateAsync(sessionState));
}
@Override
public CompletableFuture setStateAsync(byte[] sessionState) {
return this.getInternalReceiver().setSessionStateAsync(sessionState);
}
@Override
public byte[] getState() throws InterruptedException, ServiceBusException {
return Utils.completeFuture(this.getStateAsync());
}
@Override
public CompletableFuture getStateAsync() {
return this.getInternalReceiver().getSessionStateAsync();
}
@Override
public String getSessionId() {
return this.getInternalReceiver().getSessionId();
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy