@Override public void resetState() { super.resetState(); custom.clear(); response.resetState(); request.resetState(); user.resetState(); } }
public void setUser(String id, String email, String username) { if (!isSampled()) { return; } getContext().getUser().withId(id).withEmail(email).withUsername(username); }
private TransactionContext createContext() { TransactionContext context = new TransactionContext(); Request request = context.getRequest(); request.withHttpVersion("1.1"); request.withMethod("POST"); request.withBodyBuffer().append("Hello World").flip(); request.getUrl() .withProtocol("https") .appendToFull("https://www.example.com/p/a/t/h?query=string#hash") .withHostname("www.example.com") .withPort(8080) .withPathname("/p/a/t/h") .withSearch("?query=string"); request.getSocket() .withEncrypted(true) .withRemoteAddress("12.53.12.1"); request.addHeader("user-agent", "Mozilla Chrome Edge"); request.addHeader("content-type", "text/html"); request.addHeader("cookie", "c1=v1; c2=v2"); request.addHeader("some-other-header", "foo"); request.addHeader("array", "foo, bar, baz"); request.getCookies().add("c1", "v1"); request.getCookies().add("c2", "v2"); context.getResponse() .withStatusCode(200) .withFinished(true) .withHeadersSent(true) .addHeader("content-type", "application/json");
private void serializeContext(final TransactionContext context) { writeFieldName("context"); jw.writeByte(OBJECT_START); if (context.getUser().hasContent()) { serializeUser(context.getUser()); jw.writeByte(COMMA); } serializeRequest(context.getRequest()); serializeResponse(context.getResponse()); // TODO custom context writeFieldName("tags"); final Map<String, String> value = context.getTags(); serializeTags(value); jw.writeByte(OBJECT_END); jw.writeByte(COMMA); }
private Url newUrl() { return new Url() .withHostname("localhost") .withPathname("/foo") .withPort(8080) .withProtocol("http") .withSearch("foo=bar") .appendToFull("http://localhost:8080/foo?foo=bar"); } }
public void copyFrom(Request other) { this.postParams.copyFrom(other.postParams); this.headers.copyFrom(other.headers); this.httpVersion = other.httpVersion; this.method = other.method; this.socket.copyFrom(other.socket); this.url.copyFrom(other.url); this.cookies.copyFrom(other.cookies); if (other.bodyBuffer != null) { final CharBuffer otherBuffer = other.getBodyBuffer(); final CharBuffer thisBuffer = this.withBodyBuffer(); for (int i = 0; i < otherBuffer.length(); i++) { thisBuffer.append(otherBuffer.charAt(i)); } thisBuffer.flip(); } }
private void serializeUrl(final Url url) { writeFieldName("url"); jw.writeByte(OBJECT_START); writeField("full", url.getFull()); writeField("hostname", url.getHostname()); writeField("port", url.getPort()); writeField("pathname", url.getPathname()); writeField("search", url.getSearch()); writeLastField("protocol", url.getProtocol()); jw.writeByte(OBJECT_END); jw.writeByte(COMMA); }
private Transaction createTransactionWithRequiredValues() { Transaction t = new Transaction(mock(ElasticApmTracer.class)); t.start(TraceContext.asRoot(), null, (long) 0, ConstantSampler.of(true)); t.withType("type"); t.getContext().getRequest().withMethod("GET"); t.getContext().getRequest().getUrl().appendToFull("http://localhost:8080/foo/bar"); return t; }
private void serializeUser(final User user) { writeFieldName("user"); jw.writeByte(OBJECT_START); writeField("id", user.getId()); writeField("email", user.getEmail()); writeLastField("username", user.getUsername()); jw.writeByte(OBJECT_END); }
@Test void testResetState() { final Url url = newUrl(); url.resetState(); assertThat(toJson(url)).isEqualTo(toJson(new Url())); }
@Test void testCopyFrom() { TransactionContext context = createContext(); TransactionContext copyOfContext = new TransactionContext(); copyOfContext.copyFrom(context); assertThat(toJson(context)).isEqualTo(toJson(copyOfContext)); }
@Override public void resetState() { postParams.resetState(); headers.resetState(); httpVersion = null; method = null; socket.resetState(); url.resetState(); cookies.resetState(); if (bodyBuffer != null) { charBufferPool.recycle(bodyBuffer); } bodyBuffer = null; }
@Override public void addTag(String key, String value) { context.getTags().put(key, value); }
public boolean hasContent() { return method != null || headers.size() > 0 || httpVersion != null || cookies.size() > 0 || postParams.size() > 0 || socket.hasContent() || url.hasContent(); } }
@Override public void addTag(String key, String value) { if (!isSampled()) { return; } getContext().getTags().put(key, value); }
@Override public void resetState() { super.resetState(); context.resetState(); stacktrace = null; type = null; subtype = null; action = null; originator = null; }
@Override public void resetState() { super.resetState(); db.resetState(); http.resetState(); }
@Override public void resetState() { super.resetState(); context.resetState(); result = null; spanCount.resetState(); noop = false; type = null; }