From db6c09038794d57a7879189096abc7991e2502c8 Mon Sep 17 00:00:00 2001 From: Jonathan Mace Date: Wed, 10 May 2017 12:35:09 -0400 Subject: [PATCH] Add 'isValid' method --- .../src/main/java/brown/tracingplane/BaggageProvider.java | 6 ++++++ .../noopprovider/NoOpBaggageContextProvider.java | 5 +++++ 2 files changed, 11 insertions(+) diff --git a/baggagecontext/api/src/main/java/brown/tracingplane/BaggageProvider.java b/baggagecontext/api/src/main/java/brown/tracingplane/BaggageProvider.java index 4620da0..844ade5 100644 --- a/baggagecontext/api/src/main/java/brown/tracingplane/BaggageProvider.java +++ b/baggagecontext/api/src/main/java/brown/tracingplane/BaggageProvider.java @@ -10,6 +10,12 @@ import java.nio.ByteBuffer; */ public interface BaggageProvider { + /** + * @param baggage a BaggageContext to test + * @return true if baggage is an instance of {@link B} or if baggage is null. + */ + boolean isValid(BaggageContext baggage); + /** * @return a new instance of {@link B}, which may be null to indicate an empty baggage */ diff --git a/baggagecontext/noop-impl/src/main/java/brown/tracingplane/noopprovider/NoOpBaggageContextProvider.java b/baggagecontext/noop-impl/src/main/java/brown/tracingplane/noopprovider/NoOpBaggageContextProvider.java index 9099b0d..bef49ca 100644 --- a/baggagecontext/noop-impl/src/main/java/brown/tracingplane/noopprovider/NoOpBaggageContextProvider.java +++ b/baggagecontext/noop-impl/src/main/java/brown/tracingplane/noopprovider/NoOpBaggageContextProvider.java @@ -9,6 +9,11 @@ import brown.tracingplane.BaggageProvider; */ public class NoOpBaggageContextProvider implements BaggageProvider { + @Override + public boolean isValid(BaggageContext baggage) { + return baggage == null; + } + @Override public BaggageContext newInstance() { return null; -- GitLab