package rocks.inspectit.agent.java.tracing.core.adapter.http; import java.util.Collections; import java.util.Map; import io.opentracing.tag.Tags; import rocks.inspectit.agent.java.tracing.core.adapter.ResponseAdapter; import rocks.inspectit.agent.java.tracing.core.adapter.http.data.HttpResponse; /** * The base {@link ResponseAdapter} for all synchronous HTTP client responses. * * @author Ivan Senic */ public class HttpResponseAdapter implements ResponseAdapter { /** * HTTP response to read data from. */ private HttpResponse httpResponse; /** * Default constructor. * * @param httpResponse * HTTP response to read data from. */ public HttpResponseAdapter(HttpResponse httpResponse) { this.httpResponse = httpResponse; } /** * {@inheritDoc} */ @Override public Map<String, String> getTags() { int status = httpResponse.getStatus(); if (status > 0) { return Collections.<String, String> singletonMap(Tags.HTTP_STATUS.getKey(), String.valueOf(status)); } else { return Collections.emptyMap(); } } }