test_class.file: stagemonitor-tracing/src/test/java/org/stagemonitor/tracing/AbstractExternalRequestTest.java
test_class.identifier: AbstractExternalRequestTest
test_case.body: @Test
  	public void testDontMonitorClientRootSpans() throws Exception {
  		MockTracer tracer = new MockTracer();
  		new AbstractExternalRequest(tracer) {
  			@Override
  			protected String getType() {
  				return "jdbc";
  			}
  		}.createSpan().finish();
  
  		assertThat(tracer.finishedSpans().get(0).tags().get(Tags.SAMPLING_PRIORITY.getKey())).isEqualTo(0);
  	}
test_case.class_method_signature: AbstractExternalRequestTest.testDontMonitorClientRootSpans()
test_case.full_signature: @Test public void testDontMonitorClientRootSpans()
test_case.identifier: testDontMonitorClientRootSpans
test_case.invocations: finish createSpan isEqualTo assertThat get tags get finishedSpans getKey
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testDontMonitorClientRootSpans()
focal_class.declarator: EXTERNAL_REQUEST_METHOD = "method"
focal_class.modifier: public static final
focal_class.original_string: public static final String EXTERNAL_REQUEST_METHOD = "method";
focal_class.type: String
focal_class.var_name: EXTERNAL_REQUEST_METHOD
focal_class.declarator: tracer
focal_class.modifier: private final
focal_class.original_string: private final Tracer tracer;
focal_class.type: Tracer
focal_class.var_name: tracer
focal_class.declarator: operationName
focal_class.modifier: private final
focal_class.original_string: private final String operationName;
focal_class.type: String
focal_class.var_name: operationName
focal_class.file: stagemonitor-tracing/src/main/java/org/stagemonitor/tracing/AbstractExternalRequest.java
focal_class.identifier: AbstractExternalRequest
focal_class.class_method_signature: AbstractExternalRequest.AbstractExternalRequest(Tracer tracer)
focal_class.full_signature: protected  AbstractExternalRequest(Tracer tracer)
focal_class.identifier: AbstractExternalRequest
focal_class.modifiers: protected
focal_class.parameters: (Tracer tracer)
focal_class.signature:  AbstractExternalRequest(Tracer tracer)
focal_class.class_method_signature: AbstractExternalRequest.AbstractExternalRequest(Tracer tracer, String operationName)
focal_class.full_signature: public  AbstractExternalRequest(Tracer tracer, String operationName)
focal_class.identifier: AbstractExternalRequest
focal_class.modifiers: public
focal_class.parameters: (Tracer tracer, String operationName)
focal_class.signature:  AbstractExternalRequest(Tracer tracer, String operationName)
focal_class.class_method_signature: AbstractExternalRequest.createSpan()
focal_class.full_signature: @Override public Span createSpan()
focal_class.identifier: createSpan
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Span
focal_class.signature: Span createSpan()
focal_class.class_method_signature: AbstractExternalRequest.getType()
focal_class.full_signature: protected abstract String getType()
focal_class.identifier: getType
focal_class.modifiers: protected abstract
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getType()
focal_class.class_method_signature: AbstractExternalRequest.trackMetricsPerOperationName()
focal_class.full_signature: protected boolean trackMetricsPerOperationName()
focal_class.identifier: trackMetricsPerOperationName
focal_class.modifiers: protected
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean trackMetricsPerOperationName()
focal_class.class_method_signature: AbstractExternalRequest.execute()
focal_class.full_signature: @Override public void execute()
focal_class.identifier: execute
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void execute()
focal_class.superclass: extends MonitoredRequest
focal_method.body: @Override
  	public Span createSpan() {
  		final Tracer.SpanBuilder spanBuilder;
  		final Span activeSpan = tracer.scopeManager().activeSpan();
  		if (activeSpan != null) {
  			spanBuilder = tracer.buildSpan(operationName)
  					.withTag(Tags.SPAN_KIND.getKey(), Tags.SPAN_KIND_CLIENT);
  		} else {
  			// client spans should not be root spans
  			spanBuilder = tracer.buildSpan(operationName)
  					.withTag(Tags.SAMPLING_PRIORITY.getKey(), 0)
  					.withTag(Tags.SPAN_KIND.getKey(), Tags.SPAN_KIND_CLIENT);
  		}
  		if (trackMetricsPerOperationName()) {
  			spanBuilder.withTag(MetricsSpanEventListener.ENABLE_TRACKING_METRICS_TAG, true);
  		}
  		spanBuilder.withTag(SpanUtils.OPERATION_TYPE, getType());
  		return spanBuilder.start();
  	}
focal_method.class_method_signature: AbstractExternalRequest.createSpan()
focal_method.full_signature: @Override public Span createSpan()
focal_method.identifier: createSpan
focal_method.invocations: activeSpan scopeManager withTag buildSpan getKey withTag withTag buildSpan getKey getKey trackMetricsPerOperationName withTag withTag getType start
focal_method.modifiers: @Override public
focal_method.parameters: ()
focal_method.return: Span
focal_method.signature: Span createSpan()