@Test public void testSetAcquisitionDate() { ConcurrentHashMap<String, String> map = new ConcurrentHashMap<String, String>(); UserContext context = new UserContext(map); Date date = new Date(); context.setAcquisitionDate(date); assertEquals(context.getAcquisitionDate(), date); assertEquals(1, map.size()); }
@Test public void testSetAcquisitionNullDate() { ConcurrentHashMap<String, String> map = new ConcurrentHashMap<String, String>(); UserContext context = new UserContext(map); context.setAcquisitionDate(null); assertNull(context.getAcquisitionDate()); assertEquals(0, map.size()); assertNull(map.get(ContextTagKeys.getKeys().getUserAccountAcquisitionDate())); }
/** * Begin request processing. * * @param req The request to process * @param res The response to modify */ @Override public void onBeginRequest(ServletRequest req, ServletResponse res) { HttpServletRequest request = (HttpServletRequest)req; RequestTelemetryContext context = ThreadContext.getRequestTelemetryContext(); UserCookie userCookie = com.microsoft.applicationinsights.web.internal.cookies.Cookie.getCookie( UserCookie.class, request, UserCookie.COOKIE_NAME); if (userCookie == null) { return; } String userId = userCookie.getUserId(); Date acquisitionDate = userCookie.getAcquisitionDate(); context.setUserCookie(userCookie); UserContext userContext = context.getHttpRequestTelemetry().getContext().getUser(); userContext.setId(userId); userContext.setAcquisitionDate(acquisitionDate); }
/** * Begin request processing. * * @param req The request to process * @param res The response to modify */ @Override public void onBeginRequest(ServletRequest req, ServletResponse res) { HttpServletRequest request = (HttpServletRequest)req; RequestTelemetryContext context = ThreadContext.getRequestTelemetryContext(); UserCookie userCookie = com.microsoft.applicationinsights.web.internal.cookies.Cookie.getCookie( UserCookie.class, request, UserCookie.COOKIE_NAME); if (userCookie == null) { return; } String userId = userCookie.getUserId(); Date acquisitionDate = userCookie.getAcquisitionDate(); context.setUserCookie(userCookie); UserContext userContext = context.getHttpRequestTelemetry().getContext().getUser(); userContext.setId(userId); userContext.setAcquisitionDate(acquisitionDate); }
/** * Initializes the properties of the given telemetry. * * @param telemetry The {@link com.microsoft.applicationinsights.telemetry.Telemetry} to initialize. */ @Override protected void onInitializeTelemetry(Telemetry telemetry) { UserContext userContext = telemetry.getContext().getUser(); if (!CommonUtils.isNullOrEmpty(userContext.getId())) { return; } RequestTelemetry requestTelemetry = ThreadContext.getRequestTelemetryContext().getHttpRequestTelemetry(); UserContext requestUserContext = requestTelemetry.getContext().getUser(); if (requestUserContext == null) { return; } userContext.setId(requestUserContext.getId()); Date requestUserAcquisitionDate = requestUserContext.getAcquisitionDate(); userContext.setAcquisitionDate(requestUserAcquisitionDate); } }
/** * Initializes the properties of the given telemetry. * * @param telemetry The {@link com.microsoft.applicationinsights.telemetry.Telemetry} to initialize. */ @Override protected void onInitializeTelemetry(Telemetry telemetry) { UserContext userContext = telemetry.getContext().getUser(); if (!CommonUtils.isNullOrEmpty(userContext.getId())) { return; } RequestTelemetry requestTelemetry = ThreadContext.getRequestTelemetryContext().getHttpRequestTelemetry(); UserContext requestUserContext = requestTelemetry.getContext().getUser(); if (requestUserContext == null) { return; } userContext.setId(requestUserContext.getId()); Date requestUserAcquisitionDate = requestUserContext.getAcquisitionDate(); userContext.setAcquisitionDate(requestUserAcquisitionDate); } }
@Before public void classInitialize() { acquisitionTime = DateTimeUtils.getDateTimeNow(); RequestTelemetryContext context = new RequestTelemetryContext(DateTimeUtils.getDateTimeNow().getTime()); ThreadContext.setRequestTelemetryContext(context); // Set session ID for the http request. RequestTelemetry requestTelemetry = context.getHttpRequestTelemetry(); requestTelemetry.getContext().getUser().setId(REQUEST_USER_ID); requestTelemetry.getContext().getUser().setAcquisitionDate(acquisitionTime); }
@Test public void testNoUserCookie() { RequestTelemetryContext requestTelemetryContext = ThreadContext.getRequestTelemetryContext(); requestTelemetryContext.getHttpRequestTelemetry().getContext().getUser().setAcquisitionDate(null); requestTelemetryContext.getHttpRequestTelemetry().getContext().getUser().setId(null); TraceTelemetry telemetry = new TraceTelemetry(); userTelemetryInitializer.onInitializeTelemetry(telemetry); Assert.assertNull(telemetry.getContext().getUser().getId()); Assert.assertNull(telemetry.getContext().getUser().getAcquisitionDate()); }