forked from mirrors/gecko-dev
		
	 9ab81a1042
			
		
	
	
		9ab81a1042
		
	
	
	
	
		
			
			MozReview-Commit-ID: 9b45aozatin --HG-- extra : rebase_source : 636da171929fe6ecd69de5c68d9ed4064a3a7b09
		
			
				
	
	
		
			48 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			48 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
 | |
| /* This Source Code Form is subject to the terms of the Mozilla Public
 | |
|  * License, v. 2.0. If a copy of the MPL was not distributed with this
 | |
|  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 | |
| 
 | |
| #include "nsIHttpHeaderVisitor.idl"
 | |
| #include "nsIInputStream.idl"
 | |
| 
 | |
| /**
 | |
|  * The MIME stream separates headers and a datastream. It also allows
 | |
|  * automatic creation of the content-length header.
 | |
|  */
 | |
| 
 | |
| [scriptable, uuid(dcbce63c-1dd1-11b2-b94d-91f6d49a3161)]
 | |
| interface nsIMIMEInputStream : nsIInputStream
 | |
| {
 | |
|     /**
 | |
|      * Adds an additional header to the stream on the form "name: value". May
 | |
|      * not be called once the stream has been started to be read.
 | |
|      * @param name   name of the header
 | |
|      * @param value  value of the header
 | |
|      */
 | |
|     void addHeader(in string name, in string value);
 | |
| 
 | |
|     /**
 | |
|      * Visits all headers which have been added via addHeader.  Calling
 | |
|      * addHeader while visiting request headers has undefined behavior.
 | |
|      *
 | |
|      * @param aVisitor
 | |
|      *        The header visitor instance.
 | |
|      */
 | |
|     void visitHeaders(in nsIHttpHeaderVisitor visitor);
 | |
| 
 | |
|     /**
 | |
|      * Sets data-stream. May not be called once the stream has been started
 | |
|      * to be read.
 | |
|      * The cursor of the new stream should be located at the beginning of the
 | |
|      * stream if the implementation of the nsIMIMEInputStream also is used as
 | |
|      * an nsISeekableStream.
 | |
|      * @param stream  stream containing the data for the stream
 | |
|      */
 | |
|     void setData(in nsIInputStream stream);
 | |
| 
 | |
|     /**
 | |
|      * Get the wrapped data stream
 | |
|      */
 | |
|     readonly attribute nsIInputStream data;
 | |
| };
 |