in aws-xray-agent/src/main/java/com/amazonaws/xray/agent/runtime/listeners/XRayListenerFactory.java [38:66]
public Listener generateListener() {
manifest = XRaySDKConfiguration.getInstance().getAwsServiceHandlerManifest();
configVersion = XRaySDKConfiguration.getInstance().getAwsSdkVersion();
EventDispatcher upstreamEventDispatcher = new EventDispatcher();
if (XRaySDKConfiguration.getInstance().isTraceIncomingRequests()) {
upstreamEventDispatcher.addHandler(HTTP_SERVLET_ORIGIN, new ServletHandler());
}
EventDispatcher downstreamEventDispatcher = new EventDispatcher();
downstreamEventDispatcher.addHandler(APACHE_HTTP_CLIENT_ORIGIN, new HttpClientHandler());
downstreamEventDispatcher.addHandler(SQL_ORIGIN, new SqlHandler());
downstreamEventDispatcher.addHandler(SQL_PREPARE_ORIGIN, new SqlPrepareHandler());
if (configVersion == 1 && manifest != null) {
downstreamEventDispatcher.addHandler(AWS_ORIGIN, new AWSHandler(manifest));
} else {
downstreamEventDispatcher.addHandler(AWS_ORIGIN, new AWSHandler());
}
if (configVersion == 2 && manifest != null) {
downstreamEventDispatcher.addHandler(AWS_V2_ORIGIN, new AWSV2Handler(manifest));
} else {
downstreamEventDispatcher.addHandler(AWS_V2_ORIGIN, new AWSV2Handler());
}
return new XRayListener(upstreamEventDispatcher, downstreamEventDispatcher);
}