LCOV - code coverage report
Current view: directory - objdir/ipc/ipdl - PBrowserStreamChild.cpp (source / functions) Found Hit Coverage
Test: app.info Lines: 221 0 0.0 %
Date: 2012-06-02 Functions: 39 0 0.0 %

       1                 : //
       2                 : // Automatically generated by ipdlc.
       3                 : // Edit at your own risk
       4                 : //
       5                 : 
       6                 : 
       7                 : #include "mozilla/plugins/PBrowserStreamChild.h"
       8                 : 
       9                 : #include "mozilla/plugins/PPluginInstanceChild.h"
      10                 : 
      11                 : typedef IPC::Message Message;
      12                 : typedef mozilla::ipc::RPCChannel Channel;
      13                 : typedef mozilla::ipc::RPCChannel::RPCListener ChannelListener;
      14                 : typedef base::ProcessHandle ProcessHandle;
      15                 : typedef mozilla::ipc::AsyncChannel AsyncChannel;
      16                 : typedef mozilla::ipc::SharedMemory SharedMemory;
      17                 : typedef mozilla::ipc::Trigger Trigger;
      18                 : typedef mozilla::ipc::ActorHandle ActorHandle;
      19                 : typedef mozilla::ipc::Shmem Shmem;
      20                 : typedef mozilla::plugins::Buffer Buffer;
      21                 : typedef mozilla::plugins::IPCByteRanges IPCByteRanges;
      22                 : using mozilla::plugins::PPluginInstanceChild;
      23                 : 
      24                 : namespace mozilla {
      25                 : namespace plugins {
      26                 : 
      27                 : 
      28                 : bool
      29               0 : PBrowserStreamChild::Recv__delete__()
      30                 : {
      31               0 :     return true;
      32                 : }
      33                 : 
      34                 : void
      35               0 : PBrowserStreamChild::ActorDestroy(ActorDestroyReason why)
      36                 : {
      37               0 : }
      38                 : 
      39               0 : PBrowserStreamChild::PBrowserStreamChild() :
      40                 :     mId(0),
      41               0 :     mState(PBrowserStream::__Dead)
      42                 : {
      43               0 :     MOZ_COUNT_CTOR(PBrowserStreamChild);
      44               0 : }
      45                 : 
      46               0 : PBrowserStreamChild::~PBrowserStreamChild()
      47                 : {
      48               0 :     MOZ_COUNT_DTOR(PBrowserStreamChild);
      49               0 : }
      50                 : 
      51                 : PPluginInstanceChild*
      52               0 : PBrowserStreamChild::Manager()
      53                 : {
      54               0 :     return static_cast<PPluginInstanceChild*>(mManager);
      55                 : }
      56                 : 
      57                 : PBrowserStream::State
      58               0 : PBrowserStreamChild::state()
      59                 : {
      60               0 :     return mState;
      61                 : }
      62                 : 
      63                 : bool
      64               0 : PBrowserStreamChild::CallNPN_RequestRead(
      65                 :         const IPCByteRanges& ranges,
      66                 :         NPError* result)
      67                 : {
      68               0 :     PBrowserStream::Msg_NPN_RequestRead* __msg = new PBrowserStream::Msg_NPN_RequestRead();
      69                 : 
      70               0 :     Write(ranges, __msg);
      71                 : 
      72               0 :     (__msg)->set_routing_id(mId);
      73               0 :     (__msg)->set_rpc();
      74                 : 
      75                 : 
      76               0 :     Message __reply;
      77                 : 
      78               0 :     if (mozilla::ipc::LoggingEnabled()) {
      79               0 :         (__msg)->Log("[PBrowserStreamChild] Sending ", stderr);
      80                 :     }
      81               0 :     if ((!(PBrowserStream::Transition(mState, Trigger(Trigger::Recv, PBrowserStream::Msg_NPN_RequestRead__ID), (&(mState)))))) {
      82               0 :         NS_WARNING("bad state transition!");
      83                 :     }
      84                 : 
      85               0 :     bool __sendok = (mChannel)->Call(__msg, (&(__reply)));
      86               0 :     if ((!(__sendok))) {
      87               0 :         return false;
      88                 :     }
      89                 : 
      90               0 :     if (mozilla::ipc::LoggingEnabled()) {
      91               0 :         (static_cast<const PBrowserStream::Reply_NPN_RequestRead*>((&(__reply))))->Log("[PBrowserStreamChild] Received reply ", stderr);
      92                 :     }
      93                 : 
      94               0 :     void* __iter = 0;
      95               0 :     if ((!(Read(result, (&(__reply)), (&(__iter)))))) {
      96               0 :         FatalError("error deserializing (better message TODO)");
      97               0 :         return false;
      98                 :     }
      99               0 :     (__reply).EndRead(__iter);
     100                 : 
     101               0 :     return true;
     102                 : }
     103                 : 
     104                 : bool
     105               0 : PBrowserStreamChild::SendNPN_DestroyStream(const NPReason& reason)
     106                 : {
     107               0 :     PBrowserStream::Msg_NPN_DestroyStream* __msg = new PBrowserStream::Msg_NPN_DestroyStream();
     108                 : 
     109               0 :     Write(reason, __msg);
     110                 : 
     111               0 :     (__msg)->set_routing_id(mId);
     112                 : 
     113                 : 
     114                 : 
     115               0 :     if (mozilla::ipc::LoggingEnabled()) {
     116               0 :         (__msg)->Log("[PBrowserStreamChild] Sending ", stderr);
     117                 :     }
     118               0 :     if ((!(PBrowserStream::Transition(mState, Trigger(Trigger::Recv, PBrowserStream::Msg_NPN_DestroyStream__ID), (&(mState)))))) {
     119               0 :         NS_WARNING("bad state transition!");
     120                 :     }
     121                 : 
     122               0 :     bool __sendok = (mChannel)->Send(__msg);
     123               0 :     return __sendok;
     124                 : }
     125                 : 
     126                 : bool
     127               0 : PBrowserStreamChild::SendStreamDestroyed()
     128                 : {
     129               0 :     PBrowserStream::Msg_StreamDestroyed* __msg = new PBrowserStream::Msg_StreamDestroyed();
     130                 : 
     131                 : 
     132               0 :     (__msg)->set_routing_id(mId);
     133                 : 
     134                 : 
     135                 : 
     136               0 :     if (mozilla::ipc::LoggingEnabled()) {
     137               0 :         (__msg)->Log("[PBrowserStreamChild] Sending ", stderr);
     138                 :     }
     139               0 :     if ((!(PBrowserStream::Transition(mState, Trigger(Trigger::Recv, PBrowserStream::Msg_StreamDestroyed__ID), (&(mState)))))) {
     140               0 :         NS_WARNING("bad state transition!");
     141                 :     }
     142                 : 
     143               0 :     bool __sendok = (mChannel)->Send(__msg);
     144               0 :     return __sendok;
     145                 : }
     146                 : 
     147                 : int32
     148               0 : PBrowserStreamChild::Register(ChannelListener* aRouted)
     149                 : {
     150               0 :     return (mManager)->Register(aRouted);
     151                 : }
     152                 : 
     153                 : int32
     154               0 : PBrowserStreamChild::RegisterID(
     155                 :         ChannelListener* aRouted,
     156                 :         int32 aId)
     157                 : {
     158               0 :     return (mManager)->RegisterID(aRouted, aId);
     159                 : }
     160                 : 
     161                 : ChannelListener*
     162               0 : PBrowserStreamChild::Lookup(int32 aId)
     163                 : {
     164               0 :     return (mManager)->Lookup(aId);
     165                 : }
     166                 : 
     167                 : void
     168               0 : PBrowserStreamChild::Unregister(int32 aId)
     169                 : {
     170               0 :     return (mManager)->Unregister(aId);
     171                 : }
     172                 : 
     173                 : void
     174               0 : PBrowserStreamChild::RemoveManagee(
     175                 :         int32 aProtocolId,
     176                 :         ChannelListener* aListener)
     177                 : {
     178               0 :     NS_RUNTIMEABORT("unreached");
     179                 :     return;
     180                 : }
     181                 : 
     182                 : Shmem::SharedMemory*
     183               0 : PBrowserStreamChild::CreateSharedMemory(
     184                 :         size_t aSize,
     185                 :         Shmem::SharedMemory::SharedMemoryType type,
     186                 :         bool unsafe,
     187                 :         Shmem::id_t* aId)
     188                 : {
     189               0 :     return (mManager)->CreateSharedMemory(aSize, type, unsafe, aId);
     190                 : }
     191                 : 
     192                 : bool
     193               0 : PBrowserStreamChild::AdoptSharedMemory(
     194                 :         Shmem::SharedMemory* segment,
     195                 :         Shmem::id_t* aId)
     196                 : {
     197               0 :     return (mManager)->AdoptSharedMemory(segment, aId);
     198                 : }
     199                 : 
     200                 : Shmem::SharedMemory*
     201               0 : PBrowserStreamChild::LookupSharedMemory(Shmem::id_t aId)
     202                 : {
     203               0 :     return (mManager)->LookupSharedMemory(aId);
     204                 : }
     205                 : 
     206                 : bool
     207               0 : PBrowserStreamChild::IsTrackingSharedMemory(Shmem::SharedMemory* segment)
     208                 : {
     209               0 :     return (mManager)->IsTrackingSharedMemory(segment);
     210                 : }
     211                 : 
     212                 : bool
     213               0 : PBrowserStreamChild::DestroySharedMemory(Shmem& aShmem)
     214                 : {
     215               0 :     return (mManager)->DestroySharedMemory(aShmem);
     216                 : }
     217                 : 
     218                 : ProcessHandle
     219               0 : PBrowserStreamChild::OtherProcess() const
     220                 : {
     221               0 :     return (mManager)->OtherProcess();
     222                 : }
     223                 : 
     224                 : AsyncChannel*
     225               0 : PBrowserStreamChild::GetIPCChannel()
     226                 : {
     227               0 :     return mChannel;
     228                 : }
     229                 : 
     230                 : PBrowserStreamChild::Result
     231               0 : PBrowserStreamChild::OnMessageReceived(const Message& __msg)
     232                 : {
     233               0 :     switch ((__msg).type()) {
     234                 :     case PBrowserStream::Msg_Write__ID:
     235                 :         {
     236               0 :             (const_cast<Message&>(__msg)).set_name("PBrowserStream::Msg_Write");
     237               0 :             if (mozilla::ipc::LoggingEnabled()) {
     238               0 :                 (static_cast<const PBrowserStream::Msg_Write*>((&(__msg))))->Log("[PBrowserStreamChild] Received ", stderr);
     239                 :             }
     240                 : 
     241               0 :             void* __iter = 0;
     242                 :             int32_t offset;
     243               0 :             Buffer data;
     244                 :             uint32_t newlength;
     245                 : 
     246               0 :             if ((!(Read((&(offset)), (&(__msg)), (&(__iter)))))) {
     247               0 :                 FatalError("error deserializing (better message TODO)");
     248               0 :                 return MsgValueError;
     249                 :             }
     250               0 :             if ((!(Read((&(data)), (&(__msg)), (&(__iter)))))) {
     251               0 :                 FatalError("error deserializing (better message TODO)");
     252               0 :                 return MsgValueError;
     253                 :             }
     254               0 :             if ((!(Read((&(newlength)), (&(__msg)), (&(__iter)))))) {
     255               0 :                 FatalError("error deserializing (better message TODO)");
     256               0 :                 return MsgValueError;
     257                 :             }
     258               0 :             (__msg).EndRead(__iter);
     259               0 :             if ((!(PBrowserStream::Transition(mState, Trigger(Trigger::Send, PBrowserStream::Msg_Write__ID), (&(mState)))))) {
     260               0 :                 NS_WARNING("bad state transition!");
     261                 :             }
     262               0 :             if ((!(RecvWrite(offset, data, newlength)))) {
     263               0 :                 return MsgProcessingError;
     264                 :             }
     265                 : 
     266               0 :             return MsgProcessed;
     267                 :         }
     268                 :     case PBrowserStream::Msg_NPP_StreamAsFile__ID:
     269                 :         {
     270               0 :             (const_cast<Message&>(__msg)).set_name("PBrowserStream::Msg_NPP_StreamAsFile");
     271               0 :             if (mozilla::ipc::LoggingEnabled()) {
     272               0 :                 (static_cast<const PBrowserStream::Msg_NPP_StreamAsFile*>((&(__msg))))->Log("[PBrowserStreamChild] Received ", stderr);
     273                 :             }
     274                 : 
     275               0 :             void* __iter = 0;
     276               0 :             nsCString fname;
     277                 : 
     278               0 :             if ((!(Read((&(fname)), (&(__msg)), (&(__iter)))))) {
     279               0 :                 FatalError("error deserializing (better message TODO)");
     280               0 :                 return MsgValueError;
     281                 :             }
     282               0 :             (__msg).EndRead(__iter);
     283               0 :             if ((!(PBrowserStream::Transition(mState, Trigger(Trigger::Send, PBrowserStream::Msg_NPP_StreamAsFile__ID), (&(mState)))))) {
     284               0 :                 NS_WARNING("bad state transition!");
     285                 :             }
     286               0 :             if ((!(RecvNPP_StreamAsFile(fname)))) {
     287               0 :                 return MsgProcessingError;
     288                 :             }
     289                 : 
     290               0 :             return MsgProcessed;
     291                 :         }
     292                 :     case PBrowserStream::Msg_NPP_DestroyStream__ID:
     293                 :         {
     294               0 :             (const_cast<Message&>(__msg)).set_name("PBrowserStream::Msg_NPP_DestroyStream");
     295               0 :             if (mozilla::ipc::LoggingEnabled()) {
     296               0 :                 (static_cast<const PBrowserStream::Msg_NPP_DestroyStream*>((&(__msg))))->Log("[PBrowserStreamChild] Received ", stderr);
     297                 :             }
     298                 : 
     299               0 :             void* __iter = 0;
     300                 :             NPReason reason;
     301                 : 
     302               0 :             if ((!(Read((&(reason)), (&(__msg)), (&(__iter)))))) {
     303               0 :                 FatalError("error deserializing (better message TODO)");
     304               0 :                 return MsgValueError;
     305                 :             }
     306               0 :             (__msg).EndRead(__iter);
     307               0 :             if ((!(PBrowserStream::Transition(mState, Trigger(Trigger::Send, PBrowserStream::Msg_NPP_DestroyStream__ID), (&(mState)))))) {
     308               0 :                 NS_WARNING("bad state transition!");
     309                 :             }
     310               0 :             if ((!(RecvNPP_DestroyStream(reason)))) {
     311               0 :                 return MsgProcessingError;
     312                 :             }
     313                 : 
     314               0 :             return MsgProcessed;
     315                 :         }
     316                 :     case PBrowserStream::Msg___delete____ID:
     317                 :         {
     318               0 :             (const_cast<Message&>(__msg)).set_name("PBrowserStream::Msg___delete__");
     319               0 :             if (mozilla::ipc::LoggingEnabled()) {
     320               0 :                 (static_cast<const PBrowserStream::Msg___delete__*>((&(__msg))))->Log("[PBrowserStreamChild] Received ", stderr);
     321                 :             }
     322                 : 
     323               0 :             void* __iter = 0;
     324                 :             PBrowserStreamChild* actor;
     325                 : 
     326               0 :             if ((!(Read((&(actor)), (&(__msg)), (&(__iter)), false)))) {
     327               0 :                 FatalError("error deserializing (better message TODO)");
     328               0 :                 return MsgValueError;
     329                 :             }
     330               0 :             (__msg).EndRead(__iter);
     331               0 :             if ((!(PBrowserStream::Transition(mState, Trigger(Trigger::Send, PBrowserStream::Msg___delete____ID), (&(mState)))))) {
     332               0 :                 NS_WARNING("bad state transition!");
     333                 :             }
     334               0 :             if ((!(Recv__delete__()))) {
     335               0 :                 return MsgProcessingError;
     336                 :             }
     337                 : 
     338               0 :             (actor)->DestroySubtree(Deletion);
     339               0 :             (actor)->DeallocSubtree();
     340               0 :             ((actor)->mManager)->RemoveManagee(PBrowserStreamMsgStart, actor);
     341                 : 
     342                 : 
     343               0 :             return MsgProcessed;
     344                 :         }
     345                 :     default:
     346                 :         {
     347               0 :             return MsgNotKnown;
     348                 :         }
     349                 :     }
     350                 : }
     351                 : 
     352                 : PBrowserStreamChild::Result
     353               0 : PBrowserStreamChild::OnMessageReceived(
     354                 :         const Message& __msg,
     355                 :         Message*& __reply)
     356                 : {
     357               0 :     return MsgNotKnown;
     358                 : }
     359                 : 
     360                 : PBrowserStreamChild::Result
     361               0 : PBrowserStreamChild::OnCallReceived(
     362                 :         const Message& __msg,
     363                 :         Message*& __reply)
     364                 : {
     365               0 :     return MsgNotKnown;
     366                 : }
     367                 : 
     368                 : void
     369               0 : PBrowserStreamChild::OnProcessingError(Result code)
     370                 : {
     371               0 :     NS_RUNTIMEABORT("`OnProcessingError' called on non-toplevel actor");
     372               0 : }
     373                 : 
     374                 : bool
     375               0 : PBrowserStreamChild::OnReplyTimeout()
     376                 : {
     377               0 :     NS_RUNTIMEABORT("`OnReplyTimeout' called on non-toplevel actor");
     378               0 :     return false;
     379                 : }
     380                 : 
     381                 : void
     382               0 : PBrowserStreamChild::OnChannelClose()
     383                 : {
     384               0 :     NS_RUNTIMEABORT("`OnClose' called on non-toplevel actor");
     385               0 : }
     386                 : 
     387                 : void
     388               0 : PBrowserStreamChild::OnChannelError()
     389                 : {
     390               0 :     NS_RUNTIMEABORT("`OnError' called on non-toplevel actor");
     391               0 : }
     392                 : 
     393                 : void
     394               0 : PBrowserStreamChild::OnChannelConnected(int32 pid)
     395                 : {
     396               0 :     NS_RUNTIMEABORT("'OnConnected' called on non-toplevel actor");
     397               0 : }
     398                 : 
     399                 : bool
     400               0 : PBrowserStreamChild::AllocShmem(
     401                 :         size_t aSize,
     402                 :         Shmem::SharedMemory::SharedMemoryType aType,
     403                 :         Shmem* aMem)
     404                 : {
     405                 :     Shmem::id_t aId;
     406               0 :     nsAutoPtr<Shmem::SharedMemory> rawmem(CreateSharedMemory(aSize, aType, false, (&(aId))));
     407               0 :     if ((!(rawmem))) {
     408               0 :         return false;
     409                 :     }
     410                 : 
     411               0 :     (*(aMem)) = Shmem(Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead(), (rawmem).forget(), aId);
     412               0 :     return true;
     413                 : }
     414                 : 
     415                 : bool
     416               0 : PBrowserStreamChild::AllocUnsafeShmem(
     417                 :         size_t aSize,
     418                 :         Shmem::SharedMemory::SharedMemoryType aType,
     419                 :         Shmem* aMem)
     420                 : {
     421                 :     Shmem::id_t aId;
     422               0 :     nsAutoPtr<Shmem::SharedMemory> rawmem(CreateSharedMemory(aSize, aType, true, (&(aId))));
     423               0 :     if ((!(rawmem))) {
     424               0 :         return false;
     425                 :     }
     426                 : 
     427               0 :     (*(aMem)) = Shmem(Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead(), (rawmem).forget(), aId);
     428               0 :     return true;
     429                 : }
     430                 : 
     431                 : bool
     432               0 : PBrowserStreamChild::AdoptShmem(
     433                 :         Shmem& aMem,
     434                 :         Shmem* aOutMem)
     435                 : {
     436               0 :     Shmem::SharedMemory* rawmem = (aMem).Segment(Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead());
     437               0 :     if (((!(rawmem))) || (IsTrackingSharedMemory(rawmem))) {
     438               0 :         NS_RUNTIMEABORT("bad Shmem");
     439                 :     }
     440                 : 
     441                 :     Shmem::id_t aId;
     442               0 :     if ((!(AdoptSharedMemory(rawmem, (&(aId)))))) {
     443               0 :         return false;
     444                 :     }
     445                 : 
     446               0 :     (*(aOutMem)) = Shmem(Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead(), rawmem, aId);
     447               0 :     return true;
     448                 : }
     449                 : 
     450                 : bool
     451               0 : PBrowserStreamChild::DeallocShmem(Shmem& aMem)
     452                 : {
     453               0 :     bool ok = DestroySharedMemory(aMem);
     454               0 :     (aMem).forget(Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead());
     455               0 :     return ok;
     456                 : }
     457                 : 
     458                 : void
     459               0 : PBrowserStreamChild::FatalError(const char* const msg) const
     460                 : {
     461                 :     // Virtual method to prevent inlining.
     462                 :     // This give us better error reporting.
     463                 :     // See bug 589371
     464                 : 
     465               0 :     NS_ERROR("IPDL error:");
     466               0 :     NS_ERROR(msg);
     467                 : 
     468               0 :     NS_RUNTIMEABORT("[PBrowserStreamChild] abort()ing as a result");
     469               0 : }
     470                 : 
     471                 : void
     472               0 : PBrowserStreamChild::DestroySubtree(ActorDestroyReason why)
     473                 : {
     474                 :     // Unregister from our manager.
     475               0 :     Unregister(mId);
     476               0 :     mId = 1;
     477                 : 
     478                 :     // Finally, destroy "us".
     479               0 :     ActorDestroy(why);
     480               0 : }
     481                 : 
     482                 : void
     483               0 : PBrowserStreamChild::DeallocSubtree()
     484                 : {
     485               0 : }
     486                 : 
     487                 : void
     488               0 : PBrowserStreamChild::Write(
     489                 :         PBrowserStreamChild* __v,
     490                 :         Message* __msg,
     491                 :         bool __nullable)
     492                 : {
     493                 :     int32 id;
     494               0 :     if ((!(__v))) {
     495               0 :         if ((!(__nullable))) {
     496               0 :             NS_RUNTIMEABORT("NULL actor value passed to non-nullable param");
     497                 :         }
     498               0 :         id = 0;
     499                 :     }
     500                 :     else {
     501               0 :         id = (__v)->mId;
     502               0 :         if ((1) == (id)) {
     503               0 :             NS_RUNTIMEABORT("actor has been |delete|d");
     504                 :         }
     505                 :     }
     506                 : 
     507               0 :     Write(id, __msg);
     508               0 : }
     509                 : 
     510                 : bool
     511               0 : PBrowserStreamChild::Read(
     512                 :         PBrowserStreamChild** __v,
     513                 :         const Message* __msg,
     514                 :         void** __iter,
     515                 :         bool __nullable)
     516                 : {
     517                 :     int32 id;
     518               0 :     if ((!(Read((&(id)), __msg, __iter)))) {
     519               0 :         return false;
     520                 :     }
     521               0 :     if (((1) == (id)) || (((0) == (id)) && ((!(__nullable))))) {
     522               0 :         return false;
     523                 :     }
     524                 : 
     525               0 :     if ((0) == (id)) {
     526               0 :         (*(__v)) = 0;
     527                 :     }
     528                 :     else {
     529               0 :         (*(__v)) = static_cast<PBrowserStreamChild*>(Lookup(id));
     530               0 :         if ((!((*(__v))))) {
     531               0 :             return false;
     532                 :         }
     533                 :     }
     534               0 :     return true;
     535                 : }
     536                 : 
     537                 : 
     538                 : 
     539                 : } // namespace plugins
     540                 : } // namespace mozilla

Generated by: LCOV version 1.7