IWebResource.idl revision 9364f22aed35e1a1e9d07c121510f80be3ab0502
1/* 2 * Copyright (C) 2006, 2007 Apple Inc. All rights reserved. 3 * 4 * Redistribution and use in source and binary forms, with or without 5 * modification, are permitted provided that the following conditions 6 * are met: 7 * 1. Redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer. 9 * 2. Redistributions in binary form must reproduce the above copyright 10 * notice, this list of conditions and the following disclaimer in the 11 * documentation and/or other materials provided with the distribution. 12 * 13 * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY 14 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 16 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR 17 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 18 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 19 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 20 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 21 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 22 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 23 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 24 */ 25 26cpp_quote("/*") 27cpp_quote(" * Copyright (C) 2006, 2007 Apple Inc. All rights reserved.") 28cpp_quote(" *") 29cpp_quote(" * Redistribution and use in source and binary forms, with or without") 30cpp_quote(" * modification, are permitted provided that the following conditions") 31cpp_quote(" * are met:") 32cpp_quote(" * 1. Redistributions of source code must retain the above copyright") 33cpp_quote(" * notice, this list of conditions and the following disclaimer.") 34cpp_quote(" * 2. Redistributions in binary form must reproduce the above copyright") 35cpp_quote(" * notice, this list of conditions and the following disclaimer in the") 36cpp_quote(" * documentation and/or other materials provided with the distribution.") 37cpp_quote(" *") 38cpp_quote(" * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY") 39cpp_quote(" * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE") 40cpp_quote(" * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR") 41cpp_quote(" * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR") 42cpp_quote(" * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,") 43cpp_quote(" * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,") 44cpp_quote(" * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR") 45cpp_quote(" * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY") 46cpp_quote(" * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT") 47cpp_quote(" * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE") 48cpp_quote(" * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ") 49cpp_quote(" */") 50 51import "oaidl.idl"; 52import "ocidl.idl"; 53 54/*! 55 @class WebResource 56 @discussion A WebResource represents a fully downloaded URL. 57 It includes the data of the resource as well as the metadata associated with the resource. 58 59 @interface WebResource : NSObject <NSCoding, NSCopying> 60*/ 61[ 62 object, 63 oleautomation, 64 uuid(09567E0E-7859-494a-B0E4-92C13CFE5574), 65 pointer_default(unique) 66] 67interface IWebResource : IUnknown 68{ 69 /*! 70 @method initWithData:URL:MIMEType:textEncodingName:frameName 71 @abstract The initializer for WebResource. 72 @param data The data of the resource. 73 @param URL The URL of the resource. 74 @param MIMEType The MIME type of the resource. 75 @param textEncodingName The text encoding name of the resource (can be nil). 76 @param frameName The frame name of the resource if the resource represents the contents of an entire HTML frame (can be nil). 77 @result An initialized WebResource. 78 - (id)initWithData:(NSData *)data URL:(NSURL *)URL MIMEType:(NSString *)MIMEType textEncodingName:(NSString *)textEncodingName frameName:(NSString *)frameName; 79 */ 80 HRESULT initWithData([in] IStream* data, [in] BSTR url, [in] BSTR mimeType, [in] BSTR textEncodingName, [in] BSTR frameName); 81 82 /*! 83 @method data 84 @result The data of the resource. 85 - (NSData *)data; 86 */ 87 HRESULT data([out, retval] IStream** data); 88 89 /*! 90 @method URL 91 @result The URL of the resource. 92 - (NSURL *)URL; 93 */ 94 HRESULT URL([out, retval] BSTR* url); 95 96 /*! 97 @method MIMEType 98 @result The MIME type of the resource. 99 - (NSString *)MIMEType; 100 */ 101 HRESULT MIMEType([out, retval] BSTR* mime); 102 103 /*! 104 @method textEncodingName 105 @result The text encoding name of the resource (can be nil). 106 - (NSString *)textEncodingName; 107 */ 108 HRESULT textEncodingName([out, retval] BSTR* encodingName); 109 110 /*! 111 @method frameName 112 @result The frame name of the resource if the resource represents the contents of an entire HTML frame (can be nil). 113 - (NSString *)frameName; 114 */ 115 HRESULT frameName([out, retval] BSTR* name); 116} 117