Search in sources :

Example 6 with TaggedData

use of aQute.bnd.service.url.TaggedData in project bnd by bndtools.

the class HttpClientTest method testRedirectURL.

public void testRedirectURL() throws Exception {
    try (HttpClient hc = new HttpClient()) {
        HttpsVerification httpsVerification = new HttpsVerification(httpsServer.getCertificateChain(), false, hc.getReporter());
        hc.addURLConnectionHandler(httpsVerification);
        URI uri = httpsServer.getBaseURI("get");
        URL go = httpServer.getBaseURI("xlocation").toURL();
        TaggedData tag = hc.build().maxRedirects(3).get(TaggedData.class).headers("XLocation", uri.toString()).go(go);
        assertNotNull(tag);
        assertEquals(200, tag.getResponseCode());
    }
}
Also used : HttpsVerification(aQute.bnd.url.HttpsVerification) HttpClient(aQute.bnd.http.HttpClient) TaggedData(aQute.bnd.service.url.TaggedData) URI(java.net.URI) URL(java.net.URL)

Example 7 with TaggedData

use of aQute.bnd.service.url.TaggedData in project bnd by bndtools.

the class HttpClientTest method testNotModifiedEtag.

public void testNotModifiedEtag() throws Exception {
    try (HttpClient hc = new HttpClient()) {
        TaggedData data = hc.build().get(TaggedData.class).ifNoneMatch("1234").go(httpServer.getBaseURI("etag/1234/0"));
        assertNotNull(data);
        assertEquals("1234", data.getTag());
        assertEquals(HttpURLConnection.HTTP_NOT_MODIFIED, data.getResponseCode());
    }
}
Also used : HttpClient(aQute.bnd.http.HttpClient) TaggedData(aQute.bnd.service.url.TaggedData)

Example 8 with TaggedData

use of aQute.bnd.service.url.TaggedData in project bnd by bndtools.

the class HttpClientTest method testCancel.

public void testCancel() throws Exception {
    final long deadline = System.currentTimeMillis() + 1000L;
    try (HttpClient hc = new HttpClient()) {
        Processor p = new Processor();
        p.addBasicPlugin(new ProgressPlugin() {

            @Override
            public Task startTask(String name, int size) {
                return new Task() {

                    @Override
                    public void worked(int units) {
                        System.out.println("Worked " + units);
                    }

                    @Override
                    public void done(String message, Throwable e) {
                        System.out.println("Done " + message + " " + e);
                    }

                    @Override
                    public boolean isCanceled() {
                        System.out.println("Cancel check ");
                        return System.currentTimeMillis() > deadline;
                    }
                };
            }
        });
        hc.setRegistry(p);
        TaggedData tag = hc.build().asTag().go(httpServer.getBaseURI("timeout/50"));
        assertNotNull(tag);
        assertEquals(200, tag.getResponseCode());
        try {
            String s = IO.collect(tag.getInputStream());
            fail();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
Also used : Processor(aQute.bnd.osgi.Processor) ProgressPlugin(aQute.bnd.service.progress.ProgressPlugin) HttpClient(aQute.bnd.http.HttpClient) TaggedData(aQute.bnd.service.url.TaggedData) URISyntaxException(java.net.URISyntaxException)

Example 9 with TaggedData

use of aQute.bnd.service.url.TaggedData in project bnd by bndtools.

the class HttpClientTest method testTimeout.

public void testTimeout() throws Exception {
    try (HttpClient hc = new HttpClient()) {
        try {
            TaggedData tag = hc.build().asTag().timeout(1000).go(httpServer.getBaseURI("timeout/10"));
            assertNotNull(tag);
            assertEquals(200, tag.getResponseCode());
            IO.collect(tag.getInputStream());
            fail();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
Also used : HttpClient(aQute.bnd.http.HttpClient) TaggedData(aQute.bnd.service.url.TaggedData) URISyntaxException(java.net.URISyntaxException)

Example 10 with TaggedData

use of aQute.bnd.service.url.TaggedData in project bnd by bndtools.

the class HttpClientTest method testRedirect.

public void testRedirect() throws Exception {
    try (HttpClient hc = new HttpClient()) {
        TaggedData tag = hc.build().get(TaggedData.class).go(httpServer.getBaseURI("redirect/3/200"));
        assertNotNull(tag);
        assertEquals(200, tag.getResponseCode());
    }
}
Also used : HttpClient(aQute.bnd.http.HttpClient) TaggedData(aQute.bnd.service.url.TaggedData)

Aggregations

TaggedData (aQute.bnd.service.url.TaggedData)35 HttpClient (aQute.bnd.http.HttpClient)18 URL (java.net.URL)15 File (java.io.File)7 IOException (java.io.IOException)6 Processor (aQute.bnd.osgi.Processor)5 URISyntaxException (java.net.URISyntaxException)4 ConnectionSettings (aQute.bnd.connection.settings.ConnectionSettings)3 ServerDTO (aQute.bnd.connection.settings.ServerDTO)3 ProgressPlugin (aQute.bnd.service.progress.ProgressPlugin)3 FileNotFoundException (java.io.FileNotFoundException)3 URI (java.net.URI)3 ProxyDTO (aQute.bnd.connection.settings.ProxyDTO)2 HttpRequestException (aQute.bnd.http.HttpRequestException)2 Info (aQute.bnd.http.URLCache.Info)2 InputStream (java.io.InputStream)2 HttpURLConnection (java.net.HttpURLConnection)2 SocketTimeoutException (java.net.SocketTimeoutException)2 URLConnection (java.net.URLConnection)2 HashMap (java.util.HashMap)2