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

       1                 : //
       2                 : // Automatically generated by ipdlc.
       3                 : // Edit at your own risk
       4                 : //
       5                 : 
       6                 : 
       7                 : #include "mozilla/dom/PMemoryReportRequestParent.h"
       8                 : 
       9                 : #include "mozilla/dom/PContentParent.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::dom::MemoryReport MemoryReport;
      20                 : typedef mozilla::ipc::Shmem Shmem;
      21                 : using mozilla::dom::PContentParent;
      22                 : 
      23                 : namespace mozilla {
      24                 : namespace dom {
      25                 : 
      26                 : 
      27                 : bool
      28               0 : PMemoryReportRequestParent::Recv__delete__(const InfallibleTArray<MemoryReport>& report)
      29                 : {
      30               0 :     return true;
      31                 : }
      32                 : 
      33                 : void
      34               0 : PMemoryReportRequestParent::ActorDestroy(ActorDestroyReason why)
      35                 : {
      36               0 : }
      37                 : 
      38               0 : PMemoryReportRequestParent::PMemoryReportRequestParent() :
      39                 :     mId(0),
      40               0 :     mState(PMemoryReportRequest::__Dead)
      41                 : {
      42               0 :     MOZ_COUNT_CTOR(PMemoryReportRequestParent);
      43               0 : }
      44                 : 
      45               0 : PMemoryReportRequestParent::~PMemoryReportRequestParent()
      46                 : {
      47               0 :     MOZ_COUNT_DTOR(PMemoryReportRequestParent);
      48               0 : }
      49                 : 
      50                 : PContentParent*
      51               0 : PMemoryReportRequestParent::Manager()
      52                 : {
      53               0 :     return static_cast<PContentParent*>(mManager);
      54                 : }
      55                 : 
      56                 : PMemoryReportRequest::State
      57               0 : PMemoryReportRequestParent::state()
      58                 : {
      59               0 :     return mState;
      60                 : }
      61                 : 
      62                 : int32
      63               0 : PMemoryReportRequestParent::Register(ChannelListener* aRouted)
      64                 : {
      65               0 :     return (mManager)->Register(aRouted);
      66                 : }
      67                 : 
      68                 : int32
      69               0 : PMemoryReportRequestParent::RegisterID(
      70                 :         ChannelListener* aRouted,
      71                 :         int32 aId)
      72                 : {
      73               0 :     return (mManager)->RegisterID(aRouted, aId);
      74                 : }
      75                 : 
      76                 : ChannelListener*
      77               0 : PMemoryReportRequestParent::Lookup(int32 aId)
      78                 : {
      79               0 :     return (mManager)->Lookup(aId);
      80                 : }
      81                 : 
      82                 : void
      83               0 : PMemoryReportRequestParent::Unregister(int32 aId)
      84                 : {
      85               0 :     return (mManager)->Unregister(aId);
      86                 : }
      87                 : 
      88                 : void
      89               0 : PMemoryReportRequestParent::RemoveManagee(
      90                 :         int32 aProtocolId,
      91                 :         ChannelListener* aListener)
      92                 : {
      93               0 :     NS_RUNTIMEABORT("unreached");
      94                 :     return;
      95                 : }
      96                 : 
      97                 : Shmem::SharedMemory*
      98               0 : PMemoryReportRequestParent::CreateSharedMemory(
      99                 :         size_t aSize,
     100                 :         Shmem::SharedMemory::SharedMemoryType type,
     101                 :         bool unsafe,
     102                 :         Shmem::id_t* aId)
     103                 : {
     104               0 :     return (mManager)->CreateSharedMemory(aSize, type, unsafe, aId);
     105                 : }
     106                 : 
     107                 : bool
     108               0 : PMemoryReportRequestParent::AdoptSharedMemory(
     109                 :         Shmem::SharedMemory* segment,
     110                 :         Shmem::id_t* aId)
     111                 : {
     112               0 :     return (mManager)->AdoptSharedMemory(segment, aId);
     113                 : }
     114                 : 
     115                 : Shmem::SharedMemory*
     116               0 : PMemoryReportRequestParent::LookupSharedMemory(Shmem::id_t aId)
     117                 : {
     118               0 :     return (mManager)->LookupSharedMemory(aId);
     119                 : }
     120                 : 
     121                 : bool
     122               0 : PMemoryReportRequestParent::IsTrackingSharedMemory(Shmem::SharedMemory* segment)
     123                 : {
     124               0 :     return (mManager)->IsTrackingSharedMemory(segment);
     125                 : }
     126                 : 
     127                 : bool
     128               0 : PMemoryReportRequestParent::DestroySharedMemory(Shmem& aShmem)
     129                 : {
     130               0 :     return (mManager)->DestroySharedMemory(aShmem);
     131                 : }
     132                 : 
     133                 : ProcessHandle
     134               0 : PMemoryReportRequestParent::OtherProcess() const
     135                 : {
     136               0 :     return (mManager)->OtherProcess();
     137                 : }
     138                 : 
     139                 : AsyncChannel*
     140               0 : PMemoryReportRequestParent::GetIPCChannel()
     141                 : {
     142               0 :     return mChannel;
     143                 : }
     144                 : 
     145                 : PMemoryReportRequestParent::Result
     146               0 : PMemoryReportRequestParent::OnMessageReceived(const Message& __msg)
     147                 : {
     148               0 :     switch ((__msg).type()) {
     149                 :     case PMemoryReportRequest::Msg___delete____ID:
     150                 :         {
     151               0 :             (const_cast<Message&>(__msg)).set_name("PMemoryReportRequest::Msg___delete__");
     152               0 :             if (mozilla::ipc::LoggingEnabled()) {
     153               0 :                 (static_cast<const PMemoryReportRequest::Msg___delete__*>((&(__msg))))->Log("[PMemoryReportRequestParent] Received ", stderr);
     154                 :             }
     155                 : 
     156               0 :             void* __iter = 0;
     157                 :             PMemoryReportRequestParent* actor;
     158               0 :             InfallibleTArray<MemoryReport> report;
     159                 : 
     160               0 :             if ((!(Read((&(actor)), (&(__msg)), (&(__iter)), false)))) {
     161               0 :                 FatalError("error deserializing (better message TODO)");
     162               0 :                 return MsgValueError;
     163                 :             }
     164               0 :             if ((!(Read((&(report)), (&(__msg)), (&(__iter)))))) {
     165               0 :                 FatalError("error deserializing (better message TODO)");
     166               0 :                 return MsgValueError;
     167                 :             }
     168               0 :             (__msg).EndRead(__iter);
     169               0 :             if ((!(PMemoryReportRequest::Transition(mState, Trigger(Trigger::Recv, PMemoryReportRequest::Msg___delete____ID), (&(mState)))))) {
     170               0 :                 NS_WARNING("bad state transition!");
     171                 :             }
     172               0 :             if ((!(Recv__delete__(report)))) {
     173               0 :                 return MsgProcessingError;
     174                 :             }
     175                 : 
     176               0 :             (actor)->DestroySubtree(Deletion);
     177               0 :             (actor)->DeallocSubtree();
     178               0 :             ((actor)->mManager)->RemoveManagee(PMemoryReportRequestMsgStart, actor);
     179                 : 
     180                 : 
     181               0 :             return MsgProcessed;
     182                 :         }
     183                 :     default:
     184                 :         {
     185               0 :             return MsgNotKnown;
     186                 :         }
     187                 :     }
     188                 : }
     189                 : 
     190                 : PMemoryReportRequestParent::Result
     191               0 : PMemoryReportRequestParent::OnMessageReceived(
     192                 :         const Message& __msg,
     193                 :         Message*& __reply)
     194                 : {
     195               0 :     return MsgNotKnown;
     196                 : }
     197                 : 
     198                 : PMemoryReportRequestParent::Result
     199               0 : PMemoryReportRequestParent::OnCallReceived(
     200                 :         const Message& __msg,
     201                 :         Message*& __reply)
     202                 : {
     203               0 :     return MsgNotKnown;
     204                 : }
     205                 : 
     206                 : void
     207               0 : PMemoryReportRequestParent::OnProcessingError(Result code)
     208                 : {
     209               0 :     NS_RUNTIMEABORT("`OnProcessingError' called on non-toplevel actor");
     210               0 : }
     211                 : 
     212                 : bool
     213               0 : PMemoryReportRequestParent::OnReplyTimeout()
     214                 : {
     215               0 :     NS_RUNTIMEABORT("`OnReplyTimeout' called on non-toplevel actor");
     216               0 :     return false;
     217                 : }
     218                 : 
     219                 : void
     220               0 : PMemoryReportRequestParent::OnChannelClose()
     221                 : {
     222               0 :     NS_RUNTIMEABORT("`OnClose' called on non-toplevel actor");
     223               0 : }
     224                 : 
     225                 : void
     226               0 : PMemoryReportRequestParent::OnChannelError()
     227                 : {
     228               0 :     NS_RUNTIMEABORT("`OnError' called on non-toplevel actor");
     229               0 : }
     230                 : 
     231                 : void
     232               0 : PMemoryReportRequestParent::OnChannelConnected(int32 pid)
     233                 : {
     234               0 :     NS_RUNTIMEABORT("'OnConnected' called on non-toplevel actor");
     235               0 : }
     236                 : 
     237                 : bool
     238               0 : PMemoryReportRequestParent::AllocShmem(
     239                 :         size_t aSize,
     240                 :         Shmem::SharedMemory::SharedMemoryType aType,
     241                 :         Shmem* aMem)
     242                 : {
     243                 :     Shmem::id_t aId;
     244               0 :     nsAutoPtr<Shmem::SharedMemory> rawmem(CreateSharedMemory(aSize, aType, false, (&(aId))));
     245               0 :     if ((!(rawmem))) {
     246               0 :         return false;
     247                 :     }
     248                 : 
     249               0 :     (*(aMem)) = Shmem(Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead(), (rawmem).forget(), aId);
     250               0 :     return true;
     251                 : }
     252                 : 
     253                 : bool
     254               0 : PMemoryReportRequestParent::AllocUnsafeShmem(
     255                 :         size_t aSize,
     256                 :         Shmem::SharedMemory::SharedMemoryType aType,
     257                 :         Shmem* aMem)
     258                 : {
     259                 :     Shmem::id_t aId;
     260               0 :     nsAutoPtr<Shmem::SharedMemory> rawmem(CreateSharedMemory(aSize, aType, true, (&(aId))));
     261               0 :     if ((!(rawmem))) {
     262               0 :         return false;
     263                 :     }
     264                 : 
     265               0 :     (*(aMem)) = Shmem(Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead(), (rawmem).forget(), aId);
     266               0 :     return true;
     267                 : }
     268                 : 
     269                 : bool
     270               0 : PMemoryReportRequestParent::AdoptShmem(
     271                 :         Shmem& aMem,
     272                 :         Shmem* aOutMem)
     273                 : {
     274               0 :     Shmem::SharedMemory* rawmem = (aMem).Segment(Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead());
     275               0 :     if (((!(rawmem))) || (IsTrackingSharedMemory(rawmem))) {
     276               0 :         NS_RUNTIMEABORT("bad Shmem");
     277                 :     }
     278                 : 
     279                 :     Shmem::id_t aId;
     280               0 :     if ((!(AdoptSharedMemory(rawmem, (&(aId)))))) {
     281               0 :         return false;
     282                 :     }
     283                 : 
     284               0 :     (*(aOutMem)) = Shmem(Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead(), rawmem, aId);
     285               0 :     return true;
     286                 : }
     287                 : 
     288                 : bool
     289               0 : PMemoryReportRequestParent::DeallocShmem(Shmem& aMem)
     290                 : {
     291               0 :     bool ok = DestroySharedMemory(aMem);
     292               0 :     (aMem).forget(Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead());
     293               0 :     return ok;
     294                 : }
     295                 : 
     296                 : void
     297               0 : PMemoryReportRequestParent::FatalError(const char* const msg) const
     298                 : {
     299                 :     // Virtual method to prevent inlining.
     300                 :     // This give us better error reporting.
     301                 :     // See bug 589371
     302                 : 
     303               0 :     NS_ERROR("IPDL error:");
     304               0 :     NS_ERROR(msg);
     305                 : 
     306               0 :     NS_ERROR("[PMemoryReportRequestParent] killing child side as a result");
     307                 : 
     308               0 :     if ((!(base::KillProcess(OtherProcess(), base::PROCESS_END_KILLED_BY_USER, false)))) {
     309               0 :         NS_ERROR("  may have failed to kill child!");
     310                 :     }
     311               0 : }
     312                 : 
     313                 : void
     314               0 : PMemoryReportRequestParent::DestroySubtree(ActorDestroyReason why)
     315                 : {
     316                 :     // Unregister from our manager.
     317               0 :     Unregister(mId);
     318               0 :     mId = 1;
     319                 : 
     320                 :     // Finally, destroy "us".
     321               0 :     ActorDestroy(why);
     322               0 : }
     323                 : 
     324                 : void
     325               0 : PMemoryReportRequestParent::DeallocSubtree()
     326                 : {
     327               0 : }
     328                 : 
     329                 : void
     330               0 : PMemoryReportRequestParent::Write(
     331                 :         const InfallibleTArray<MemoryReport>& __v,
     332                 :         Message* __msg)
     333                 : {
     334               0 :     uint32 length = (__v).Length();
     335               0 :     Write(length, __msg);
     336                 : 
     337               0 :     for (uint32 i = 0; (i) < (length); (++(i))) {
     338               0 :         Write(__v[i], __msg);
     339                 :     }
     340               0 : }
     341                 : 
     342                 : bool
     343               0 : PMemoryReportRequestParent::Read(
     344                 :         InfallibleTArray<MemoryReport>* __v,
     345                 :         const Message* __msg,
     346                 :         void** __iter)
     347                 : {
     348               0 :     InfallibleTArray<MemoryReport>& a = (*(__v));
     349                 :     uint32 length;
     350               0 :     if ((!(Read((&(length)), __msg, __iter)))) {
     351               0 :         return false;
     352                 :     }
     353                 : 
     354               0 :     (__v)->SetLength(length);
     355               0 :     for (uint32 i = 0; (i) < (length); (++(i))) {
     356               0 :         if ((!(Read((&(a[i])), __msg, __iter)))) {
     357               0 :             return false;
     358                 :         }
     359                 :     }
     360               0 :     return true;
     361                 : }
     362                 : 
     363                 : void
     364               0 : PMemoryReportRequestParent::Write(
     365                 :         PMemoryReportRequestParent* __v,
     366                 :         Message* __msg,
     367                 :         bool __nullable)
     368                 : {
     369                 :     int32 id;
     370               0 :     if ((!(__v))) {
     371               0 :         if ((!(__nullable))) {
     372               0 :             NS_RUNTIMEABORT("NULL actor value passed to non-nullable param");
     373                 :         }
     374               0 :         id = 0;
     375                 :     }
     376                 :     else {
     377               0 :         id = (__v)->mId;
     378               0 :         if ((1) == (id)) {
     379               0 :             NS_RUNTIMEABORT("actor has been |delete|d");
     380                 :         }
     381                 :     }
     382                 : 
     383               0 :     Write(id, __msg);
     384               0 : }
     385                 : 
     386                 : bool
     387               0 : PMemoryReportRequestParent::Read(
     388                 :         PMemoryReportRequestParent** __v,
     389                 :         const Message* __msg,
     390                 :         void** __iter,
     391                 :         bool __nullable)
     392                 : {
     393                 :     int32 id;
     394               0 :     if ((!(Read((&(id)), __msg, __iter)))) {
     395               0 :         return false;
     396                 :     }
     397               0 :     if (((1) == (id)) || (((0) == (id)) && ((!(__nullable))))) {
     398               0 :         return false;
     399                 :     }
     400                 : 
     401               0 :     if ((0) == (id)) {
     402               0 :         (*(__v)) = 0;
     403                 :     }
     404                 :     else {
     405               0 :         (*(__v)) = static_cast<PMemoryReportRequestParent*>(Lookup(id));
     406               0 :         if ((!((*(__v))))) {
     407               0 :             return false;
     408                 :         }
     409                 :     }
     410               0 :     return true;
     411                 : }
     412                 : 
     413                 : void
     414               0 : PMemoryReportRequestParent::Write(
     415                 :         const MemoryReport& __v,
     416                 :         Message* __msg)
     417                 : {
     418               0 :     Write((__v).process(), __msg);
     419               0 :     Write((__v).path(), __msg);
     420               0 :     Write((__v).kind(), __msg);
     421               0 :     Write((__v).units(), __msg);
     422               0 :     Write((__v).amount(), __msg);
     423               0 :     Write((__v).desc(), __msg);
     424               0 : }
     425                 : 
     426                 : bool
     427               0 : PMemoryReportRequestParent::Read(
     428                 :         MemoryReport* __v,
     429                 :         const Message* __msg,
     430                 :         void** __iter)
     431                 : {
     432               0 :     if ((!(Read((&((__v)->process())), __msg, __iter)))) {
     433               0 :         return false;
     434                 :     }
     435               0 :     if ((!(Read((&((__v)->path())), __msg, __iter)))) {
     436               0 :         return false;
     437                 :     }
     438               0 :     if ((!(Read((&((__v)->kind())), __msg, __iter)))) {
     439               0 :         return false;
     440                 :     }
     441               0 :     if ((!(Read((&((__v)->units())), __msg, __iter)))) {
     442               0 :         return false;
     443                 :     }
     444               0 :     if ((!(Read((&((__v)->amount())), __msg, __iter)))) {
     445               0 :         return false;
     446                 :     }
     447               0 :     if ((!(Read((&((__v)->desc())), __msg, __iter)))) {
     448               0 :         return false;
     449                 :     }
     450               0 :     return true;
     451                 : }
     452                 : 
     453                 : 
     454                 : 
     455                 : } // namespace dom
     456                 : } // namespace mozilla

Generated by: LCOV version 1.7