Java 类javax.ws.rs.core.NewCookie 实例源码

项目:syndesis    文件:ConnectorCredentialHandler.java   
@POST
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public Response create(@NotNull @Valid final AcquisitionRequest request,
    @Context final HttpServletRequest httpRequest) {

    final AcquisitionFlow acquisitionFlow = credentials.acquire(connectorId, apiBase(httpRequest),
        absoluteTo(httpRequest, request.getReturnUrl()));

    final CredentialFlowState flowState = acquisitionFlow.state().get();
    final NewCookie cookie = state.persist(flowState.persistenceKey(), "/", flowState);

    final AcquisitionResponse acquisitionResponse = AcquisitionResponse.Builder.from(acquisitionFlow)
        .state(State.Builder.cookie(cookie.toString())).build();

    return Response.accepted().entity(acquisitionResponse).build();
}
项目:syndesis    文件:ClientSideStateTest.java   
@Test
public void shouldPersistAsInRfcErrata() {
    final ClientSideState clientSideState = new ClientSideState(RFC_EDITION, RFC_TIME, RFC_IV_SOURCE,
        SIMPLE_SERIALIZATION, SIMPLE_DESERIALIZATION, ClientSideState.DEFAULT_TIMEOUT);

    final NewCookie cookie = clientSideState.persist("id", "/path", "a state string");

    assertThat(cookie).isNotNull();
    assertThat(cookie.getName()).isEqualTo("id");

    assertThat(cookie.getValue())
        .isEqualTo("pzSOjcNui9-HWS_Qk1Pwpg|MTM0NzI2NTk1NQ|dGlk|tL3lJPf2nUSFMN6dtVXJTw|uea1fgC67RmOxfpNz8gMbnPWfDA");
    assertThat(cookie.getPath()).isEqualTo("/path");
    assertThat(cookie.isHttpOnly()).isFalse();
    assertThat(cookie.isSecure()).isTrue();
}
项目:syndesis    文件:ClientSideStateTest.java   
@Test
public void shouldRestoreMultipleAndOrderByTimestamp() {
    final Iterator<Long> times = Arrays
        .asList(946598400L, 1293753600L, 978220800L, 946598400L, 1293753600L, 978220800L).iterator();
    final ClientSideState clientSideState = new ClientSideState(RFC_EDITION, () -> times.next(),
        ClientSideState.DEFAULT_TIMEOUT);

    final NewCookie cookie1999 = clientSideState.persist("key", "/path", "1");
    final NewCookie cookie2010 = clientSideState.persist("key", "/path", "3");
    final NewCookie cookie2000 = clientSideState.persist("key", "/path", "2");

    final Set<String> restored = clientSideState.restoreFrom(Arrays.asList(cookie1999, cookie2010, cookie2000),
        String.class);

    assertThat(restored).containsExactly("3", "2", "1");
}
项目:minijax    文件:Security.java   
/**
 * Logs in the user with email address and password.
 * Returns the user on success.
 *
 * @param email The user's email address.
 * @param password The user's plain text password.
 * @return the user details.
 */
public NewCookie login(final String email, final String password) {
    final SecurityUser candidate = dao.findUserByEmail(userClass, email);
    if (candidate == null) {
        throw new BadRequestException("notfound");
    }

    if (candidate.getPasswordHash() == null) {
        throw new BadRequestException("invalid");
    }

    if (!BCrypt.checkpw(password, candidate.getPasswordHash())) {
        throw new BadRequestException("incorrect");
    }

    return loginAs(candidate);
}
项目:minijax    文件:SecurityTest.java   
@Test
public void testLogout() {
    final User user = new User();

    final UserSession session = new UserSession();
    session.setUser(user);

    final String cookie = session.getId().toString();

    final SecurityDao dao = mock(SecurityDao.class);
    when(dao.read(eq(UserSession.class), eq(session.getId()))).thenReturn(session);
    when(dao.read(eq(User.class), eq(user.getId()))).thenReturn(user);

    final Configuration config = mock(Configuration.class);
    when(config.getProperty(eq(MinijaxProperties.SECURITY_USER_CLASS))).thenReturn(User.class);

    final Security<User> security = new Security<>(dao, config, null, cookie);
    final NewCookie newCookie = security.logout();
    assertNotNull(newCookie);
    assertEquals("", newCookie.getValue());

    verify(dao).purge(eq(session));
}
项目:minijax    文件:MinijaxNewCookieDelegate.java   
@Override
public NewCookie fromString(final String value) {
    if (value == null || value.isEmpty()) {
        return null;
    }

    final List<HttpCookie> httpCookies = HttpCookie.parse(value);
    final HttpCookie httpCookie = httpCookies.get(0);
    return new NewCookie(
            httpCookie.getName(),
            httpCookie.getValue(),
            httpCookie.getPath(),
            httpCookie.getDomain(),
            httpCookie.getVersion(),
            httpCookie.getComment(),
            (int) httpCookie.getMaxAge(),
            null,
            httpCookie.getSecure(),
            httpCookie.isHttpOnly());
}
项目:minijax    文件:MinijaxRuntimeDelegate.java   
@Override
@SuppressWarnings("unchecked")
public <T> HeaderDelegate<T> createHeaderDelegate(final Class<T> type) {
    if (type == MediaType.class) {
        return (HeaderDelegate<T>) MEDIA_TYPE_DELEGATE;
    }
    if (type == Cookie.class) {
        return (HeaderDelegate<T>) COOKIE_DELEGATE;
    }
    if (type == NewCookie.class) {
        return (HeaderDelegate<T>) NEW_COOKIE_DELEGATE;
    }
    if (type == CacheControl.class) {
        return (HeaderDelegate<T>) CACHE_CONTROL_DELEGATE;
    }
    throw new IllegalArgumentException("Unrecognized header delegate: " + type);
}
项目:devoxx-2017    文件:AuthenticateResource.java   
@POST
@Consumes(APPLICATION_JSON)
@Produces(APPLICATION_JSON)
@ApiOperation(value = "Authenticate a user", notes = "Verify a user credentials")
@ApiResponses(value = {
        @ApiResponse(code = 200, message = "user authenticated"),
        @ApiResponse(code = 401, message = "Wrong user or password")})
public Response authenticate(Credentials credentials) {
    if (UsersDao.authenticate(credentials)) {
        byte[] bearer = UsersDao.getBearer(credentials);
        StringBuilder auth = new StringBuilder().append("Bearer ").append(PasswordStorage.toBase64(bearer));
        return Response.ok()
                .cookie(new NewCookie("Authorization", auth.toString(), null, null,
                        DEFAULT_VERSION, null, DEFAULT_MAX_AGE, null, true, true))
                .entity(new ResponseMessage(true, "user authenticated")).build();
    } else {
        return Response.status(UNAUTHORIZED)
                .entity(new ResponseMessage(false, "Username or password is incorrect")).build();
    }

}
项目:parsec-libraries    文件:ParsecHttpUtilTest.java   
@Test
public void testGetCookie() throws Exception {
    NewCookie cookie1 = ParsecHttpUtil.getCookie(new Cookie(
        "cookie1_name",
        "cookie1_value",
        false,
        null,
        "cookie1_path",
        1,
        true,
        true
    ));

    assertEquals("cookie1_name", cookie1.getName());
    assertEquals("cookie1_value", cookie1.getValue());
    assertEquals(null, cookie1.getDomain());
    assertEquals("cookie1_path", cookie1.getPath());
    assertEquals(null, cookie1.getExpiry());
    assertEquals(1, cookie1.getMaxAge());
    assertTrue(cookie1.isSecure());
    assertTrue(cookie1.isHttpOnly());
}
项目:jax-rs-pac4j    文件:JaxRsContext.java   
public void populateResponse(ContainerResponseContext responseContext) {
    if (hasResponseContent) {
        responseContext.setEntity(responseContent);
    }
    if (hasResponseContentType) {
        responseContext.getHeaders().putSingle(HttpHeaders.CONTENT_TYPE, responseContentType);
    }
    if (hasResponseStatus) {
        responseContext.setStatus(responseStatus);
    }
    for (Entry<String, String> headers : responseHeaders.entrySet()) {
        responseContext.getHeaders().putSingle(headers.getKey(), headers.getValue());
    }
    for (NewCookie cookie : responseCookies) {
        responseContext.getHeaders().add(HttpHeaders.SET_COOKIE, cookie);
    }
}
项目:product-ei    文件:StockQuoteService.java   
/**
 * Retrieve a stock for a given symbol.
 * http://localhost:9090/stockquote/IBM
 *
 * @param symbol Stock symbol will be taken from the path parameter.
 * @return Response
 */
@GET
@Path("/{symbol}")
@Produces({"application/json", "text/xml"})
@ApiOperation(
        value = "Return stock quote corresponding to the symbol",
        notes = "Returns HTTP 404 if the symbol is not found")
@ApiResponses(value = {
        @ApiResponse(code = 200, message = "Valid stock item found"),
        @ApiResponse(code = 404, message = "Stock item not found")})
public Response getQuote(@ApiParam(value = "Symbol", required = true)
                         @PathParam("symbol") String symbol) throws SymbolNotFoundException {
    Stock stock = stockQuotes.get(symbol);
    if (stock == null) {
        throw new SymbolNotFoundException("Symbol " + symbol + " not found");
    }
    return Response.ok().entity(stock).cookie(new NewCookie("symbol", symbol)).build();
}
项目:syndesis-rest    文件:ConnectorCredentialHandler.java   
@POST
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public Response create(@NotNull @Valid final AcquisitionRequest request,
    @Context final HttpServletRequest httpRequest) {

    final AcquisitionFlow acquisitionFlow = credentials.acquire(connectorId, apiBase(httpRequest),
        absoluteTo(httpRequest, request.getReturnUrl()));

    final CredentialFlowState flowState = acquisitionFlow.state().get();
    final NewCookie cookie = state.persist(flowState.persistenceKey(), "/", flowState);

    final AcquisitionResponse acquisitionResponse = AcquisitionResponse.Builder.from(acquisitionFlow)
        .state(State.Builder.cookie(cookie.toString())).build();

    return Response.accepted().entity(acquisitionResponse).build();
}
项目:syndesis-rest    文件:ClientSideStateTest.java   
@Test
public void shouldPersistAsInRfcErrata() {
    final ClientSideState clientSideState = new ClientSideState(RFC_EDITION, RFC_TIME, RFC_IV_SOURCE,
        SIMPLE_SERIALIZATION, SIMPLE_DESERIALIZATION, ClientSideState.DEFAULT_TIMEOUT);

    final NewCookie cookie = clientSideState.persist("id", "/path", "a state string");

    assertThat(cookie).isNotNull();
    assertThat(cookie.getName()).isEqualTo("id");

    assertThat(cookie.getValue())
        .isEqualTo("pzSOjcNui9-HWS_Qk1Pwpg|MTM0NzI2NTk1NQ|dGlk|tL3lJPf2nUSFMN6dtVXJTw|uea1fgC67RmOxfpNz8gMbnPWfDA");
    assertThat(cookie.getPath()).isEqualTo("/path");
    assertThat(cookie.isHttpOnly()).isFalse();
    assertThat(cookie.isSecure()).isTrue();
}
项目:syndesis-rest    文件:ClientSideStateTest.java   
@Test
public void shouldRestoreMultipleAndOrderByTimestamp() {
    final Iterator<Long> times = Arrays
        .asList(946598400L, 1293753600L, 978220800L, 946598400L, 1293753600L, 978220800L).iterator();
    final ClientSideState clientSideState = new ClientSideState(RFC_EDITION, () -> times.next(),
        ClientSideState.DEFAULT_TIMEOUT);

    final NewCookie cookie1999 = clientSideState.persist("key", "/path", "1");
    final NewCookie cookie2010 = clientSideState.persist("key", "/path", "3");
    final NewCookie cookie2000 = clientSideState.persist("key", "/path", "2");

    final Set<String> restored = clientSideState.restoreFrom(Arrays.asList(cookie1999, cookie2010, cookie2000),
        String.class);

    assertThat(restored).containsExactly("3", "2", "1");
}
项目:resteasy-examples    文件:CustomerResource.java   
@POST
@Produces("text/html")
public Response createCustomer(@FormParam("firstname") String first,
                               @FormParam("lastname") String last)
{
   Customer customer = new Customer();
   customer.setId(idCounter.incrementAndGet());
   customer.setFirstName(first);
   customer.setLastName(last);
   customerDB.put(customer.getId(), customer);
   System.out.println("Created customer " + customer.getId());
   String output = "Created customer <a href=\"customers/" + customer.getId() + "\">" + customer.getId() + "</a>";
   String lastVisit = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.LONG).format(new Date());
   URI location = URI.create("/customers/" + customer.getId());
   return Response.created(location)
           .entity(output)
           .cookie(new NewCookie("last-visit", lastVisit))
           .build();

}
项目:resteasy-examples    文件:CustomerResource.java   
@GET
@Path("{id}")
@Produces("text/plain")
public Response getCustomer(@PathParam("id") int id,
                            @HeaderParam("User-Agent") String userAgent,
                            @CookieParam("last-visit") String date)
{
   final Customer customer = customerDB.get(id);
   if (customer == null)
   {
      throw new WebApplicationException(Response.Status.NOT_FOUND);
   }
   String output = "User-Agent: " + userAgent + "\r\n";
   output += "Last visit: " + date + "\r\n\r\n";
   output += "Customer: " + customer.getFirstName() + " " + customer.getLastName();
   String lastVisit = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.LONG).format(new Date());
   return Response.ok(output)
           .cookie(new NewCookie("last-visit", lastVisit))
           .build();
}
项目:resteasy-examples    文件:CustomerResource.java   
@POST
@Produces("text/html")
public Response createCustomer(@FormParam("firstname") String first,
                               @FormParam("lastname") String last)
{
   Customer customer = new Customer();
   customer.setId(idCounter.incrementAndGet());
   customer.setFirstName(first);
   customer.setLastName(last);
   customerDB.put(customer.getId(), customer);
   System.out.println("Created customer " + customer.getId());
   String output = "Created customer <a href=\"customers/" + customer.getId() + "\">" + customer.getId() + "</a>";
   String lastVisit = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.LONG).format(new Date());
   URI location = URI.create("/customers/" + customer.getId());
   return Response.created(location)
           .entity(output)
           .cookie(new NewCookie("last-visit", lastVisit))
           .build();

}
项目:resteasy-examples    文件:CustomerResource.java   
@GET
@Path("{id}")
@Produces("text/plain")
public Response getCustomer(@PathParam("id") int id,
                            @HeaderParam("User-Agent") String userAgent,
                            @CookieParam("last-visit") String date)
{
   final Customer customer = customerDB.get(id);
   if (customer == null)
   {
      throw new WebApplicationException(Response.Status.NOT_FOUND);
   }
   String output = "User-Agent: " + userAgent + "\r\n";
   output += "Last visit: " + date + "\r\n\r\n";
   output += "Customer: " + customer.getFirstName() + " " + customer.getLastName();
   String lastVisit = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.LONG).format(new Date());
   return Response.ok(output)
           .cookie(new NewCookie("last-visit", lastVisit))
           .build();
}
项目:step    文件:AccessServices.java   
@POST
@Path("/login")
   @Produces("application/json")
   @Consumes("application/json")
   public Response authenticateUser(Credentials credentials) {
       boolean authenticated = authenticator.authenticate(credentials);
       if(authenticated) {
        Session session = issueToken(credentials.getUsername());
        NewCookie cookie = new NewCookie("sessionid", session.getToken(), "/", null, 1, null, -1, null, false, false);
        Profile profile = getProfile(credentials.getUsername());
        session.setProfile(profile);
        return Response.ok(session).cookie(cookie).build();             
       } else {
        return Response.status(Response.Status.UNAUTHORIZED).build();               
       }    
   }
项目:codenvy    文件:SsoCookieBuilder.java   
public void setCookies(
    Response.ResponseBuilder builder, String token, boolean secure, boolean isAnonymous) {
  builder.header(
      "Set-Cookie",
      new NewCookie(
              "token-access-key",
              token,
              accessCookiePath,
              null,
              null,
              ticketLifeTimeSeconds,
              secure)
          + ";HttpOnly");
  builder.header(
      "Set-Cookie",
      new NewCookie("session-access-key", token, "/", null, null, -1, secure) + ";HttpOnly");
  if (!isAnonymous) {
    builder.cookie(
        new NewCookie("logged_in", "true", "/", null, null, ticketLifeTimeSeconds, secure));
  }
}
项目:alm-rest-api    文件:AlmApiStub.java   
@GET
@Path("/authentication-point/authenticate")
public Response login(
        @HeaderParam(HttpHeaders.AUTHORIZATION) String authorization,
        @Context UriInfo uriInfo)
{
    if (authorization.contains("Basic"))
    {
        NewCookie cookie = new NewCookie("LWSSO_COOKIE_KEY", UUID.randomUUID().toString());

        updateCookieHolder(cookie);

        return Response.ok().cookie(cookie).build();
    }
    else
    {
        return unauthorizedResponse(uriInfo);
    }
}
项目:bootique-jetty    文件:SessionsIT.java   
@Test
public void testSessions() {

    testFactory.app("-s")
            .module(b -> JettyModule.extend(b).addServlet(new TestServlet(), "s1", "/*"))
            .autoLoadModules()
            .run();

    WebTarget base = ClientBuilder.newClient().target("http://localhost:8080");

    Response r1 = base.path("/").request().get();
    assertEquals(Status.OK.getStatusCode(), r1.getStatus());
    assertEquals("count: 1", r1.readEntity(String.class));
    NewCookie sessionId = r1.getCookies().get("JSESSIONID");

    assertNotNull(sessionId);

    Response r2 = base.path("/").request().cookie(sessionId).get();
    assertEquals(Status.OK.getStatusCode(), r2.getStatus());
    assertEquals("count: 2", r2.readEntity(String.class));
}
项目:authrite    文件:UsersResource.java   
@Path("/login")
@POST
public Response loginUser(@Valid final LoginRequest loginRequest) {
    final String email = loginRequest.getEmail();
    final String password = loginRequest.getPassword();
    final Optional<LoginResult> maybeResult = usersService.loginUser(email, password);

    if (maybeResult.isPresent()) {
        final LoginResult result = maybeResult.get();
        return Response.seeOther(
                UriBuilder.fromResource(UsersResource.class)
                        .path(UsersResource.class, "getUser")
                        .build(result.getUserId()))
                .cookie(new NewCookie(jwtConfiguration.getCookieName(), result.getToken()))
                .build();


    } else {
        throw Exceptions.webAppException(UsersService.USER_NOT_FOUND, Response.Status.NOT_FOUND);
    }
}
项目:keywhiz    文件:SessionLogoutResource.java   
/**
 * Logout and remove any session cookies
 *
 * @description Log out and remove any session cookies
 * @responseMessage 200 Logged out successfully
 */
@Timed @ExceptionMetered
@POST
@Produces(APPLICATION_JSON)
public Response logout(@Nullable @CookieParam(value = "session") Cookie sessionCookie) {
  if (sessionCookie != null) {
    Optional<User> user = cookieAuthenticator.authenticate(sessionCookie);

    if (user.isPresent()) {
      logger.info("User logged out: {}", user.get().getName());
    } else {
      logger.warn("Invalid user cookie on logout.");
    }
  }

  NewCookie expiredCookie = cookieFactory.getExpiredSessionCookie();

  return Response.ok()
      .header(HttpHeaders.SET_COOKIE, expiredCookie.toString())
      .build();
}
项目:keywhiz    文件:SessionLogoutResourceIntegrationTest.java   
@Test public void sendsExpiredCookie() throws Exception {
  Request request = new Request.Builder()
      .post(RequestBody.create(MediaType.parse("text/plain"), ""))
      .url(testUrl("/admin/logout"))
      .build();

  Response response = client.newCall(request).execute();
  assertThat(response.code()).isEqualTo(200);

  List<String> cookies = response.headers(HttpHeaders.SET_COOKIE);
  assertThat(cookies).hasSize(1);

  NewCookie cookie = NewCookie.valueOf(cookies.get(0));
  assertThat(cookie.getName()).isEqualTo("session");
  assertThat(cookie.getValue()).isEqualTo("expired");
  assertThat(cookie.getVersion()).isEqualTo(1);
  assertThat(cookie.getPath()).isEqualTo("/admin");
  assertThat(cookie.isSecure()).isTrue();
  assertThat(cookie.isHttpOnly()).isTrue();
  assertThat(cookie.getExpiry()).isEqualTo(new Date(0));
}
项目:routing-bird    文件:AuthRoutingBirdSessionFilter.java   
@Override
public void filter(ContainerRequestContext requestContext, ContainerResponseContext responseContext) throws IOException {
    MultivaluedMap<String, Object> headers = responseContext.getHeaders();
    for (String name : requestContext.getPropertyNames()) {
        if (name.startsWith("rb_session")) {
            Object rbSession = requestContext.getProperty(name);
            headers.add("Set-Cookie",
                new NewCookie(name,
                    rbSession.toString(),
                    "/",
                    null,
                    Cookie.DEFAULT_VERSION,
                    null,
                    NewCookie.DEFAULT_MAX_AGE,
                    null,
                    false,
                    false));
        }
    }
}
项目:oauth-service    文件:CookieUtil.java   
/**
 * Get a new login cookie
 *
 * @param em     used to persist cookie
 * @param user   user that logged in
 * @param client client that has logged in
 * @return
 */
public static NewCookie getNewCookie(
        final EntityManager em,
        final User user,
        final Client client
) {
    final LoginCookie loginCookie = generateLoginCookie(em, user);
    if (loginCookie == null) {
        return null;
    }

    return new NewCookie(
            getCookieName(client),
            loginCookie.getSecret(),
            "/",
            null,
            NewCookie.DEFAULT_VERSION,
            null,
            60 * 60 * 24 * 30,
            loginCookie.getExpires(),
            true,
            true
    );
}
项目:oauth2-dropwizard    文件:OAuth2Resource.java   
@GET
@Timed
@Path(value = "/logout")
public Response logout(@Context final HttpServletRequest request) {
    // invalidate cookie if exists
    ResponseBuilder reply = Response.ok();

    for (Cookie c : request.getCookies()) {
        if (OAuth2AuthFilter.AUTH_COOKIE_NAME.equals(c.getName())) {
            reply.cookie(new NewCookie(OAuth2AuthFilter.AUTH_COOKIE_NAME,
                    null, "/", request.getServerName(), null, 0, true));
            break;
        }
    }

    return reply.build();
}
项目:msf4j    文件:CookieHeaderProviderTest.java   
@Test
public void testFromStringWithExtendedParameters() {
    String cookieString = "Version=1; Application=msf4j; Path=/carbon; Domain=wso2; Expires=Sun, 06 Nov 1994 " +
            "08:49:37 GMT; Secure; HttpOnly; MaxAge=50; Comment=TestOnly";
    String name = "Application";
    String value = "msf4j";
    String path = "/carbon";
    String domain = "wso2";
    long dateTime = 784111777000L;

    NewCookie cookie = (NewCookie) Cookie.valueOf(cookieString);
    assertEquals(cookie.getName(), name);
    assertEquals(cookie.getValue(), value);
    assertEquals(cookie.getPath(), path);
    assertEquals(cookie.getVersion(), 1);
    assertEquals(cookie.getDomain(), domain);
    assertEquals(cookie.getComment(), "TestOnly");
    assertEquals(cookie.getExpiry().getTime(), dateTime);
    assertEquals(cookie.getMaxAge(), 50);
    assertEquals(cookie.isSecure(), true);
    assertEquals(cookie.isHttpOnly(), true);
}
项目:msf4j    文件:StockQuoteService.java   
/**
 * Retrieve a stock for a given symbol.
 * http://localhost:8080/stockquote/IBM
 *
 * @param symbol Stock symbol will be taken from the path parameter.
 * @return Response
 */
@GET
@Path("/{symbol}")
@Produces({"application/json", "text/xml"})
@ApiOperation(
        value = "Return stock quote corresponding to the symbol",
        notes = "Returns HTTP 404 if the symbol is not found")
@ApiResponses(value = {
        @ApiResponse(code = 200, message = "Valid stock item found"),
        @ApiResponse(code = 404, message = "Stock item not found")})
public Response getQuote(@ApiParam(value = "Symbol", required = true)
                         @PathParam("symbol") String symbol) throws SymbolNotFoundException {
    Stock stock = stockQuotes.get(symbol);
    if (stock == null) {
        throw new SymbolNotFoundException("Symbol " + symbol + " not found");
    }
    return Response.ok().entity(stock).cookie(new NewCookie("symbol", symbol)).build();
}
项目:msf4j    文件:StockQuoteService.java   
/**
 * Retrieve a stock for a given symbol.
 * http://localhost:8080/stockquote/IBM
 *
 * @param symbol Stock symbol will be taken from the path parameter.
 * @return Response
 */
@GET
@Path("/{symbol}")
@Produces({"application/json", "text/xml"})
@ApiOperation(
        value = "Return stock quote corresponding to the symbol",
        notes = "Returns HTTP 404 if the symbol is not found")
@ApiResponses(value = {
        @ApiResponse(code = 200, message = "Valid stock item found"),
        @ApiResponse(code = 404, message = "Stock item not found")})
public Response getQuote(@ApiParam(value = "Symbol", required = true)
                         @PathParam("symbol") String symbol) throws SymbolNotFoundException {
    System.out.println("Getting symbol using PathParam...");
    Stock stock = stockQuotes.get(symbol);
    if (stock == null) {
        throw new SymbolNotFoundException("Symbol " + symbol + " not found");
    }
    return Response.ok().entity(stock).cookie(new NewCookie("symbol", symbol)).build();
}
项目:metadict    文件:SessionHealthCheck.java   
@Override
protected Result check() throws Exception {
    LOGGER.info("Begin session health check");

    // Login:
    Credentials credentials = new Credentials(sessionHealthCheckHelper.getTechnicalUserName(), sessionHealthCheckHelper.getTechnicalUserPassword(), false);
    Response loginResponse = sessionHealthCheckHelper.getSessionResource().request().post(Entity.json(credentials));
    if (Response.Status.OK.getStatusCode() != loginResponse.getStatus()) {
        LOGGER.warn("Login request failed: {}", loginResponse.getStatus());
        return Result.unhealthy("Login request failed", loginResponse);
    }

    NewCookie loginCookie = loginResponse.getCookies().get("sessionToken");

    // Check if protected resource is accessible
    Response sessionLoggedIn = sessionHealthCheckHelper.getSessionResource().request().cookie(loginCookie).get();
    if (Response.Status.OK.getStatusCode() != sessionLoggedIn.getStatus()) {
        LOGGER.warn("User wasn't logged in after successful login response: {}", sessionLoggedIn.getStatus());
        return Result.unhealthy("User wasn't logged in after successful login response", sessionLoggedIn);
    }

    LOGGER.info("Session health check finished successfully");
    return Result.healthy();
}
项目:metadict    文件:AbstractIT.java   
@NotNull
protected NewCookie registerAndLogin(String testUsername, String testPassword) {
    // Register new user:
    RegistrationRequestData registrationRequestData = new RegistrationRequestData().setName(testUsername).setPassword(testPassword).setConfirmPassword(testPassword);
    Response registrationResponse = getTarget().path("/register").request().post(Entity.json(registrationRequestData));
    assertEquals("User registration failed - this indicates an error in the authentication subsystem", Response.Status.ACCEPTED.getStatusCode(), registrationResponse.getStatus());

    // Login:
    Credentials credentials = new Credentials(testUsername, testPassword, false);
    Response loginResponse = getTarget().path("/session").request().post(Entity.json(credentials));
    assertEquals("User login failed - this indicates an error in the authentication subsystem", Response.Status.OK.getStatusCode(), loginResponse.getStatus());

    NewCookie loginCookie = loginResponse.getCookies().get("sessionToken");
    assertTrue("Session cookie may not be empty - this indicates an error in the authentication subsystem", StringUtils.isNotEmpty(loginCookie.getValue()));
    return loginCookie;
}
项目:datacollector    文件:AuthenticationResourceHandler.java   
NewCookie createLoginCookie(HttpServletRequest req, SSOPrincipal principal) {
  String token = principal.getTokenStr();
  // if expires is negative, it means the cookie must be transient
  int expires = (principal.getExpires() <= -1)
      ? NewCookie.DEFAULT_MAX_AGE
      : (int) ((principal.getExpires() - getTimeNow()) / 1000);
  NewCookie authCookie = new NewCookie(
      HttpUtils.getLoginCookieName(),
      token,
      "/",
      null,
      null,
      expires,
      (req.isSecure() || secureLoadBalancer)
  );
  return authCookie;
}
项目:ocelot    文件:AbstractOcelotTest.java   
/**
 *
 * @param client
 * @return
 */
protected String getJsessionFromServer(Client client) {
    Options options = new Options();
    options.setMonitor(true);
    MessageFromClient mfc = getMessageFromClient(OcelotServices.class, "initCore", getJson(options));
    WebTarget target = client.target("http://localhost:" + PORT + "/" + CTXPATH).path("ocelot").path("endpoint");
    Response res = target.request(MediaType.APPLICATION_FORM_URLENCODED).accept(MediaType.APPLICATION_JSON).post(Entity.form(new Form("mfc", mfcToJson(mfc))));
    res.readEntity(String.class);
    res = target.request(MediaType.APPLICATION_FORM_URLENCODED).accept(MediaType.APPLICATION_JSON).post(Entity.form(new Form("mfc", mfcToJson(mfc))));
    NewCookie jsession = res.getCookies().get("JSESSIONID");
    String result = res.readEntity(String.class);
    try {
        MessageToClient mtc = mtcFromJson(result);
        assertThat(mtc.getType()).isEqualTo(MessageType.RESULT);
    } catch (Throwable t) {
        t.printStackTrace();
    }
    return jsession.getValue();
}
项目:acmeair-modular    文件:LoginREST.java   
@GET
@Path("/logout")
@Produces("text/plain")
public Response logout(@QueryParam("login") String login, @CookieParam("sessionid") String sessionid) {
    try {
        // TODO: seems to be a bug with chrome on the sessionid. This has always existed...
        // Looks like a difference between how the node.js app and java app handle cookies.
        if (sessionid.equals(""))
        {
            System.out.println("sessionid is empty");
        } else {
            authService.invalidateSession(sessionid);
        }
        // The following call will trigger query against all partitions, disable for now
        //          customerService.invalidateAllUserSessions(login);

        // TODO:  Want to do this with setMaxAge to zero, but to do that I need to have the same path/domain as cookie
        // created in login.  Unfortunately, until we have a elastic ip and domain name its hard to do that for "localhost".
        // doing this will set the cookie to the empty string, but the browser will still send the cookie to future requests
        // and the server will need to detect the value is invalid vs actually forcing the browser to time out the cookie and
        // not send it to begin with
        NewCookie sessCookie = new NewCookie(SESSIONID_COOKIE_NAME, "");
        return Response.ok("logged out").cookie(sessCookie).build();
    }
    catch (Exception e) {
        e.printStackTrace();
        return null;
    }
}
项目:ats-framework    文件:RestResponse.java   
/**
 * @return the new cookies retrieved from the response
 */
@PublicAtsApi
public NewCookie[] getNewCookies() {

    Collection<NewCookie> newCookies = response.getCookies().values();
    return newCookies.toArray(new NewCookie[newCookies.size()]);
}
项目:syndesis    文件:ClientSideStateTest.java   
@Test(expected = IllegalArgumentException.class)
public void shouldComplainAboutStalePickles() {
    final ClientSideState clientSideStateOld = new ClientSideState(RFC_EDITION,
        () -> ClientSideState.currentTimestmpUtc() - ClientSideState.DEFAULT_TIMEOUT - 100,
        ClientSideState.DEFAULT_TIMEOUT);

    final ClientSideState clientSideStateCurrent = new ClientSideState(RFC_EDITION,
        () -> ClientSideState.currentTimestmpUtc(), ClientSideState.DEFAULT_TIMEOUT);

    final NewCookie persisted = clientSideStateOld.persist("key", "/path", "value");

    clientSideStateCurrent.restoreFrom(persisted, String.class);
}
项目:syndesis    文件:ClientSideStateTest.java   
@Test(expected = IllegalArgumentException.class)
public void shouldComplainAboutTidMismatch() {
    final ClientSideState clientSideState1 = new ClientSideState(RFC_EDITION);
    final ClientSideState clientSideState2 = new ClientSideState(withCustomTid(new byte[] {2}));

    final NewCookie persisted = clientSideState1.persist("key", "/path", "value");

    clientSideState2.restoreFrom(persisted, String.class);
}
项目:syndesis    文件:ClientSideStateTest.java   
@Test
public void shouldRoundtripMaps() {
    final ClientSideState clientSideState = new ClientSideState(RFC_EDITION);

    final Map<String, String> data = new HashMap<>();
    data.put("k1", "v1");
    data.put("k2", "v2");

    final NewCookie cookie = clientSideState.persist("key", "/path", data);

    @SuppressWarnings("unchecked")
    final Map<String, String> value = clientSideState.restoreFrom(cookie, Map.class);
    assertThat(value).isEqualTo(data);
}