diff --git a/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/MessageReceiver.java b/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/MessageReceiver.java index 9d30ae1f3fc3..54bc29a4c53f 100644 --- a/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/MessageReceiver.java +++ b/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/MessageReceiver.java @@ -695,9 +695,7 @@ private CompletableFuture> renewMessageLockBatchAsync(UUID[] for(UUID lockToken : lockTokens) { if (lockTimeIterator.hasNext()) { Instant lockedUntilUtc = lockTimeIterator.next(); - if (this.requestResponseLockTokensToLockTimesMap.containsKey(lockToken)) { - this.requestResponseLockTokensToLockTimesMap.put(lockToken, lockedUntilUtc); - } + this.requestResponseLockTokensToLockTimesMap.computeIfPresent(lockToken, (k, v) -> lockedUntilUtc); } } return newLockedUntilTimes; diff --git a/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/amqp/AmqpException.java b/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/amqp/AmqpException.java index 28a317e643a1..eea86214c15b 100644 --- a/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/amqp/AmqpException.java +++ b/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/amqp/AmqpException.java @@ -3,24 +3,21 @@ package com.microsoft.azure.servicebus.amqp; -import org.apache.qpid.proton.amqp.transport.*; +import org.apache.qpid.proton.amqp.transport.ErrorCondition; /** * All AmqpExceptions - which EventHub client handles internally. */ -public class AmqpException extends Exception -{ +public class AmqpException extends Exception { private static final long serialVersionUID = -750417419234273714L; - private ErrorCondition errorCondition; + private transient ErrorCondition errorCondition; - public AmqpException(ErrorCondition errorCondition) - { + public AmqpException(ErrorCondition errorCondition) { super(errorCondition.getDescription()); this.errorCondition = errorCondition; } - public ErrorCondition getError() - { + public ErrorCondition getError() { return this.errorCondition; } } diff --git a/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/AsyncUtil.java b/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/AsyncUtil.java index 214997ea94b7..ee3ea00b826d 100644 --- a/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/AsyncUtil.java +++ b/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/AsyncUtil.java @@ -11,48 +11,41 @@ // which badly affects perf and a client can potentially kill the thread or lock the thread. class AsyncUtil { - public static boolean completeFutureAndGetStatus(CompletableFuture future, T result) - { + public static boolean completeFutureAndGetStatus(CompletableFuture future, T result) { try { - return MessagingFactory.INTERNAL_THREAD_POOL.submit(new CompleteCallable(future, result)).get(); + return MessagingFactory.INTERNAL_THREAD_POOL.submit(new CompleteCallable<>(future, result)).get(); } catch (InterruptedException | ExecutionException e) { e.printStackTrace(); return false; } } - public static void completeFuture(CompletableFuture future, T result) - { - MessagingFactory.INTERNAL_THREAD_POOL.submit(new CompleteCallable(future, result)); + public static void completeFuture(CompletableFuture future, T result) { + MessagingFactory.INTERNAL_THREAD_POOL.submit(new CompleteCallable<>(future, result)); } - public static boolean completeFutureExceptionallyAndGetStatus(CompletableFuture future, Throwable exception) - { + public static boolean completeFutureExceptionallyAndGetStatus(CompletableFuture future, Throwable exception) { try { - return MessagingFactory.INTERNAL_THREAD_POOL.submit(new CompleteExceptionallyCallable(future, exception)).get(); + return MessagingFactory.INTERNAL_THREAD_POOL.submit(new CompleteExceptionallyCallable<>(future, exception)).get(); } catch (InterruptedException | ExecutionException e) { e.printStackTrace(); return false; } } - public static void completeFutureExceptionally(CompletableFuture future, Throwable exception) - { - MessagingFactory.INTERNAL_THREAD_POOL.submit(new CompleteExceptionallyCallable(future, exception)); + public static void completeFutureExceptionally(CompletableFuture future, Throwable exception) { + MessagingFactory.INTERNAL_THREAD_POOL.submit(new CompleteExceptionallyCallable<>(future, exception)); } - public static void run(Runnable runnable) - { + public static void run(Runnable runnable) { MessagingFactory.INTERNAL_THREAD_POOL.submit(runnable); } - private static class CompleteCallable implements Callable - { + private static class CompleteCallable implements Callable { private CompletableFuture future; private T result; - CompleteCallable(CompletableFuture future, T result) - { + CompleteCallable(CompletableFuture future, T result) { this.future = future; this.result = result; } @@ -63,13 +56,11 @@ public Boolean call() throws Exception { } } - private static class CompleteExceptionallyCallable implements Callable - { + private static class CompleteExceptionallyCallable implements Callable { private CompletableFuture future; private Throwable exception; - CompleteExceptionallyCallable(CompletableFuture future, Throwable exception) - { + CompleteExceptionallyCallable(CompletableFuture future, Throwable exception) { this.future = future; this.exception = exception; } diff --git a/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/ErrorContext.java b/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/ErrorContext.java index 809855119b12..ba5201d99586 100644 --- a/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/ErrorContext.java +++ b/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/ErrorContext.java @@ -3,9 +3,12 @@ package com.microsoft.azure.servicebus.primitives; +import java.io.Serializable; import java.util.Locale; -abstract class ErrorContext { +abstract class ErrorContext implements Serializable { + + private static final long serialVersionUID = -6342329018037308640L; private final String namespaceName; ErrorContext(final String namespaceName) { diff --git a/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/ExceptionUtil.java b/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/ExceptionUtil.java index 8aae06d780e9..e9fb8860f8e1 100644 --- a/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/ExceptionUtil.java +++ b/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/ExceptionUtil.java @@ -16,186 +16,118 @@ import com.microsoft.azure.servicebus.amqp.AmqpErrorCode; import com.microsoft.azure.servicebus.amqp.AmqpException; -public final class ExceptionUtil -{ - static Exception toException(ErrorCondition errorCondition) - { - if (errorCondition == null) - { +public final class ExceptionUtil { + static Exception toException(ErrorCondition errorCondition) { + if (errorCondition == null) { throw new IllegalArgumentException("'null' errorCondition cannot be translated to ServiceBusException"); } - if (errorCondition.getCondition() == ClientConstants.TIMEOUT_ERROR) - { + if (errorCondition.getCondition() == ClientConstants.TIMEOUT_ERROR) { return new TimeoutException(errorCondition.getDescription()); - } - else if (errorCondition.getCondition() == ClientConstants.SERVER_BUSY_ERROR) - { + } else if (errorCondition.getCondition() == ClientConstants.SERVER_BUSY_ERROR) { return new ServerBusyException(errorCondition.getDescription()); - } - else if (errorCondition.getCondition() == AmqpErrorCode.NotFound) - { + } else if (errorCondition.getCondition() == AmqpErrorCode.NotFound) { return new MessagingEntityNotFoundException(errorCondition.getDescription()); - } - else if (errorCondition.getCondition() == ClientConstants.ENTITY_DISABLED_ERROR) - { + } else if (errorCondition.getCondition() == ClientConstants.ENTITY_DISABLED_ERROR) { return new MessagingEntityDisabledException(errorCondition.getDescription()); - } - else if (errorCondition.getCondition() == AmqpErrorCode.Stolen) - { + } else if (errorCondition.getCondition() == AmqpErrorCode.Stolen) { return new ReceiverDisconnectedException(errorCondition.getDescription()); - } - else if (errorCondition.getCondition() == AmqpErrorCode.UnauthorizedAccess) - { + } else if (errorCondition.getCondition() == AmqpErrorCode.UnauthorizedAccess) { return new AuthorizationFailedException(errorCondition.getDescription()); - } - else if (errorCondition.getCondition() == AmqpErrorCode.PayloadSizeExceeded) - { + } else if (errorCondition.getCondition() == AmqpErrorCode.PayloadSizeExceeded) { return new PayloadSizeExceededException(errorCondition.getDescription()); - } - else if (errorCondition.getCondition() == AmqpErrorCode.InternalError) - { + } else if (errorCondition.getCondition() == AmqpErrorCode.InternalError) { return new ServiceBusException(true, new AmqpException(errorCondition)); - } - else if (errorCondition.getCondition() == ClientConstants.ARGUMENT_ERROR) - { + } else if (errorCondition.getCondition() == ClientConstants.ARGUMENT_ERROR) { return new ServiceBusException(false, errorCondition.getDescription(), new AmqpException(errorCondition)); - } - else if (errorCondition.getCondition() == ClientConstants.ARGUMENT_OUT_OF_RANGE_ERROR) - { + } else if (errorCondition.getCondition() == ClientConstants.ARGUMENT_OUT_OF_RANGE_ERROR) { return new ServiceBusException(false, errorCondition.getDescription(), new AmqpException(errorCondition)); - } - else if (errorCondition.getCondition() == AmqpErrorCode.NotImplemented) - { + } else if (errorCondition.getCondition() == AmqpErrorCode.NotImplemented) { return new UnsupportedOperationException(errorCondition.getDescription()); - } - else if (errorCondition.getCondition() == AmqpErrorCode.NotAllowed) - { + } else if (errorCondition.getCondition() == AmqpErrorCode.NotAllowed) { return new UnsupportedOperationException(errorCondition.getDescription()); - } - else if (errorCondition.getCondition() == ClientConstants.PARTITION_NOT_OWNED_ERROR) - { + } else if (errorCondition.getCondition() == ClientConstants.PARTITION_NOT_OWNED_ERROR) { return new ServiceBusException(false, errorCondition.getDescription()); - } - else if (errorCondition.getCondition() == ClientConstants.STORE_LOCK_LOST_ERROR) - { + } else if (errorCondition.getCondition() == ClientConstants.STORE_LOCK_LOST_ERROR) { return new ServiceBusException(false, errorCondition.getDescription()); - } - else if (errorCondition.getCondition() == AmqpErrorCode.AmqpLinkDetachForced) - { + } else if (errorCondition.getCondition() == AmqpErrorCode.AmqpLinkDetachForced) { return new ServiceBusException(true, new AmqpException(errorCondition)); - } - else if (errorCondition.getCondition() == AmqpErrorCode.ConnectionForced) - { + } else if (errorCondition.getCondition() == AmqpErrorCode.ConnectionForced) { return new ServiceBusException(true, new AmqpException(errorCondition)); - } - else if (errorCondition.getCondition() == AmqpErrorCode.FramingError) - { + } else if (errorCondition.getCondition() == AmqpErrorCode.FramingError) { return new ServiceBusException(true, new AmqpException(errorCondition)); - } - else if (errorCondition.getCondition() == AmqpErrorCode.ResourceLimitExceeded) - { + } else if (errorCondition.getCondition() == AmqpErrorCode.ResourceLimitExceeded) { return new QuotaExceededException(errorCondition.getDescription()); - } - else if (errorCondition.getCondition() == ClientConstants.MESSAGE_LOCK_LOST_ERROR) - { + } else if (errorCondition.getCondition() == ClientConstants.MESSAGE_LOCK_LOST_ERROR) { return new MessageLockLostException(errorCondition.getDescription()); - } - else if (errorCondition.getCondition() == ClientConstants.SESSION_LOCK_LOST_ERROR) - { + } else if (errorCondition.getCondition() == ClientConstants.SESSION_LOCK_LOST_ERROR) { return new SessionLockLostException(errorCondition.getDescription()); - } - else if (errorCondition.getCondition() == ClientConstants.SESSIONS_CANNOT_BE_LOCKED_ERROR) - { + } else if (errorCondition.getCondition() == ClientConstants.SESSIONS_CANNOT_BE_LOCKED_ERROR) { return new SessionCannotBeLockedException(errorCondition.getDescription()); - } - else if (errorCondition.getCondition() == ClientConstants.MESSAGE_NOT_FOUND_ERROR) - { + } else if (errorCondition.getCondition() == ClientConstants.MESSAGE_NOT_FOUND_ERROR) { return new MessageNotFoundException(errorCondition.getDescription()); - } - else if (errorCondition.getCondition() == ClientConstants.ENTITY_ALREADY_EXISTS_ERROR) - { + } else if (errorCondition.getCondition() == ClientConstants.ENTITY_ALREADY_EXISTS_ERROR) { return new MessagingEntityAlreadyExistsException(errorCondition.getDescription()); - } - else if (errorCondition.getCondition() == AmqpErrorCode.DecodeError) - { + } else if (errorCondition.getCondition() == AmqpErrorCode.DecodeError) { return new ServiceBusException(false, new AmqpException(errorCondition)); } return new ServiceBusException(ClientConstants.DEFAULT_IS_TRANSIENT, errorCondition.toString()); } - static void completeExceptionally(CompletableFuture future, Throwable exception, IErrorContextProvider contextProvider, boolean completeAsynchronously) - { - if (exception != null && exception instanceof ServiceBusException) - { + static void completeExceptionally(CompletableFuture future, Throwable exception, IErrorContextProvider contextProvider, boolean completeAsynchronously) { + if (exception != null && exception instanceof ServiceBusException) { ErrorContext errorContext = contextProvider.getContext(); ((ServiceBusException) exception).setContext(errorContext); } - if(completeAsynchronously) - { + if (completeAsynchronously) { AsyncUtil.completeFutureExceptionally(future, exception); - } - else - { + } else { future.completeExceptionally(exception); } } // not a specific message related error - static boolean isGeneralError(Symbol amqpError) - { + static boolean isGeneralError(Symbol amqpError) { return (amqpError == ClientConstants.SERVER_BUSY_ERROR || amqpError == ClientConstants.TIMEOUT_ERROR || amqpError == AmqpErrorCode.ResourceLimitExceeded); } - static String getTrackingIDAndTimeToLog() - { + static String getTrackingIDAndTimeToLog() { return String.format(Locale.US, "TrackingId: %s, at: %s", UUID.randomUUID().toString(), ZonedDateTime.now()); } - static String toStackTraceString(final Throwable exception, final String customErrorMessage) - { + static String toStackTraceString(final Throwable exception, final String customErrorMessage) { final StringBuilder builder = new StringBuilder(); - if (!StringUtil.isNullOrEmpty(customErrorMessage)) - { + if (!StringUtil.isNullOrEmpty(customErrorMessage)) { builder.append(customErrorMessage); builder.append(System.lineSeparator()); } builder.append(exception.getMessage()); - if (exception.getStackTrace() != null) - for (StackTraceElement ste: exception.getStackTrace()) - { - builder.append(System.lineSeparator()); - builder.append(ste.toString()); - } + for (StackTraceElement ste : exception.getStackTrace()) { + builder.append(System.lineSeparator()); + builder.append(ste.toString()); + } Throwable innerException = exception.getCause(); - if (innerException != null) - { + if (innerException != null) { builder.append("Cause: " + innerException.getMessage()); - if (innerException.getStackTrace() != null) - for (StackTraceElement ste: innerException.getStackTrace()) - { - builder.append(System.lineSeparator()); - builder.append(ste.toString()); - } + for (StackTraceElement ste : innerException.getStackTrace()) { + builder.append(System.lineSeparator()); + builder.append(ste.toString()); + } } return builder.toString(); } - public static Throwable extractAsyncCompletionCause(Throwable completionEx) - { - if(completionEx instanceof CompletionException || completionEx instanceof ExecutionException) - { + public static Throwable extractAsyncCompletionCause(Throwable completionEx) { + if(completionEx instanceof CompletionException || completionEx instanceof ExecutionException) { return completionEx.getCause(); - } - else - { + } else { return completionEx; } } diff --git a/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/ReceiverErrorContext.java b/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/ReceiverErrorContext.java index b017ece9fdbc..72bd9dba105a 100644 --- a/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/ReceiverErrorContext.java +++ b/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/ReceiverErrorContext.java @@ -7,6 +7,8 @@ public class ReceiverErrorContext extends ErrorContext { + private static final long serialVersionUID = -8154706630781986787L; + final static boolean EPOCH_RECEIVER_TYPE = true; final static boolean NON_EPOCH_RECEIVER_TYPE = !ReceiverErrorContext.EPOCH_RECEIVER_TYPE; diff --git a/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/RequestResponseLink.java b/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/RequestResponseLink.java index 27e4c174457a..1f7c17eb411a 100644 --- a/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/RequestResponseLink.java +++ b/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/RequestResponseLink.java @@ -627,7 +627,7 @@ public void onReceiveComplete(Delivery delivery) { // Return response in a separate thread so reactor thread is free to handle reactor events final Message finalResponseMessage = responseMessage; MessagingFactory.INTERNAL_THREAD_POOL.submit(() -> { - String requestMessageId = (String)finalResponseMessage.getCorrelationId(); + String requestMessageId = (String) finalResponseMessage.getCorrelationId(); if (requestMessageId != null) { TRACE_LOGGER.debug("RequestRespnseLink received response for request with id :{}", requestMessageId); this.parent.completeRequestWithResponse(requestMessageId, finalResponseMessage); diff --git a/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/RequestResponseUtils.java b/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/RequestResponseUtils.java index dff9b447d208..01553a75ac59 100644 --- a/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/RequestResponseUtils.java +++ b/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/RequestResponseUtils.java @@ -17,100 +17,81 @@ import org.apache.qpid.proton.message.Message; public class RequestResponseUtils { - public static Message createRequestMessageFromPropertyBag(String operation, Map propertyBag, Duration timeout) - { + public static Message createRequestMessageFromPropertyBag(String operation, Map propertyBag, Duration timeout) { return createRequestMessageFromPropertyBag(operation, propertyBag, timeout, null); } - public static Message createRequestMessageFromPropertyBag(String operation, Map propertyBag, Duration timeout, String associatedLinkName) - { + public static Message createRequestMessageFromPropertyBag(String operation, Map propertyBag, Duration timeout, String associatedLinkName) { return createRequestMessageFromValueBody(operation, propertyBag, timeout, associatedLinkName); } - public static Message createRequestMessageFromValueBody(String operation, Object valueBody, Duration timeout) - { + public static Message createRequestMessageFromValueBody(String operation, Object valueBody, Duration timeout) { return createRequestMessageFromValueBody(operation, valueBody, timeout, null); } - private static Message createRequestMessageFromValueBody(String operation, Object valueBody, Duration timeout, String associatedLinkName) - { + private static Message createRequestMessageFromValueBody(String operation, Object valueBody, Duration timeout, String associatedLinkName) { Message requestMessage = Message.Factory.create(); requestMessage.setBody(new AmqpValue(valueBody)); HashMap applicationPropertiesMap = new HashMap(); applicationPropertiesMap.put(ClientConstants.REQUEST_RESPONSE_OPERATION_NAME, operation); applicationPropertiesMap.put(ClientConstants.REQUEST_RESPONSE_TIMEOUT, timeout.toMillis()); - if(!StringUtil.isNullOrEmpty(associatedLinkName)) - { + if (!StringUtil.isNullOrEmpty(associatedLinkName)) { applicationPropertiesMap.put(ClientConstants.REQUEST_RESPONSE_ASSOCIATED_LINK_NAME, associatedLinkName); } requestMessage.setApplicationProperties(new ApplicationProperties(applicationPropertiesMap)); return requestMessage; } - public static int getResponseStatusCode(Message responseMessage) - { + public static int getResponseStatusCode(Message responseMessage) { int statusCode = ClientConstants.REQUEST_RESPONSE_UNDEFINED_STATUS_CODE; Object codeObject = responseMessage.getApplicationProperties().getValue().get(ClientConstants.REQUEST_RESPONSE_STATUS_CODE); - if(codeObject == null) - { + if (codeObject == null) { codeObject = responseMessage.getApplicationProperties().getValue().get(ClientConstants.REQUEST_RESPONSE_LEGACY_STATUS_CODE); } - if(codeObject != null) - { + if (codeObject != null) { statusCode = (int)codeObject; } return statusCode; } - public static Symbol getResponseErrorCondition(Message responseMessage) - { + public static Symbol getResponseErrorCondition(Message responseMessage) { Symbol errorCondition = (Symbol)responseMessage.getApplicationProperties().getValue().get(ClientConstants.REQUEST_RESPONSE_ERROR_CONDITION); - if(errorCondition == null) - { + if (errorCondition == null) { errorCondition = (Symbol)responseMessage.getApplicationProperties().getValue().get(ClientConstants.REQUEST_RESPONSE_LEGACY_ERROR_CONDITION); } return errorCondition; } - public static String getResponseStatusDescription(Message responseMessage) - { + public static String getResponseStatusDescription(Message responseMessage) { String statusDescription = (String)responseMessage.getApplicationProperties().getValue().get(ClientConstants.REQUEST_RESPONSE_STATUS_DESCRIPTION); - if(statusDescription == null) - { + if (statusDescription == null) { statusDescription = (String)responseMessage.getApplicationProperties().getValue().get(ClientConstants.REQUEST_RESPONSE_LEGACY_STATUS_DESCRIPTION); } return statusDescription; } - public static Map getResponseBody(Message responseMessage) - { + public static Map getResponseBody(Message responseMessage) { return (Map)((AmqpValue)responseMessage.getBody()).getValue(); } - public static Exception genereateExceptionFromResponse(Message responseMessage) - { + public static Exception genereateExceptionFromResponse(Message responseMessage) { Symbol errorCondition = getResponseErrorCondition(responseMessage); Object statusDescription = getResponseStatusDescription(responseMessage); return generateExceptionFromError(errorCondition, statusDescription == null ? errorCondition.toString() : (String) statusDescription); } - public static Exception generateExceptionFromError(Symbol errorCondition, String exceptionMessage) - { + public static Exception generateExceptionFromError(Symbol errorCondition, String exceptionMessage) { return ExceptionUtil.toException(new ErrorCondition(errorCondition, exceptionMessage)); } - public static Map encodeRuleDescriptionToMap(RuleDescription ruleDescription) - { + public static Map encodeRuleDescriptionToMap(RuleDescription ruleDescription) { HashMap descriptionMap = new HashMap<>(); - if(ruleDescription.getFilter() instanceof SqlFilter) - { + if (ruleDescription.getFilter() instanceof SqlFilter) { HashMap filterMap = new HashMap<>(); filterMap.put(ClientConstants.REQUEST_RESPONSE_EXPRESSION, ((SqlFilter)ruleDescription.getFilter()).getSqlExpression()); descriptionMap.put(ClientConstants.REQUEST_RESPONSE_SQLFILTER, filterMap); - } - else if(ruleDescription.getFilter() instanceof CorrelationFilter) - { + } else if (ruleDescription.getFilter() instanceof CorrelationFilter) { CorrelationFilter correlationFilter = (CorrelationFilter)ruleDescription.getFilter(); HashMap filterMap = new HashMap<>(); filterMap.put(ClientConstants.REQUEST_RESPONSE_CORRELATION_ID, correlationFilter.getCorrelationId()); @@ -124,24 +105,17 @@ else if(ruleDescription.getFilter() instanceof CorrelationFilter) filterMap.put(ClientConstants.REQUEST_RESPONSE_CORRELATION_FILTER_PROPERTIES, correlationFilter.getProperties()); descriptionMap.put(ClientConstants.REQUEST_RESPONSE_CORRELATION_FILTER, filterMap); - } - else - { + } else { throw new IllegalArgumentException("This API supports the addition of only SQLFilters and CorrelationFilters."); } - if(ruleDescription.getAction() == null) - { + if (ruleDescription.getAction() == null) { descriptionMap.put(ClientConstants.REQUEST_RESPONSE_SQLRULEACTION, null); - } - else if(ruleDescription.getAction() instanceof SqlRuleAction) - { + } else if (ruleDescription.getAction() instanceof SqlRuleAction) { HashMap sqlActionMap = new HashMap<>(); sqlActionMap.put(ClientConstants.REQUEST_RESPONSE_EXPRESSION, ((SqlRuleAction)ruleDescription.getAction()).getSqlExpression()); descriptionMap.put(ClientConstants.REQUEST_RESPONSE_SQLRULEACTION, sqlActionMap); - } - else - { + } else { throw new IllegalArgumentException("This API supports the addition of only filters with SqlRuleActions."); } @@ -150,8 +124,7 @@ else if(ruleDescription.getAction() instanceof SqlRuleAction) return descriptionMap; } - static RuleDescription decodeRuleDescriptionMap(DescribedType ruleDescribedType) - { + static RuleDescription decodeRuleDescriptionMap(DescribedType ruleDescribedType) { if (ruleDescribedType == null) { return null; } @@ -187,8 +160,7 @@ private static Filter decodeFilter(Object describedFilterObject) { if (describedSqlFilter.size() > 0) { return new SqlFilter((String)describedSqlFilter.get(0)); } - } - else if (describedFilter.getDescriptor().equals(ClientConstants.CORRELATION_FILTER_DESCRIPTOR)) { + } else if (describedFilter.getDescriptor().equals(ClientConstants.CORRELATION_FILTER_DESCRIPTOR)) { CorrelationFilter correlationFilter = new CorrelationFilter(); ArrayList describedCorrelationFilter = (ArrayList)describedFilter.getDescribed(); int countCorrelationFilter = describedCorrelationFilter.size(); @@ -224,14 +196,11 @@ else if (describedFilter.getDescriptor().equals(ClientConstants.CORRELATION_FILT } return correlationFilter; - } - else if (describedFilter.getDescriptor().equals(ClientConstants.TRUE_FILTER_DESCRIPTOR)) { + } else if (describedFilter.getDescriptor().equals(ClientConstants.TRUE_FILTER_DESCRIPTOR)) { return new TrueFilter(); - } - else if (describedFilter.getDescriptor().equals(ClientConstants.FALSE_FILTER_DESCRIPTOR)) { + } else if (describedFilter.getDescriptor().equals(ClientConstants.FALSE_FILTER_DESCRIPTOR)) { return new FalseFilter(); - } - else { + } else { throw new UnsupportedOperationException("This client doesn't support filter with descriptor: " + describedFilter.getDescriptor()); } } diff --git a/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/RetryPolicy.java b/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/RetryPolicy.java index 79e5d082db23..194fc6882b2a 100644 --- a/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/RetryPolicy.java +++ b/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/RetryPolicy.java @@ -45,13 +45,8 @@ public void incrementRetryCount(String clientId) * Resets the number of retry attempts made by a client. This method is called by the client when retried operation succeeds. * @param clientId id of the client that just retried a failed operation and succeeded. */ - public void resetRetryCount(String clientId) - { - Integer currentRetryCount = this.retryCounts.get(clientId); - if (currentRetryCount != null && currentRetryCount.intValue() != 0) - { - this.retryCounts.put(clientId, 0); - } + public void resetRetryCount(String clientId) { + this.retryCounts.computeIfPresent(clientId, (k, v) -> 0); } /** diff --git a/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/SenderErrorContext.java b/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/SenderErrorContext.java index a59295a161a2..766000fa07e5 100644 --- a/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/SenderErrorContext.java +++ b/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/SenderErrorContext.java @@ -7,6 +7,7 @@ public class SenderErrorContext extends ErrorContext { + private static final long serialVersionUID = -8426189357575601244L; final String sendPath; final String referenceId; final Integer currentLinkCredit; diff --git a/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/ServiceBusException.java b/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/ServiceBusException.java index 51df44410d46..e14c0f79083e 100644 --- a/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/ServiceBusException.java +++ b/servicebus/data-plane/azure-servicebus/src/main/java/com/microsoft/azure/servicebus/primitives/ServiceBusException.java @@ -9,15 +9,13 @@ * This is the base exception that service bus will generate for all error cases. * @since 1.0 */ -public class ServiceBusException extends Exception -{ +public class ServiceBusException extends Exception { private static final long serialVersionUID = -3654294093967132325L; private boolean isTransient; private ErrorContext errorContext; - public ServiceBusException(final boolean isTransient) - { + public ServiceBusException(final boolean isTransient) { super(); this.isTransient = isTransient; }