netwerk/protocol/ftp/PFTPChannel.ipdl
author Ed Morley <emorley@mozilla.com>
Sun, 16 Dec 2012 18:09:39 +0000
changeset 116197 463b740c3e2f77925dc48a47979bcf9fa5d27bba
parent 116190 3e4e600adc3bd5d36e995881211e36552e13ab94
child 116713 6fe383b92b05fd5e6134f207c04ecf2045f301ee
permissions -rw-r--r--
Backout 3e4e600adc3b (bug 782542) for crashtest-ipc timeouts

/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* vim: set sw=2 ts=8 et tw=80 ft=cpp : */

/* 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 protocol PNecko;
include InputStreamParams;
include URIParams;

include protocol PBlob; //FIXME: bug #792908

include "SerializedLoadContext.h";

using IPC::SerializedLoadContext;
using PRTime;

namespace mozilla {
namespace net {

async protocol PFTPChannel
{
  manager PNecko;

parent:
  __delete__();

  AsyncOpen(URIParams uri,
            uint64_t startPos,
            nsCString entityID,
            OptionalInputStreamParams uploadStream,
            SerializedLoadContext loadContext);

  ConnectChannel(uint32_t channelId);
  Cancel(nsresult status);
  Suspend();
  Resume();

child:
  OnStartRequest(int64_t aContentLength, nsCString aContentType,
                 PRTime aLastModified, nsCString aEntityID, URIParams aURI);
  OnDataAvailable(nsCString data, uint64_t offset, uint32_t count);
  OnStopRequest(nsresult statusCode);
  FailedAsyncOpen(nsresult statusCode);
  DeleteSelf();
};

} // namespace net
} // namespace mozilla