Skip to content

Commit

Permalink
fixes some small code review issues
Browse files Browse the repository at this point in the history
  • Loading branch information
grimmjo committed Nov 17, 2022
1 parent 77d3aa3 commit 9eb628f
Show file tree
Hide file tree
Showing 6 changed files with 39 additions and 41 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,7 @@

import io.micronaut.aop.Introduction;
import io.micronaut.context.annotation.AliasFor;
import io.micronaut.context.annotation.Type;
import io.micronaut.messaging.annotation.MessageProducer;
import io.micronaut.nats.intercept.NatsIntroductionAdvice;
import jakarta.inject.Scope;
import jakarta.inject.Singleton;

Expand All @@ -31,16 +29,16 @@

/**
* An introduction advice that automatically implemnts interfaces and abstract classes and publishes nats messages.
*
* @author jgrimm
* @see NatsIntroductionAdvice
* @see io.micronaut.nats.intercept.NatsIntroductionAdvice
* @since 1.0.0
*/
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target({ ElementType.TYPE })
@Scope
@Introduction
@Type(NatsIntroductionAdvice.class)
@Singleton
@MessageProducer
public @interface NatsClient {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,18 @@
*/
package io.micronaut.nats.connect;

import io.micronaut.context.annotation.ConfigurationBuilder;
import io.micronaut.context.annotation.ConfigurationProperties;
import io.micronaut.context.annotation.EachProperty;
import io.micronaut.context.annotation.Parameter;
import io.micronaut.context.annotation.Requires;
import io.micronaut.core.annotation.Nullable;
import io.nats.client.JetStreamOptions;
import io.nats.client.Nats;
import io.nats.client.Options;

import javax.net.ssl.SSLContext;
import javax.net.ssl.TrustManagerFactory;
import java.io.BufferedInputStream;
import java.io.IOException;
import java.nio.file.Files;
Expand All @@ -31,20 +43,6 @@
import java.util.Map;
import java.util.Optional;

import javax.net.ssl.SSLContext;
import javax.net.ssl.TrustManagerFactory;

import io.micronaut.context.annotation.ConfigurationBuilder;
import io.micronaut.context.annotation.ConfigurationProperties;
import io.micronaut.context.annotation.EachProperty;
import io.micronaut.context.annotation.Parameter;
import io.micronaut.context.annotation.Requires;
import io.micronaut.core.annotation.Introspected;
import io.micronaut.core.annotation.Nullable;
import io.nats.client.JetStreamOptions;
import io.nats.client.Nats;
import io.nats.client.Options;

import static io.nats.client.Options.Builder;
import static io.nats.client.Options.DEFAULT_INBOX_PREFIX;
import static io.nats.client.Options.DEFAULT_MAX_RECONNECT;
Expand Down Expand Up @@ -471,7 +469,6 @@ private SSLContext createTlsContext() throws IOException, GeneralSecurityExcepti
* @author Joachim Grimm
* @since 4.0.0
*/
@Introspected
@ConfigurationProperties("jetstream")
public static class JetStreamConfiguration {

Expand Down Expand Up @@ -520,7 +517,6 @@ public void setStreams(Map<String, StreamConfiguration> streams) {
/**
* Manages a single stream configuration.
*/
@Introspected
@EachProperty(value = "streams")
public static class StreamConfiguration {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -212,8 +212,7 @@ protected StaticPublisherState buildPublisherState(ExecutableMethod<?, ?> method
Optional<String> subject =
method.findAnnotation(Subject.class).flatMap(AnnotationValue::stringValue);

String connection = method.findAnnotation(NatsConnection.class)
.flatMap(conn -> conn.get("connection", String.class))
String connection = method.stringValue(NatsConnection.class, "connection")
.orElse(NatsConnection.DEFAULT_CONNECTION);

Argument<?> bodyArgument = findBodyArgument(method).orElseThrow(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,37 +15,33 @@
*/
package io.micronaut.nats.jetstream.annotation;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

import io.micronaut.aop.Introduction;
import io.micronaut.context.annotation.AliasFor;
import io.micronaut.context.annotation.Type;
import io.micronaut.messaging.annotation.MessageProducer;
import io.micronaut.nats.annotation.NatsConnection;
import io.micronaut.nats.jetstream.intercept.JetStreamIntroductionAdvice;
import io.micronaut.retry.annotation.Recoverable;
import jakarta.inject.Scope;
import jakarta.inject.Singleton;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;


/**
* An introduction advice that automatically implemnts interfaces and abstract classes and
* publishes jetstream messages.
*
* @author Joachim Grimm
* @see JetStreamIntroductionAdvice
* @see io.micronaut.nats.jetstream.intercept.JetStreamIntroductionAdvice
* @since 4.0.0
*/
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target({ ElementType.TYPE })
@Scope
@Introduction
@Type(JetStreamIntroductionAdvice.class)
@Recoverable
@Singleton
@MessageProducer
public @interface JetStreamClient {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,8 @@
*/
package io.micronaut.nats.jetstream.bind;

import java.time.Duration;
import java.util.Optional;

import io.micronaut.core.annotation.Internal;
import io.micronaut.core.annotation.NonNull;
import io.micronaut.core.convert.ArgumentConversionContext;
import io.micronaut.core.type.Argument;
import io.micronaut.messaging.Acknowledgement;
Expand All @@ -26,6 +25,9 @@
import io.nats.client.Message;
import jakarta.inject.Singleton;

import java.time.Duration;
import java.util.Optional;

/**
* Binds an argument of type {@link Acknowledgement} from the {@link Message}.
*
Expand All @@ -34,6 +36,7 @@
* @since 4.0.0
*/
@Singleton
@Internal
public class AcknowledgementBinder<T extends Acknowledgement>
implements NatsTypeArgumentBinder<T> {
@Override
Expand All @@ -55,7 +58,7 @@ public void nack() throws MessageAcknowledgementException {
}

@Override
public void nackWithDelay(Duration duration) {
public void nackWithDelay(@NonNull Duration duration) {
source.nakWithDelay(duration);
}
};
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,11 @@
*/
package io.micronaut.nats.jetstream.bind;

import java.time.Duration;

import io.micronaut.core.annotation.NonNull;
import io.micronaut.messaging.Acknowledgement;

import java.time.Duration;

/**
* A contract for acknowleding or rejecting messages.
*
Expand All @@ -27,6 +28,11 @@
*/
public interface NatsAcknowledgement extends Acknowledgement {

void nackWithDelay(Duration duration);
/**
* nak acknowledges a JetStream message has been received but indicates that the message is not completely processed and should be sent again later, after at least the delay amount.
*
* @param duration {@link Duration}
*/
void nackWithDelay(@NonNull Duration duration);

}

0 comments on commit 9eb628f

Please sign in to comment.