public LoginResponse build() { return new LoginResponse(username, userId, password, domainId, timeout, registered, accountName, firstName, lastName, accountType, timezone, timezoneOffset, sessionKey, jSessionId); }
@Test public void performValidLogIn() throws Exception { LoginResponse expectedResponse = new LoginResponse(); expectedResponse.setToken("RANDOM TOKEN"); when(mockApi.logIn(any(LogInData.class))).thenReturn(Observable.just(expectedResponse)); TestSubscriber<LoginResponse> testSubscriber = new TestSubscriber<>(); Observable<LoginResponse> observable = mockAPI.logIn(new LogInData("TestLogin", "TestPassword")); observable.subscribe(testSubscriber); testSubscriber.assertNoErrors(); testSubscriber.assertReceivedOnNext(Collections.singletonList(expectedResponse)); }
public T fromLoginResponse(LoginResponse in) { return this .username(in.getUsername()) .userId(in.getUserId()) .password(in.getPassword()) .domainId(in.getDomainId()) .timeout(in.getTimeout()) .registered(in.isRegistered()) .accountName(in.getAccountName()) .firstName(in.getFirstName()) .lastName(in.getLastName()) .accountType(in.getAccountType()) .timezone(in.getTimezone()) .timezoneOffset(in.getTimezoneOffset()) .sessionKey(in.getSessionKey()) .jSessionId(in.getJSessionId()); } }
@Override public HttpRequest filter(HttpRequest request) throws HttpException { LoginResponse loginResponse = loginResponseSupplier.get(); Builder<?> builder = request.toBuilder(); builder.replaceHeader(HttpHeaders.COOKIE, "JSESSIONID=" + loginResponse.getJSessionId()); builder.replaceQueryParam("sessionkey", loginResponse.getSessionKey()); return builder.build(); }
public void testLoginWhenResponseIs2xxIncludesJSessionId() throws IOException { String domain = "Partners/jCloud"; String user = "jcloud"; String password = "jcl0ud"; String md5password = base16().lowerCase().encode(md5().hashString(password, UTF_8).asBytes()); String jSessionId = "90DD65D13AEAA590ECCA312D150B9F6D"; SessionClient client = requestSendsResponse(login, HttpResponse.builder() .statusCode(200) .headers( ImmutableMultimap.<String, String>builder() .put("Set-Cookie", "JSESSIONID=" + jSessionId + "; Path=/client") .build()) .payload(payloadFromResource("/loginresponse.json")) .build()); assertEquals(client.loginUserInDomainWithHashOfPassword(user, domain, md5password).toString(), LoginResponse.builder().timeout(1800).lastName("Kiran").registered(false).username("jcloud").firstName("Vijay") .domainId("11").accountType(Account.Type.DOMAIN_ADMIN).userId("19").sessionKey( "uYT4/MNiglgAKiZRQkvV8QP8gn0=").jSessionId(jSessionId).accountName("jcloud").build().toString()); }
@Override public LoginResponse apply(HttpResponse response) { checkNotNull(response, "response"); LoginResponse login = parser.apply(response); checkNotNull(login, "loginResponse"); String jSessionId = get(Splitter.on("=").split(get(Splitter.on(";").trimResults().split( getOnlyElement(response.getHeaders().get("Set-Cookie"))), 0)), 1); return LoginResponse.builder().fromLoginResponse(login).jSessionId(jSessionId).build(); } }
/** * it is important that we close any sessions on close to help the server not become overloaded. */ @PreDestroy public void logoutOnClose() { for (LoginResponse s : authenticationResponseCache.asMap().values()) { try { sessionClient.logoutUser(s.getSessionKey()); } catch (Exception e) { logger.error(e, "error logging out session %s", s.getSessionKey()); } } } }
public T fromLoginResponse(LoginResponse in) { return this .username(in.getUsername()) .userId(in.getUserId()) .password(in.getPassword()) .domainId(in.getDomainId()) .timeout(in.getTimeout()) .registered(in.isRegistered()) .accountName(in.getAccountName()) .firstName(in.getFirstName()) .lastName(in.getLastName()) .accountType(in.getAccountType()) .timezone(in.getTimezone()) .timezoneOffset(in.getTimezoneOffset()) .sessionKey(in.getSessionKey()) .jSessionId(in.getJSessionId()); } }
@Override public HttpRequest filter(HttpRequest request) throws HttpException { LoginResponse loginResponse = loginResponseSupplier.get(); Builder<?> builder = request.toBuilder(); builder.replaceHeader(HttpHeaders.COOKIE, "JSESSIONID=" + loginResponse.getJSessionId()); builder.replaceQueryParam("sessionkey", loginResponse.getSessionKey()); return builder.build(); }
public void testLoginWhenResponseIs2xxIncludesJSessionId() throws IOException { String domain = "Partners/jclouds"; String user = "jclouds"; String password = "jcl0ud"; String md5password = base16().lowerCase().encode(md5().hashString(password, UTF_8).asBytes()); String jSessionId = "90DD65D13AEAA590ECCA312D150B9F6D"; SessionApi client = requestSendsResponse(login, HttpResponse.builder() .statusCode(200) .headers( ImmutableMultimap.<String, String>builder() .put("Set-Cookie", "JSESSIONID=" + jSessionId + "; Path=/client") .build()) .payload(payloadFromResource("/loginresponse.json")) .build()); assertEquals(client.loginUserInDomainWithHashOfPassword(user, domain, md5password).toString(), LoginResponse.builder().timeout(1800).lastName("Kiran").registered(false).username("jclouds").firstName("Vijay") .domainId("11").accountType(Account.Type.DOMAIN_ADMIN).userId("19").sessionKey( "uYT4/MNiglgAKiZRQkvV8QP8gn0=").jSessionId(jSessionId).accountName("jclouds").build().toString()); }
@Override public LoginResponse apply(HttpResponse response) { checkNotNull(response, "response"); LoginResponse login = parser.apply(response); checkNotNull(login, "loginResponse"); String jSessionId = get(Splitter.on("=").split(get(Splitter.on(";").trimResults().split( getOnlyElement(response.getHeaders().get("Set-Cookie"))), 0)), 1); return LoginResponse.builder().fromLoginResponse(login).jSessionId(jSessionId).build(); } }
/** * it is important that we close any sessions on close to help the server not become overloaded. */ @PreDestroy public void logoutOnClose() { for (LoginResponse s : authenticationResponseCache.asMap().values()) { try { sessionClient.logoutUser(s.getSessionKey()); } catch (Exception e) { logger.error(e, "error logging out session %s", s.getSessionKey()); } } } }
public T fromLoginResponse(LoginResponse in) { return this .username(in.getUsername()) .userId(in.getUserId()) .password(in.getPassword()) .domainId(in.getDomainId()) .timeout(in.getTimeout()) .registered(in.isRegistered()) .accountName(in.getAccountName()) .firstName(in.getFirstName()) .lastName(in.getLastName()) .accountType(in.getAccountType()) .timezone(in.getTimezone()) .timezoneOffset(in.getTimezoneOffset()) .sessionKey(in.getSessionKey()) .jSessionId(in.getJSessionId()); } }
@Override public HttpRequest filter(HttpRequest request) throws HttpException { LoginResponse loginResponse = loginResponseSupplier.get(); Builder<?> builder = request.toBuilder(); builder.replaceHeader(HttpHeaders.COOKIE, "JSESSIONID=" + loginResponse.getJSessionId()); builder.replaceQueryParam("sessionkey", loginResponse.getSessionKey()); return builder.build(); }
public LoginResponse build() { return new LoginResponse(username, userId, password, domainId, timeout, registered, accountName, firstName, lastName, accountType, timezone, timezoneOffset, sessionKey, jSessionId); }
@Override public LoginResponse apply(HttpResponse response) { checkNotNull(response, "response"); LoginResponse login = parser.apply(response); checkNotNull(login, "loginResponse"); String jSessionId = get(Splitter.on("=").split(get(Splitter.on(";").trimResults().split( getOnlyElement(response.getHeaders().get("Set-Cookie"))), 0)), 1); return LoginResponse.builder().fromLoginResponse(login).jSessionId(jSessionId).build(); } }
/** * it is important that we close any sessions on close to help the server not become overloaded. */ @PreDestroy public void logoutOnClose() { for (LoginResponse s : authenticationResponseCache.asMap().values()) { try { sessionClient.logoutUser(s.getSessionKey()); } catch (Exception e) { logger.error(e, "error logging out session %s", s.getSessionKey()); } } } }
private void checkLoginAsTheNewUser(String expectedUsername) { LoginResponse response = globalAdminClient.getSessionClient().loginUserInDomainWithHashOfPassword( expectedUsername, "", base16().lowerCase().encode(md5().hashString("password", UTF_8).asBytes())); assertNotNull(response); assertNotNull(response.getSessionKey()); assertNotNull(response.getJSessionId()); client.getSessionClient().logoutUser(response.getSessionKey()); } }
public LoginResponse build() { return new LoginResponse(username, userId, password, domainId, timeout, registered, accountName, firstName, lastName, accountType, timezone, timezoneOffset, sessionKey, jSessionId); }
private void checkLoginAsTheNewUser(String expectedUsername) { LoginResponse response = globalAdminClient.getSessionApi().loginUserInDomainWithHashOfPassword( expectedUsername, "", base16().lowerCase().encode(md5().hashString("password", UTF_8).asBytes())); assertNotNull(response); assertNotNull(response.getSessionKey()); assertNotNull(response.getJSessionId()); client.getSessionApi().logoutUser(response.getSessionKey()); } }