PGIOChannel.ipdl (1409B)
1 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ 2 /* vim: set sw=2 ts=8 et tw=80 ft=cpp : */ 3 4 /* This Source Code Form is subject to the terms of the Mozilla Public 5 * License, v. 2.0. If a copy of the MPL was not distributed with this 6 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 7 8 include protocol PNecko; 9 include URIParams; 10 11 //FIXME: bug #792908 (NeckoChannelParams already included by PNecko) 12 include NeckoChannelParams; 13 14 using PRTime from "prtime.h"; 15 16 namespace mozilla { 17 namespace net { 18 19 [ManualDealloc, ChildImpl=virtual, ParentImpl=virtual] 20 async protocol PGIOChannel 21 { 22 manager PNecko; 23 24 parent: 25 // Note: channels are opened during construction, so no open method here: 26 // see PNecko.ipdl 27 28 async __delete__(); 29 30 async Cancel(nsresult status); 31 async Suspend(); 32 async Resume(); 33 34 child: 35 async OnStartRequest(nsresult aChannelStatus, 36 int64_t aContentLength, 37 nsCString aContentType, 38 nsCString aEntityID, 39 URIParams aURI); 40 async OnDataAvailable(nsresult channelStatus, 41 nsCString data, 42 uint64_t offset, 43 uint32_t count); 44 async OnStopRequest(nsresult channelStatus); 45 async FailedAsyncOpen(nsresult statusCode); 46 47 async DeleteSelf(); 48 }; 49 50 } // namespace net 51 } // namespace mozilla