use of java.net.HttpCookie in project druid by druid-io.
the class DruidKerberosUtil method getAuthCookie.
public static HttpCookie getAuthCookie(CookieStore cookieStore, URI uri) {
if (cookieStore == null) {
return null;
}
boolean isSSL = uri.getScheme().equals("https");
List<HttpCookie> cookies = cookieStore.getCookies();
for (HttpCookie c : cookies) {
// replay will not be transmitted to the server.
if (c.getSecure() && !isSSL) {
continue;
}
if (c.getName().equals(AuthenticatedURL.AUTH_COOKIE)) {
return c;
}
}
return null;
}
use of java.net.HttpCookie in project android by cSploit.
the class RequestParser method parseRawCookie.
public static ArrayList<HttpCookie> parseRawCookie(String rawCookie) {
String[] rawCookieParams = rawCookie.split(";");
ArrayList<HttpCookie> cookies = new ArrayList<HttpCookie>();
for (String rawCookieParam : rawCookieParams) {
String[] rawCookieNameAndValue = rawCookieParam.split("=");
if (rawCookieNameAndValue.length != 2)
continue;
String cookieName = rawCookieNameAndValue[0].trim();
String cookieValue = rawCookieNameAndValue[1].trim();
HttpCookie cookie;
try {
cookie = new HttpCookie(cookieName, cookieValue);
} catch (IllegalArgumentException e) {
Logger.error("Invalid cookie. name=" + cookieName + ":" + cookieValue);
continue;
}
for (int i = 1; i < rawCookieParams.length; i++) {
String[] rawCookieParamNameAndValue = rawCookieParams[i].trim().split("=");
String paramName = rawCookieParamNameAndValue[0].trim();
if (paramName.equalsIgnoreCase("secure"))
cookie.setSecure(true);
else {
// attribute not a flag or missing value.
if (rawCookieParamNameAndValue.length == 2) {
String paramValue = rawCookieParamNameAndValue[1].trim();
if (paramName.equalsIgnoreCase("max-age")) {
long maxAge = Long.parseLong(paramValue);
cookie.setMaxAge(maxAge);
} else if (paramName.equalsIgnoreCase("domain"))
cookie.setDomain(paramValue);
else if (paramName.equalsIgnoreCase("path"))
cookie.setPath(paramValue);
else if (paramName.equalsIgnoreCase("comment"))
cookie.setComment(paramValue);
}
}
}
cookies.add(cookie);
}
return cookies;
}
use of java.net.HttpCookie in project jetty.project by eclipse.
the class CookieTest method testViaCookieManager.
@Test
public void testViaCookieManager() throws Exception {
// Setup client
CookieManager cookieMgr = new CookieManager();
client.setCookieStore(cookieMgr.getCookieStore());
HttpCookie cookie = new HttpCookie("hello", "world");
cookie.setPath("/");
cookie.setVersion(0);
cookie.setMaxAge(100000);
cookieMgr.getCookieStore().add(server.getWsUri(), cookie);
cookie = new HttpCookie("foo", "bar is the word");
cookie.setPath("/");
cookie.setMaxAge(100000);
cookieMgr.getCookieStore().add(server.getWsUri(), cookie);
// Client connects
CookieTrackingSocket clientSocket = new CookieTrackingSocket();
Future<Session> clientConnectFuture = client.connect(clientSocket, server.getWsUri());
// Server accepts connect
IBlockheadServerConnection serverConn = server.accept();
// client confirms upgrade and receipt of frame
String serverCookies = confirmClientUpgradeAndCookies(clientSocket, clientConnectFuture, serverConn);
assertThat("Cookies seen at server side", serverCookies, containsString("hello=world"));
assertThat("Cookies seen at server side", serverCookies, containsString("foo=bar is the word"));
}
use of java.net.HttpCookie in project jetty.project by eclipse.
the class ServletUpgradeRequest method getCookies.
@Override
public List<HttpCookie> getCookies() {
if (cookies == null) {
Cookie[] requestCookies = request.getCookies();
if (requestCookies != null) {
cookies = new ArrayList<>();
for (Cookie requestCookie : requestCookies) {
HttpCookie cookie = new HttpCookie(requestCookie.getName(), requestCookie.getValue());
// No point handling domain/path/expires/secure/httponly on client request cookies
cookies.add(cookie);
}
}
}
return cookies;
}
use of java.net.HttpCookie in project jetty.project by eclipse.
the class HttpClientTest method testStoppingClosesConnections.
@Test
public void testStoppingClosesConnections() throws Exception {
start(new EmptyServerHandler());
String host = "localhost";
int port = connector.getLocalPort();
String path = "/";
Response response = client.GET(scheme + "://" + host + ":" + port + path);
Assert.assertEquals(200, response.getStatus());
HttpDestinationOverHTTP destination = (HttpDestinationOverHTTP) client.getDestination(scheme, host, port);
DuplexConnectionPool connectionPool = (DuplexConnectionPool) destination.getConnectionPool();
long start = System.nanoTime();
HttpConnectionOverHTTP connection = null;
while (connection == null && TimeUnit.NANOSECONDS.toSeconds(System.nanoTime() - start) < 5) {
connection = (HttpConnectionOverHTTP) connectionPool.getIdleConnections().peek();
TimeUnit.MILLISECONDS.sleep(10);
}
Assert.assertNotNull(connection);
String uri = destination.getScheme() + "://" + destination.getHost() + ":" + destination.getPort();
client.getCookieStore().add(URI.create(uri), new HttpCookie("foo", "bar"));
client.stop();
Assert.assertEquals(0, client.getDestinations().size());
Assert.assertEquals(0, connectionPool.getIdleConnectionCount());
Assert.assertEquals(0, connectionPool.getActiveConnectionCount());
Assert.assertFalse(connection.getEndPoint().isOpen());
}
Aggregations