view dstep/coreservices/cfnetwork/CFHTTPStream.d @ 11:07194b026fa4

Added bindings to a couple of frameworks, new license + some other things
author Jacob Carlborg <doob@me.com>
date Sat, 01 Aug 2009 15:03:28 +0200
parents
children
line wrap: on
line source

/**
 * Copyright: Copyright (c) 2009 Jacob Carlborg.
 * Authors: Jacob Carlborg
 * Version: Initial created: Jul 22, 2009 
 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0)
 */
module dstep.coreservices.cfnetwork.CFHTTPStream;

//import dstep.Availability;
import dstep.coreservices.cfnetwork.CFHTTPMessage;
import dstep.coreservices.cfnetwork.CFNetworkDefs;
import dstep.corefoundation.CFBase;
import dstep.corefoundation.CFStream;

alias int CFStreamErrorHTTP;

extern (C)
{
	extern
	{
		const int kCFStreamErrorDomainHTTP;
		const CFStringRef kCFStreamPropertyHTTPResponseHeader;
		const CFStringRef kCFStreamPropertyHTTPFinalURL;
		const CFStringRef kCFStreamPropertyHTTPFinalRequest;
		const CFStringRef kCFStreamPropertyHTTPProxy;
		const CFStringRef kCFStreamPropertyHTTPProxyHost;
		const CFStringRef kCFStreamPropertyHTTPProxyPort;
		const CFStringRef kCFStreamPropertyHTTPSProxyHost;
		const CFStringRef kCFStreamPropertyHTTPSProxyPort;
		const CFStringRef kCFStreamPropertyHTTPShouldAutoredirect;
		const CFStringRef kCFStreamPropertyHTTPAttemptPersistentConnection;
		const CFStringRef kCFStreamPropertyHTTPRequestBytesWrittenCount;
	}
}

enum /*CFStreamErrorHTTP*/ 
{
	kCFStreamErrorHTTPParseFailure = -1,
	kCFStreamErrorHTTPRedirectionLoop = -2,
	kCFStreamErrorHTTPBadURL = -3
}

extern (C)
{
	CFReadStreamRef CFReadStreamCreateForHTTPRequest (CFAllocatorRef alloc, CFHTTPMessageRef request);
	CFReadStreamRef CFReadStreamCreateForStreamedHTTPRequest (CFAllocatorRef alloc, CFHTTPMessageRef requestHeaders, CFReadStreamRef requestBody);
	void CFHTTPReadStreamSetRedirectsAutomatically (CFReadStreamRef httpStream, ubyte shouldAutoRedirect);
	void CFHTTPReadStreamSetProxy (CFReadStreamRef httpStream, CFStringRef proxyHost, int proxyPort);
}