Mercurial > dive4elements > http-client
view src/main/java/de/intevation/artifacts/httpclient/http/HttpClient.java @ 21:79a5a2455d6d
Use Apache HTTP Client as the underlaying transport agent. Use thread local instances to re-use agents.
http-client/trunk@2042 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Wed, 01 Jun 2011 14:32:24 +0000 |
parents | 5b62267a1c3c |
children | c4431f39926a |
line wrap: on
line source
/* * Copyright (c) 2010 by Intevation GmbH * * This program is free software under the LGPL (>=v2.1) * Read the file LGPL.txt coming with the software for details * or visit http://www.gnu.org/licenses/ if it does not exist. */ package de.intevation.artifacts.httpclient.http; import java.io.InputStream; import java.io.OutputStream; import org.w3c.dom.Document; import de.intevation.artifacts.httpclient.exceptions.ConnectionException; import de.intevation.artifacts.httpclient.http.response.ResponseHandler; import de.intevation.artifacts.httpclient.objects.Artifact; import de.intevation.artifacts.httpclient.objects.ArtifactFactory; import de.intevation.artifacts.httpclient.utils.ArtifactCreator; /** * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a> */ public interface HttpClient { ArtifactFactory[] getArtifactFactories() throws ConnectionException; Object create(Document createDocument, ArtifactCreator creator) throws ConnectionException; Object describe( Artifact artifact, Document describeDocument, ResponseHandler handler) throws ConnectionException; Object feed(Artifact artifact, Document feedDocument, ResponseHandler handler) throws ConnectionException; Object advance( Artifact artifact, Document advanceDocument, ResponseHandler handler) throws ConnectionException; void out( Artifact artifact, Document outDocument, String target, OutputStream out) throws ConnectionException; /******************************* * Service API *******************************/ Document callService(String url, String service, Document input) throws ConnectionException; /******************************* * Collections API *******************************/ Object createCollection( Document createDocument, String ownerId, ResponseHandler handler) throws ConnectionException; Object doCollectionAction( Document actionDocument, String uuid, ResponseHandler handler) throws ConnectionException; void collectionOut( Document outDocument, String uuid, String type, OutputStream out) throws ConnectionException; InputStream collectionOut( Document doc, String uuid, String type) throws ConnectionException; /******************************* * Users API *******************************/ Document listUsers() throws ConnectionException; Document listUserCollections(String userid) throws ConnectionException; } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8: