@Override Span get() { return getCurrentLocalSpan(); } }
static BraveRunnable wrap( // hidden for package-scoped use Runnable runnable, LocalSpanThreadBinder localSpanThreadBinder, ServerSpanThreadBinder serverSpanThreadBinder ) { return new AutoValue_BraveRunnable( runnable, localSpanThreadBinder, localSpanThreadBinder.getCurrentLocalSpan(), serverSpanThreadBinder, serverSpanThreadBinder.getCurrentServerSpan() ); }
static <T> BraveCallable<T> wrap( // hidden for package-scoped use Callable<T> callable, LocalSpanThreadBinder localSpanThreadBinder, ServerSpanThreadBinder serverSpanThreadBinder ) { return new AutoValue_BraveCallable( callable, localSpanThreadBinder, localSpanThreadBinder.getCurrentLocalSpan(), serverSpanThreadBinder, serverSpanThreadBinder.getCurrentServerSpan() ); }
/** * @since 3.17 */ public static BraveRunnable wrap(Runnable runnable, Brave brave) { checkNotNull(brave, "brave"); // auto-value will check the others. return new AutoValue_BraveRunnable( runnable, brave.localSpanThreadBinder(), brave.localSpanThreadBinder().getCurrentLocalSpan(), brave.serverSpanThreadBinder(), brave.serverSpanThreadBinder().getCurrentServerSpan() ); }
/** * @since 3.17 */ public static <T> BraveCallable<T> wrap(Callable<T> callable, Brave brave) { checkNotNull(brave, "brave"); // auto-value will check the others. return new AutoValue_BraveCallable( callable, brave.localSpanThreadBinder(), brave.localSpanThreadBinder().getCurrentLocalSpan(), brave.serverSpanThreadBinder(), brave.serverSpanThreadBinder().getCurrentServerSpan() ); }
/** * {@inheritDoc} */ @Override public void run() { if (localSpanThreadBinder() == null) { // old behavior serverSpanThreadBinder().setCurrentSpan(currentServerSpan()); wrappedRunnable().run(); return; } ServerSpan previousServerSpan = serverSpanThreadBinder().getCurrentServerSpan(); Span previousLocalSpan = localSpanThreadBinder().getCurrentLocalSpan(); try { serverSpanThreadBinder().setCurrentSpan(currentServerSpan()); localSpanThreadBinder().setCurrentSpan(currentLocalSpan()); wrappedRunnable().run(); } finally { serverSpanThreadBinder().setCurrentSpan(previousServerSpan); localSpanThreadBinder().setCurrentSpan(previousLocalSpan); } } }
/** * {@inheritDoc} */ @Override public T call() throws Exception { if (localSpanThreadBinder() == null) { // old behavior serverSpanThreadBinder().setCurrentSpan(currentServerSpan()); return wrappedCallable().call(); } ServerSpan previousServerSpan = serverSpanThreadBinder().getCurrentServerSpan(); Span previousLocalSpan = localSpanThreadBinder().getCurrentLocalSpan(); try { serverSpanThreadBinder().setCurrentSpan(currentServerSpan()); localSpanThreadBinder().setCurrentSpan(currentLocalSpan()); return wrappedCallable().call(); } finally { serverSpanThreadBinder().setCurrentSpan(previousServerSpan); localSpanThreadBinder().setCurrentSpan(previousLocalSpan); } }