|  | /* | 
|  | * Copyright (C) 2010 Alistair Leslie-Hughes | 
|  | * | 
|  | * This library is free software; you can redistribute it and/or | 
|  | * modify it under the terms of the GNU Lesser General Public | 
|  | * License as published by the Free Software Foundation; either | 
|  | * version 2.1 of the License, or (at your option) any later version. | 
|  | * | 
|  | * This library is distributed in the hope that it will be useful, | 
|  | * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
|  | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | 
|  | * Lesser General Public License for more details. | 
|  | * | 
|  | * You should have received a copy of the GNU Lesser General Public | 
|  | * License along with this library; if not, write to the Free Software | 
|  | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA | 
|  | */ | 
|  |  | 
|  | import "unknwn.idl"; | 
|  | import "objidl.idl"; | 
|  | import "oaidl.idl"; | 
|  |  | 
|  | [ | 
|  | object, | 
|  | dual, | 
|  | uuid(D97A6DA0-A864-11cf-83BE-00A0C90C2BD8) | 
|  | ] | 
|  | interface IRequestDictionary : IDispatch | 
|  | { | 
|  | [propget] | 
|  | HRESULT Item(IRequestDictionary *iface, [in, optional] VARIANT Var, | 
|  | [retval, out] VARIANT *pVariantReturn); | 
|  |  | 
|  | [restricted, propget] | 
|  | HRESULT _NewEnum(IRequestDictionary *iface, [retval, out] IUnknown **ppEnumReturn); | 
|  |  | 
|  | [propget] | 
|  | HRESULT Count(IRequestDictionary *iface, [retval, out] int *cStrRet); | 
|  |  | 
|  | [propget] | 
|  | HRESULT Key(IRequestDictionary *iface, [in] VARIANT VarKey, [retval, out]VARIANT *pvar); | 
|  | }; | 
|  |  | 
|  | [ | 
|  | object, | 
|  | dual, | 
|  | uuid(D97A6DA0-A864-11cf-83BE-00A0C90C2BD8) | 
|  | ] | 
|  | interface IResponse : IDispatch | 
|  | { | 
|  | [propget] | 
|  | HRESULT Buffer(IResponse *iface, [retval, out] VARIANT_BOOL *fIsBuffering); | 
|  |  | 
|  | [propput] | 
|  | HRESULT Buffer(IResponse *iface, [in] VARIANT_BOOL fIsBuffering); | 
|  |  | 
|  | [propget] | 
|  | HRESULT ContentType(IResponse *iface, [retval, out] BSTR *pbstrContentTypeRet); | 
|  |  | 
|  | [propput] | 
|  | HRESULT ContentType(IResponse *iface, [in] BSTR bstrContentType); | 
|  |  | 
|  | [propget] | 
|  | HRESULT Expires(IResponse *iface, [retval, out] VARIANT *pvarExpiresMinutesRet); | 
|  |  | 
|  | [propput] | 
|  | HRESULT Expires(IResponse *iface, [in] long lExpiresMinutes); | 
|  |  | 
|  | [propget] | 
|  | HRESULT ExpiresAbsolute(IResponse *iface, [retval, out] VARIANT *pvarExpiresRet); | 
|  |  | 
|  | [propput] | 
|  | HRESULT ExpiresAbsolute(IResponse *iface, [in] DATE dtExpires); | 
|  |  | 
|  | [propget] | 
|  | HRESULT Cookies(IResponse *iface, [retval, out] IRequestDictionary **ppCookies); | 
|  |  | 
|  | [propget] | 
|  | HRESULT Status(IResponse *iface, [retval][out] BSTR *pbstrStatusRet); | 
|  |  | 
|  | [propput] | 
|  | HRESULT Status(IResponse *iface, [in] BSTR bstrStatus); | 
|  |  | 
|  | [hidden] | 
|  | HRESULT Add(IResponse *iface, [in] BSTR bstrHeaderValue, [in] BSTR bstrHeaderName); | 
|  |  | 
|  | HRESULT AddHeader(IResponse *iface, [in] BSTR bstrHeaderName, [in] BSTR bstrHeaderValue); | 
|  |  | 
|  | HRESULT AppendToLog(IResponse *iface, [in] BSTR bstrLogEntry); | 
|  |  | 
|  | HRESULT BinaryWrite(IResponse *iface, [in] VARIANT varInput); | 
|  |  | 
|  | HRESULT Clear(IResponse *iface); | 
|  |  | 
|  | HRESULT End(IResponse *iface); | 
|  |  | 
|  | HRESULT Flush(IResponse *iface); | 
|  |  | 
|  | HRESULT Redirect(IResponse *iface, [in] BSTR bstrURL); | 
|  |  | 
|  | HRESULT Write(IResponse *iface, [in] VARIANT varText); | 
|  |  | 
|  | [hidden] | 
|  | HRESULT WriteBlock(IResponse *iface, [in] short iBlockNumber); | 
|  |  | 
|  | HRESULT IsClientConnected(IResponse *iface, [retval, out] VARIANT_BOOL *pfIsClientConnected); | 
|  |  | 
|  | [propget] | 
|  | HRESULT get_CharSet( IResponse *iface, [retval, out] BSTR *pbstrCharSetRet); | 
|  |  | 
|  | [propput] | 
|  | HRESULT put_CharSet(IResponse *iface, [in] BSTR bstrCharSet); | 
|  |  | 
|  | HRESULT Pics(IResponse *iface, [in] BSTR bstrHeaderValue); | 
|  |  | 
|  | [propget] | 
|  | HRESULT get_CacheControl(IResponse *iface, [retval, out] BSTR *pbstrCacheControl); | 
|  |  | 
|  | [propput] | 
|  | HRESULT put_CacheControl(IResponse *iface, [in] BSTR bstrCacheControl); | 
|  |  | 
|  | [propget] | 
|  | HRESULT get_CodePage(IResponse *iface, [retval, out] long *plvar); | 
|  |  | 
|  | [propput] | 
|  | HRESULT put_CodePage(IResponse *iface, [in] long lvar); | 
|  |  | 
|  | [propget] | 
|  | HRESULT get_LCID(IResponse *iface, [retval, out] long *plvar); | 
|  |  | 
|  | [propput] | 
|  | HRESULT put_LCID(IResponse *iface, [in] long lvar); | 
|  | }; |