@Override public boolean process(Telemetry telemetry) { if (telemetry == null) { return true; } if (!(telemetry instanceof PageViewTelemetry)) { return true; } PageViewTelemetry asPVT = (PageViewTelemetry) telemetry; URI uri = asPVT.getUri(); if (uri == null) { return true; } else { String uriPath = uri.toString(); for (String notNeededUri : notNeededUrls) { if (uriPath.contains(notNeededUri)) { return false; } } } if (notNeededNames.contains(asPVT.getName())) { return false; } long pvtDuration = asPVT.getDuration(); if (durationThresholdInMS <= pvtDuration) { return true; } return false; }
@Test public void testSetName() { PageViewTelemetry telemetry = new PageViewTelemetry("MockName"); telemetry.setName("MockName1"); assertEquals("MockName1", telemetry.getName()); }
@Test public void testCtor() { PageViewTelemetry telemetry = new PageViewTelemetry("MockName"); assertEquals("MockName", telemetry.getName()); assertNull(telemetry.getUri()); assertTrue(telemetry.getMetrics().isEmpty()); assertTrue(telemetry.getProperties().isEmpty()); assertEquals(0, telemetry.getDuration()); }
@Test public void testEmptyCtor() { PageViewTelemetry telemetry = new PageViewTelemetry(); assertNull(telemetry.getName()); assertNull(telemetry.getUri()); assertTrue(telemetry.getMetrics().isEmpty()); assertTrue(telemetry.getProperties().isEmpty()); assertEquals(0, telemetry.getDuration()); }
@Override public Telemetry apply(BaseTelemetry bt) { Preconditions.checkNotNull(bt); PageViewTelemetry t = (PageViewTelemetry) bt; final Event.Builder eb = Event.newBuilder() .setVer(t.getVer()); if (t.getName() != null) eb.setName(t.getName()); if (t.getProperties() != null) eb.putAllProperties(t.getProperties()); if (t.getMetrics() != null) eb.putAllMeasurements(t.getMetrics()); final PageView.Builder pvb = PageView.newBuilder() .setEvent(eb); if (t.getUrlString() != null) pvb.setUrl(t.getUrlString()); if (t.getDurationObject() != null) pvb.setDuration(transformDuration(t.getDurationObject())); return telemetryBuilderWithStandardFields(t).setPageView(pvb).build(); } });