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

       1                 : //
       2                 : // Automatically generated by ipdlc.
       3                 : // Edit at your own risk
       4                 : //
       5                 : 
       6                 : 
       7                 : #include "mozilla/jsipc/PObjectWrapperChild.h"
       8                 : 
       9                 : #include "mozilla/jsipc/PContextWrapperChild.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::jsipc::JSVariant JSVariant;
      20                 : typedef mozilla::jsipc::OperationStatus OperationStatus;
      21                 : typedef mozilla::ipc::Shmem Shmem;
      22                 : typedef mozilla::void_t void_t;
      23                 : using mozilla::jsipc::PContextWrapperChild;
      24                 : 
      25                 : namespace mozilla {
      26                 : namespace jsipc {
      27                 : 
      28                 : 
      29                 : bool
      30               0 : PObjectWrapperChild::Recv__delete__()
      31                 : {
      32               0 :     return true;
      33                 : }
      34                 : 
      35                 : void
      36               0 : PObjectWrapperChild::ActorDestroy(ActorDestroyReason why)
      37                 : {
      38               0 : }
      39                 : 
      40               0 : PObjectWrapperChild::PObjectWrapperChild() :
      41                 :     mId(0),
      42               0 :     mState(PObjectWrapper::__Dead)
      43                 : {
      44               0 :     MOZ_COUNT_CTOR(PObjectWrapperChild);
      45               0 : }
      46                 : 
      47               0 : PObjectWrapperChild::~PObjectWrapperChild()
      48                 : {
      49               0 :     MOZ_COUNT_DTOR(PObjectWrapperChild);
      50               0 : }
      51                 : 
      52                 : PContextWrapperChild*
      53               0 : PObjectWrapperChild::Manager()
      54                 : {
      55               0 :     return static_cast<PContextWrapperChild*>(mManager);
      56                 : }
      57                 : 
      58                 : PObjectWrapper::State
      59               0 : PObjectWrapperChild::state()
      60                 : {
      61               0 :     return mState;
      62                 : }
      63                 : 
      64                 : int32
      65               0 : PObjectWrapperChild::Register(ChannelListener* aRouted)
      66                 : {
      67               0 :     return (mManager)->Register(aRouted);
      68                 : }
      69                 : 
      70                 : int32
      71               0 : PObjectWrapperChild::RegisterID(
      72                 :         ChannelListener* aRouted,
      73                 :         int32 aId)
      74                 : {
      75               0 :     return (mManager)->RegisterID(aRouted, aId);
      76                 : }
      77                 : 
      78                 : ChannelListener*
      79               0 : PObjectWrapperChild::Lookup(int32 aId)
      80                 : {
      81               0 :     return (mManager)->Lookup(aId);
      82                 : }
      83                 : 
      84                 : void
      85               0 : PObjectWrapperChild::Unregister(int32 aId)
      86                 : {
      87               0 :     return (mManager)->Unregister(aId);
      88                 : }
      89                 : 
      90                 : void
      91               0 : PObjectWrapperChild::RemoveManagee(
      92                 :         int32 aProtocolId,
      93                 :         ChannelListener* aListener)
      94                 : {
      95               0 :     NS_RUNTIMEABORT("unreached");
      96                 :     return;
      97                 : }
      98                 : 
      99                 : Shmem::SharedMemory*
     100               0 : PObjectWrapperChild::CreateSharedMemory(
     101                 :         size_t aSize,
     102                 :         Shmem::SharedMemory::SharedMemoryType type,
     103                 :         bool unsafe,
     104                 :         Shmem::id_t* aId)
     105                 : {
     106               0 :     return (mManager)->CreateSharedMemory(aSize, type, unsafe, aId);
     107                 : }
     108                 : 
     109                 : bool
     110               0 : PObjectWrapperChild::AdoptSharedMemory(
     111                 :         Shmem::SharedMemory* segment,
     112                 :         Shmem::id_t* aId)
     113                 : {
     114               0 :     return (mManager)->AdoptSharedMemory(segment, aId);
     115                 : }
     116                 : 
     117                 : Shmem::SharedMemory*
     118               0 : PObjectWrapperChild::LookupSharedMemory(Shmem::id_t aId)
     119                 : {
     120               0 :     return (mManager)->LookupSharedMemory(aId);
     121                 : }
     122                 : 
     123                 : bool
     124               0 : PObjectWrapperChild::IsTrackingSharedMemory(Shmem::SharedMemory* segment)
     125                 : {
     126               0 :     return (mManager)->IsTrackingSharedMemory(segment);
     127                 : }
     128                 : 
     129                 : bool
     130               0 : PObjectWrapperChild::DestroySharedMemory(Shmem& aShmem)
     131                 : {
     132               0 :     return (mManager)->DestroySharedMemory(aShmem);
     133                 : }
     134                 : 
     135                 : ProcessHandle
     136               0 : PObjectWrapperChild::OtherProcess() const
     137                 : {
     138               0 :     return (mManager)->OtherProcess();
     139                 : }
     140                 : 
     141                 : AsyncChannel*
     142               0 : PObjectWrapperChild::GetIPCChannel()
     143                 : {
     144               0 :     return mChannel;
     145                 : }
     146                 : 
     147                 : PObjectWrapperChild::Result
     148               0 : PObjectWrapperChild::OnMessageReceived(const Message& __msg)
     149                 : {
     150               0 :     switch ((__msg).type()) {
     151                 :     case PObjectWrapper::Msg___delete____ID:
     152                 :         {
     153               0 :             (const_cast<Message&>(__msg)).set_name("PObjectWrapper::Msg___delete__");
     154               0 :             if (mozilla::ipc::LoggingEnabled()) {
     155               0 :                 (static_cast<const PObjectWrapper::Msg___delete__*>((&(__msg))))->Log("[PObjectWrapperChild] Received ", stderr);
     156                 :             }
     157                 : 
     158               0 :             void* __iter = 0;
     159                 :             PObjectWrapperChild* actor;
     160                 : 
     161               0 :             if ((!(Read((&(actor)), (&(__msg)), (&(__iter)), false)))) {
     162               0 :                 FatalError("error deserializing (better message TODO)");
     163               0 :                 return MsgValueError;
     164                 :             }
     165               0 :             (__msg).EndRead(__iter);
     166               0 :             if ((!(PObjectWrapper::Transition(mState, Trigger(Trigger::Send, PObjectWrapper::Msg___delete____ID), (&(mState)))))) {
     167               0 :                 NS_WARNING("bad state transition!");
     168                 :             }
     169               0 :             if ((!(Recv__delete__()))) {
     170               0 :                 return MsgProcessingError;
     171                 :             }
     172                 : 
     173               0 :             (actor)->DestroySubtree(Deletion);
     174               0 :             (actor)->DeallocSubtree();
     175               0 :             ((actor)->mManager)->RemoveManagee(PObjectWrapperMsgStart, actor);
     176                 : 
     177                 : 
     178               0 :             return MsgProcessed;
     179                 :         }
     180                 :     case PObjectWrapper::Msg_NewEnumerateDestroy__ID:
     181                 :         {
     182               0 :             (const_cast<Message&>(__msg)).set_name("PObjectWrapper::Msg_NewEnumerateDestroy");
     183               0 :             if (mozilla::ipc::LoggingEnabled()) {
     184               0 :                 (static_cast<const PObjectWrapper::Msg_NewEnumerateDestroy*>((&(__msg))))->Log("[PObjectWrapperChild] Received ", stderr);
     185                 :             }
     186                 : 
     187               0 :             void* __iter = 0;
     188               0 :             JSVariant in_state;
     189                 : 
     190               0 :             if ((!(Read((&(in_state)), (&(__msg)), (&(__iter)))))) {
     191               0 :                 FatalError("error deserializing (better message TODO)");
     192               0 :                 return MsgValueError;
     193                 :             }
     194               0 :             (__msg).EndRead(__iter);
     195               0 :             if ((!(PObjectWrapper::Transition(mState, Trigger(Trigger::Send, PObjectWrapper::Msg_NewEnumerateDestroy__ID), (&(mState)))))) {
     196               0 :                 NS_WARNING("bad state transition!");
     197                 :             }
     198               0 :             if ((!(RecvNewEnumerateDestroy(in_state)))) {
     199               0 :                 return MsgProcessingError;
     200                 :             }
     201                 : 
     202               0 :             return MsgProcessed;
     203                 :         }
     204                 :     default:
     205                 :         {
     206               0 :             return MsgNotKnown;
     207                 :         }
     208                 :     }
     209                 : }
     210                 : 
     211                 : PObjectWrapperChild::Result
     212               0 : PObjectWrapperChild::OnMessageReceived(
     213                 :         const Message& __msg,
     214                 :         Message*& __reply)
     215                 : {
     216               0 :     return MsgNotKnown;
     217                 : }
     218                 : 
     219                 : PObjectWrapperChild::Result
     220               0 : PObjectWrapperChild::OnCallReceived(
     221                 :         const Message& __msg,
     222                 :         Message*& __reply)
     223                 : {
     224               0 :     switch ((__msg).type()) {
     225                 :     case PObjectWrapper::Msg_AddProperty__ID:
     226                 :         {
     227               0 :             (const_cast<Message&>(__msg)).set_name("PObjectWrapper::Msg_AddProperty");
     228               0 :             if (mozilla::ipc::LoggingEnabled()) {
     229               0 :                 (static_cast<const PObjectWrapper::Msg_AddProperty*>((&(__msg))))->Log("[PObjectWrapperChild] Received ", stderr);
     230                 :             }
     231                 : 
     232               0 :             void* __iter = 0;
     233               0 :             nsString id;
     234                 : 
     235               0 :             if ((!(Read((&(id)), (&(__msg)), (&(__iter)))))) {
     236               0 :                 FatalError("error deserializing (better message TODO)");
     237               0 :                 return MsgValueError;
     238                 :             }
     239               0 :             (__msg).EndRead(__iter);
     240               0 :             if ((!(PObjectWrapper::Transition(mState, Trigger(Trigger::Send, PObjectWrapper::Msg_AddProperty__ID), (&(mState)))))) {
     241               0 :                 NS_WARNING("bad state transition!");
     242                 :             }
     243               0 :             OperationStatus status;
     244               0 :             int32 __id = mId;
     245               0 :             if ((!(AnswerAddProperty(id, (&(status)))))) {
     246               0 :                 return MsgProcessingError;
     247                 :             }
     248                 : 
     249               0 :             __reply = new PObjectWrapper::Reply_AddProperty();
     250                 : 
     251               0 :             Write(status, __reply);
     252               0 :             (__reply)->set_routing_id(__id);
     253               0 :             (__reply)->set_rpc();
     254               0 :             (__reply)->set_reply();
     255                 : 
     256               0 :             if (mozilla::ipc::LoggingEnabled()) {
     257               0 :                 (static_cast<const PObjectWrapper::Reply_AddProperty*>(__reply))->Log("[PObjectWrapperChild] Sending reply ", stderr);
     258                 :             }
     259               0 :             return MsgProcessed;
     260                 :         }
     261                 :     case PObjectWrapper::Msg_GetProperty__ID:
     262                 :         {
     263               0 :             (const_cast<Message&>(__msg)).set_name("PObjectWrapper::Msg_GetProperty");
     264               0 :             if (mozilla::ipc::LoggingEnabled()) {
     265               0 :                 (static_cast<const PObjectWrapper::Msg_GetProperty*>((&(__msg))))->Log("[PObjectWrapperChild] Received ", stderr);
     266                 :             }
     267                 : 
     268               0 :             void* __iter = 0;
     269               0 :             nsString id;
     270                 : 
     271               0 :             if ((!(Read((&(id)), (&(__msg)), (&(__iter)))))) {
     272               0 :                 FatalError("error deserializing (better message TODO)");
     273               0 :                 return MsgValueError;
     274                 :             }
     275               0 :             (__msg).EndRead(__iter);
     276               0 :             if ((!(PObjectWrapper::Transition(mState, Trigger(Trigger::Send, PObjectWrapper::Msg_GetProperty__ID), (&(mState)))))) {
     277               0 :                 NS_WARNING("bad state transition!");
     278                 :             }
     279               0 :             OperationStatus status;
     280               0 :             JSVariant vp;
     281               0 :             int32 __id = mId;
     282               0 :             if ((!(AnswerGetProperty(id, (&(status)), (&(vp)))))) {
     283               0 :                 return MsgProcessingError;
     284                 :             }
     285                 : 
     286               0 :             __reply = new PObjectWrapper::Reply_GetProperty();
     287                 : 
     288               0 :             Write(status, __reply);
     289               0 :             Write(vp, __reply);
     290               0 :             (__reply)->set_routing_id(__id);
     291               0 :             (__reply)->set_rpc();
     292               0 :             (__reply)->set_reply();
     293                 : 
     294               0 :             if (mozilla::ipc::LoggingEnabled()) {
     295               0 :                 (static_cast<const PObjectWrapper::Reply_GetProperty*>(__reply))->Log("[PObjectWrapperChild] Sending reply ", stderr);
     296                 :             }
     297               0 :             return MsgProcessed;
     298                 :         }
     299                 :     case PObjectWrapper::Msg_SetProperty__ID:
     300                 :         {
     301               0 :             (const_cast<Message&>(__msg)).set_name("PObjectWrapper::Msg_SetProperty");
     302               0 :             if (mozilla::ipc::LoggingEnabled()) {
     303               0 :                 (static_cast<const PObjectWrapper::Msg_SetProperty*>((&(__msg))))->Log("[PObjectWrapperChild] Received ", stderr);
     304                 :             }
     305                 : 
     306               0 :             void* __iter = 0;
     307               0 :             nsString id;
     308               0 :             JSVariant v;
     309                 : 
     310               0 :             if ((!(Read((&(id)), (&(__msg)), (&(__iter)))))) {
     311               0 :                 FatalError("error deserializing (better message TODO)");
     312               0 :                 return MsgValueError;
     313                 :             }
     314               0 :             if ((!(Read((&(v)), (&(__msg)), (&(__iter)))))) {
     315               0 :                 FatalError("error deserializing (better message TODO)");
     316               0 :                 return MsgValueError;
     317                 :             }
     318               0 :             (__msg).EndRead(__iter);
     319               0 :             if ((!(PObjectWrapper::Transition(mState, Trigger(Trigger::Send, PObjectWrapper::Msg_SetProperty__ID), (&(mState)))))) {
     320               0 :                 NS_WARNING("bad state transition!");
     321                 :             }
     322               0 :             OperationStatus status;
     323               0 :             JSVariant vp;
     324               0 :             int32 __id = mId;
     325               0 :             if ((!(AnswerSetProperty(id, v, (&(status)), (&(vp)))))) {
     326               0 :                 return MsgProcessingError;
     327                 :             }
     328                 : 
     329               0 :             __reply = new PObjectWrapper::Reply_SetProperty();
     330                 : 
     331               0 :             Write(status, __reply);
     332               0 :             Write(vp, __reply);
     333               0 :             (__reply)->set_routing_id(__id);
     334               0 :             (__reply)->set_rpc();
     335               0 :             (__reply)->set_reply();
     336                 : 
     337               0 :             if (mozilla::ipc::LoggingEnabled()) {
     338               0 :                 (static_cast<const PObjectWrapper::Reply_SetProperty*>(__reply))->Log("[PObjectWrapperChild] Sending reply ", stderr);
     339                 :             }
     340               0 :             return MsgProcessed;
     341                 :         }
     342                 :     case PObjectWrapper::Msg_DelProperty__ID:
     343                 :         {
     344               0 :             (const_cast<Message&>(__msg)).set_name("PObjectWrapper::Msg_DelProperty");
     345               0 :             if (mozilla::ipc::LoggingEnabled()) {
     346               0 :                 (static_cast<const PObjectWrapper::Msg_DelProperty*>((&(__msg))))->Log("[PObjectWrapperChild] Received ", stderr);
     347                 :             }
     348                 : 
     349               0 :             void* __iter = 0;
     350               0 :             nsString id;
     351                 : 
     352               0 :             if ((!(Read((&(id)), (&(__msg)), (&(__iter)))))) {
     353               0 :                 FatalError("error deserializing (better message TODO)");
     354               0 :                 return MsgValueError;
     355                 :             }
     356               0 :             (__msg).EndRead(__iter);
     357               0 :             if ((!(PObjectWrapper::Transition(mState, Trigger(Trigger::Send, PObjectWrapper::Msg_DelProperty__ID), (&(mState)))))) {
     358               0 :                 NS_WARNING("bad state transition!");
     359                 :             }
     360               0 :             OperationStatus status;
     361               0 :             JSVariant vp;
     362               0 :             int32 __id = mId;
     363               0 :             if ((!(AnswerDelProperty(id, (&(status)), (&(vp)))))) {
     364               0 :                 return MsgProcessingError;
     365                 :             }
     366                 : 
     367               0 :             __reply = new PObjectWrapper::Reply_DelProperty();
     368                 : 
     369               0 :             Write(status, __reply);
     370               0 :             Write(vp, __reply);
     371               0 :             (__reply)->set_routing_id(__id);
     372               0 :             (__reply)->set_rpc();
     373               0 :             (__reply)->set_reply();
     374                 : 
     375               0 :             if (mozilla::ipc::LoggingEnabled()) {
     376               0 :                 (static_cast<const PObjectWrapper::Reply_DelProperty*>(__reply))->Log("[PObjectWrapperChild] Sending reply ", stderr);
     377                 :             }
     378               0 :             return MsgProcessed;
     379                 :         }
     380                 :     case PObjectWrapper::Msg_NewEnumerateInit__ID:
     381                 :         {
     382               0 :             (const_cast<Message&>(__msg)).set_name("PObjectWrapper::Msg_NewEnumerateInit");
     383               0 :             if (mozilla::ipc::LoggingEnabled()) {
     384               0 :                 (static_cast<const PObjectWrapper::Msg_NewEnumerateInit*>((&(__msg))))->Log("[PObjectWrapperChild] Received ", stderr);
     385                 :             }
     386                 : 
     387               0 :             if ((!(PObjectWrapper::Transition(mState, Trigger(Trigger::Send, PObjectWrapper::Msg_NewEnumerateInit__ID), (&(mState)))))) {
     388               0 :                 NS_WARNING("bad state transition!");
     389                 :             }
     390               0 :             OperationStatus status;
     391               0 :             JSVariant statep;
     392                 :             int idp;
     393               0 :             int32 __id = mId;
     394               0 :             if ((!(AnswerNewEnumerateInit((&(status)), (&(statep)), (&(idp)))))) {
     395               0 :                 return MsgProcessingError;
     396                 :             }
     397                 : 
     398               0 :             __reply = new PObjectWrapper::Reply_NewEnumerateInit();
     399                 : 
     400               0 :             Write(status, __reply);
     401               0 :             Write(statep, __reply);
     402               0 :             Write(idp, __reply);
     403               0 :             (__reply)->set_routing_id(__id);
     404               0 :             (__reply)->set_rpc();
     405               0 :             (__reply)->set_reply();
     406                 : 
     407               0 :             if (mozilla::ipc::LoggingEnabled()) {
     408               0 :                 (static_cast<const PObjectWrapper::Reply_NewEnumerateInit*>(__reply))->Log("[PObjectWrapperChild] Sending reply ", stderr);
     409                 :             }
     410               0 :             return MsgProcessed;
     411                 :         }
     412                 :     case PObjectWrapper::Msg_NewEnumerateNext__ID:
     413                 :         {
     414               0 :             (const_cast<Message&>(__msg)).set_name("PObjectWrapper::Msg_NewEnumerateNext");
     415               0 :             if (mozilla::ipc::LoggingEnabled()) {
     416               0 :                 (static_cast<const PObjectWrapper::Msg_NewEnumerateNext*>((&(__msg))))->Log("[PObjectWrapperChild] Received ", stderr);
     417                 :             }
     418                 : 
     419               0 :             void* __iter = 0;
     420               0 :             JSVariant in_state;
     421                 : 
     422               0 :             if ((!(Read((&(in_state)), (&(__msg)), (&(__iter)))))) {
     423               0 :                 FatalError("error deserializing (better message TODO)");
     424               0 :                 return MsgValueError;
     425                 :             }
     426               0 :             (__msg).EndRead(__iter);
     427               0 :             if ((!(PObjectWrapper::Transition(mState, Trigger(Trigger::Send, PObjectWrapper::Msg_NewEnumerateNext__ID), (&(mState)))))) {
     428               0 :                 NS_WARNING("bad state transition!");
     429                 :             }
     430               0 :             OperationStatus status;
     431               0 :             JSVariant statep;
     432               0 :             nsString idp;
     433               0 :             int32 __id = mId;
     434               0 :             if ((!(AnswerNewEnumerateNext(in_state, (&(status)), (&(statep)), (&(idp)))))) {
     435               0 :                 return MsgProcessingError;
     436                 :             }
     437                 : 
     438               0 :             __reply = new PObjectWrapper::Reply_NewEnumerateNext();
     439                 : 
     440               0 :             Write(status, __reply);
     441               0 :             Write(statep, __reply);
     442               0 :             Write(idp, __reply);
     443               0 :             (__reply)->set_routing_id(__id);
     444               0 :             (__reply)->set_rpc();
     445               0 :             (__reply)->set_reply();
     446                 : 
     447               0 :             if (mozilla::ipc::LoggingEnabled()) {
     448               0 :                 (static_cast<const PObjectWrapper::Reply_NewEnumerateNext*>(__reply))->Log("[PObjectWrapperChild] Sending reply ", stderr);
     449                 :             }
     450               0 :             return MsgProcessed;
     451                 :         }
     452                 :     case PObjectWrapper::Msg_NewResolve__ID:
     453                 :         {
     454               0 :             (const_cast<Message&>(__msg)).set_name("PObjectWrapper::Msg_NewResolve");
     455               0 :             if (mozilla::ipc::LoggingEnabled()) {
     456               0 :                 (static_cast<const PObjectWrapper::Msg_NewResolve*>((&(__msg))))->Log("[PObjectWrapperChild] Received ", stderr);
     457                 :             }
     458                 : 
     459               0 :             void* __iter = 0;
     460               0 :             nsString id;
     461                 :             int flags;
     462                 : 
     463               0 :             if ((!(Read((&(id)), (&(__msg)), (&(__iter)))))) {
     464               0 :                 FatalError("error deserializing (better message TODO)");
     465               0 :                 return MsgValueError;
     466                 :             }
     467               0 :             if ((!(Read((&(flags)), (&(__msg)), (&(__iter)))))) {
     468               0 :                 FatalError("error deserializing (better message TODO)");
     469               0 :                 return MsgValueError;
     470                 :             }
     471               0 :             (__msg).EndRead(__iter);
     472               0 :             if ((!(PObjectWrapper::Transition(mState, Trigger(Trigger::Send, PObjectWrapper::Msg_NewResolve__ID), (&(mState)))))) {
     473               0 :                 NS_WARNING("bad state transition!");
     474                 :             }
     475               0 :             OperationStatus status;
     476                 :             PObjectWrapperChild* obj2;
     477               0 :             int32 __id = mId;
     478               0 :             if ((!(AnswerNewResolve(id, flags, (&(status)), (&(obj2)))))) {
     479               0 :                 return MsgProcessingError;
     480                 :             }
     481                 : 
     482               0 :             __reply = new PObjectWrapper::Reply_NewResolve();
     483                 : 
     484               0 :             Write(status, __reply);
     485               0 :             Write(obj2, __reply, true);
     486               0 :             (__reply)->set_routing_id(__id);
     487               0 :             (__reply)->set_rpc();
     488               0 :             (__reply)->set_reply();
     489                 : 
     490               0 :             if (mozilla::ipc::LoggingEnabled()) {
     491               0 :                 (static_cast<const PObjectWrapper::Reply_NewResolve*>(__reply))->Log("[PObjectWrapperChild] Sending reply ", stderr);
     492                 :             }
     493               0 :             return MsgProcessed;
     494                 :         }
     495                 :     case PObjectWrapper::Msg_Convert__ID:
     496                 :         {
     497               0 :             (const_cast<Message&>(__msg)).set_name("PObjectWrapper::Msg_Convert");
     498               0 :             if (mozilla::ipc::LoggingEnabled()) {
     499               0 :                 (static_cast<const PObjectWrapper::Msg_Convert*>((&(__msg))))->Log("[PObjectWrapperChild] Received ", stderr);
     500                 :             }
     501                 : 
     502               0 :             void* __iter = 0;
     503                 :             JSType type;
     504                 : 
     505               0 :             if ((!(Read((&(type)), (&(__msg)), (&(__iter)))))) {
     506               0 :                 FatalError("error deserializing (better message TODO)");
     507               0 :                 return MsgValueError;
     508                 :             }
     509               0 :             (__msg).EndRead(__iter);
     510               0 :             if ((!(PObjectWrapper::Transition(mState, Trigger(Trigger::Send, PObjectWrapper::Msg_Convert__ID), (&(mState)))))) {
     511               0 :                 NS_WARNING("bad state transition!");
     512                 :             }
     513               0 :             OperationStatus status;
     514               0 :             JSVariant vp;
     515               0 :             int32 __id = mId;
     516               0 :             if ((!(AnswerConvert(type, (&(status)), (&(vp)))))) {
     517               0 :                 return MsgProcessingError;
     518                 :             }
     519                 : 
     520               0 :             __reply = new PObjectWrapper::Reply_Convert();
     521                 : 
     522               0 :             Write(status, __reply);
     523               0 :             Write(vp, __reply);
     524               0 :             (__reply)->set_routing_id(__id);
     525               0 :             (__reply)->set_rpc();
     526               0 :             (__reply)->set_reply();
     527                 : 
     528               0 :             if (mozilla::ipc::LoggingEnabled()) {
     529               0 :                 (static_cast<const PObjectWrapper::Reply_Convert*>(__reply))->Log("[PObjectWrapperChild] Sending reply ", stderr);
     530                 :             }
     531               0 :             return MsgProcessed;
     532                 :         }
     533                 :     case PObjectWrapper::Msg_Call__ID:
     534                 :         {
     535               0 :             (const_cast<Message&>(__msg)).set_name("PObjectWrapper::Msg_Call");
     536               0 :             if (mozilla::ipc::LoggingEnabled()) {
     537               0 :                 (static_cast<const PObjectWrapper::Msg_Call*>((&(__msg))))->Log("[PObjectWrapperChild] Received ", stderr);
     538                 :             }
     539                 : 
     540               0 :             void* __iter = 0;
     541                 :             PObjectWrapperChild* receiver;
     542               0 :             InfallibleTArray<JSVariant> argv;
     543                 : 
     544               0 :             if ((!(Read((&(receiver)), (&(__msg)), (&(__iter)), false)))) {
     545               0 :                 FatalError("error deserializing (better message TODO)");
     546               0 :                 return MsgValueError;
     547                 :             }
     548               0 :             if ((!(Read((&(argv)), (&(__msg)), (&(__iter)))))) {
     549               0 :                 FatalError("error deserializing (better message TODO)");
     550               0 :                 return MsgValueError;
     551                 :             }
     552               0 :             (__msg).EndRead(__iter);
     553               0 :             if ((!(PObjectWrapper::Transition(mState, Trigger(Trigger::Send, PObjectWrapper::Msg_Call__ID), (&(mState)))))) {
     554               0 :                 NS_WARNING("bad state transition!");
     555                 :             }
     556               0 :             OperationStatus status;
     557               0 :             JSVariant rval;
     558               0 :             int32 __id = mId;
     559               0 :             if ((!(AnswerCall(receiver, argv, (&(status)), (&(rval)))))) {
     560               0 :                 return MsgProcessingError;
     561                 :             }
     562                 : 
     563               0 :             __reply = new PObjectWrapper::Reply_Call();
     564                 : 
     565               0 :             Write(status, __reply);
     566               0 :             Write(rval, __reply);
     567               0 :             (__reply)->set_routing_id(__id);
     568               0 :             (__reply)->set_rpc();
     569               0 :             (__reply)->set_reply();
     570                 : 
     571               0 :             if (mozilla::ipc::LoggingEnabled()) {
     572               0 :                 (static_cast<const PObjectWrapper::Reply_Call*>(__reply))->Log("[PObjectWrapperChild] Sending reply ", stderr);
     573                 :             }
     574               0 :             return MsgProcessed;
     575                 :         }
     576                 :     case PObjectWrapper::Msg_Construct__ID:
     577                 :         {
     578               0 :             (const_cast<Message&>(__msg)).set_name("PObjectWrapper::Msg_Construct");
     579               0 :             if (mozilla::ipc::LoggingEnabled()) {
     580               0 :                 (static_cast<const PObjectWrapper::Msg_Construct*>((&(__msg))))->Log("[PObjectWrapperChild] Received ", stderr);
     581                 :             }
     582                 : 
     583               0 :             void* __iter = 0;
     584               0 :             InfallibleTArray<JSVariant> argv;
     585                 : 
     586               0 :             if ((!(Read((&(argv)), (&(__msg)), (&(__iter)))))) {
     587               0 :                 FatalError("error deserializing (better message TODO)");
     588               0 :                 return MsgValueError;
     589                 :             }
     590               0 :             (__msg).EndRead(__iter);
     591               0 :             if ((!(PObjectWrapper::Transition(mState, Trigger(Trigger::Send, PObjectWrapper::Msg_Construct__ID), (&(mState)))))) {
     592               0 :                 NS_WARNING("bad state transition!");
     593                 :             }
     594               0 :             OperationStatus status;
     595                 :             PObjectWrapperChild* rval;
     596               0 :             int32 __id = mId;
     597               0 :             if ((!(AnswerConstruct(argv, (&(status)), (&(rval)))))) {
     598               0 :                 return MsgProcessingError;
     599                 :             }
     600                 : 
     601               0 :             __reply = new PObjectWrapper::Reply_Construct();
     602                 : 
     603               0 :             Write(status, __reply);
     604               0 :             Write(rval, __reply, true);
     605               0 :             (__reply)->set_routing_id(__id);
     606               0 :             (__reply)->set_rpc();
     607               0 :             (__reply)->set_reply();
     608                 : 
     609               0 :             if (mozilla::ipc::LoggingEnabled()) {
     610               0 :                 (static_cast<const PObjectWrapper::Reply_Construct*>(__reply))->Log("[PObjectWrapperChild] Sending reply ", stderr);
     611                 :             }
     612               0 :             return MsgProcessed;
     613                 :         }
     614                 :     case PObjectWrapper::Msg_HasInstance__ID:
     615                 :         {
     616               0 :             (const_cast<Message&>(__msg)).set_name("PObjectWrapper::Msg_HasInstance");
     617               0 :             if (mozilla::ipc::LoggingEnabled()) {
     618               0 :                 (static_cast<const PObjectWrapper::Msg_HasInstance*>((&(__msg))))->Log("[PObjectWrapperChild] Received ", stderr);
     619                 :             }
     620                 : 
     621               0 :             void* __iter = 0;
     622               0 :             JSVariant v;
     623                 : 
     624               0 :             if ((!(Read((&(v)), (&(__msg)), (&(__iter)))))) {
     625               0 :                 FatalError("error deserializing (better message TODO)");
     626               0 :                 return MsgValueError;
     627                 :             }
     628               0 :             (__msg).EndRead(__iter);
     629               0 :             if ((!(PObjectWrapper::Transition(mState, Trigger(Trigger::Send, PObjectWrapper::Msg_HasInstance__ID), (&(mState)))))) {
     630               0 :                 NS_WARNING("bad state transition!");
     631                 :             }
     632               0 :             OperationStatus status;
     633                 :             JSBool bp;
     634               0 :             int32 __id = mId;
     635               0 :             if ((!(AnswerHasInstance(v, (&(status)), (&(bp)))))) {
     636               0 :                 return MsgProcessingError;
     637                 :             }
     638                 : 
     639               0 :             __reply = new PObjectWrapper::Reply_HasInstance();
     640                 : 
     641               0 :             Write(status, __reply);
     642               0 :             Write(bp, __reply);
     643               0 :             (__reply)->set_routing_id(__id);
     644               0 :             (__reply)->set_rpc();
     645               0 :             (__reply)->set_reply();
     646                 : 
     647               0 :             if (mozilla::ipc::LoggingEnabled()) {
     648               0 :                 (static_cast<const PObjectWrapper::Reply_HasInstance*>(__reply))->Log("[PObjectWrapperChild] Sending reply ", stderr);
     649                 :             }
     650               0 :             return MsgProcessed;
     651                 :         }
     652                 :     default:
     653                 :         {
     654               0 :             return MsgNotKnown;
     655                 :         }
     656                 :     }
     657                 : }
     658                 : 
     659                 : void
     660               0 : PObjectWrapperChild::OnProcessingError(Result code)
     661                 : {
     662               0 :     NS_RUNTIMEABORT("`OnProcessingError' called on non-toplevel actor");
     663               0 : }
     664                 : 
     665                 : bool
     666               0 : PObjectWrapperChild::OnReplyTimeout()
     667                 : {
     668               0 :     NS_RUNTIMEABORT("`OnReplyTimeout' called on non-toplevel actor");
     669               0 :     return false;
     670                 : }
     671                 : 
     672                 : void
     673               0 : PObjectWrapperChild::OnChannelClose()
     674                 : {
     675               0 :     NS_RUNTIMEABORT("`OnClose' called on non-toplevel actor");
     676               0 : }
     677                 : 
     678                 : void
     679               0 : PObjectWrapperChild::OnChannelError()
     680                 : {
     681               0 :     NS_RUNTIMEABORT("`OnError' called on non-toplevel actor");
     682               0 : }
     683                 : 
     684                 : void
     685               0 : PObjectWrapperChild::OnChannelConnected(int32 pid)
     686                 : {
     687               0 :     NS_RUNTIMEABORT("'OnConnected' called on non-toplevel actor");
     688               0 : }
     689                 : 
     690                 : bool
     691               0 : PObjectWrapperChild::AllocShmem(
     692                 :         size_t aSize,
     693                 :         Shmem::SharedMemory::SharedMemoryType aType,
     694                 :         Shmem* aMem)
     695                 : {
     696                 :     Shmem::id_t aId;
     697               0 :     nsAutoPtr<Shmem::SharedMemory> rawmem(CreateSharedMemory(aSize, aType, false, (&(aId))));
     698               0 :     if ((!(rawmem))) {
     699               0 :         return false;
     700                 :     }
     701                 : 
     702               0 :     (*(aMem)) = Shmem(Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead(), (rawmem).forget(), aId);
     703               0 :     return true;
     704                 : }
     705                 : 
     706                 : bool
     707               0 : PObjectWrapperChild::AllocUnsafeShmem(
     708                 :         size_t aSize,
     709                 :         Shmem::SharedMemory::SharedMemoryType aType,
     710                 :         Shmem* aMem)
     711                 : {
     712                 :     Shmem::id_t aId;
     713               0 :     nsAutoPtr<Shmem::SharedMemory> rawmem(CreateSharedMemory(aSize, aType, true, (&(aId))));
     714               0 :     if ((!(rawmem))) {
     715               0 :         return false;
     716                 :     }
     717                 : 
     718               0 :     (*(aMem)) = Shmem(Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead(), (rawmem).forget(), aId);
     719               0 :     return true;
     720                 : }
     721                 : 
     722                 : bool
     723               0 : PObjectWrapperChild::AdoptShmem(
     724                 :         Shmem& aMem,
     725                 :         Shmem* aOutMem)
     726                 : {
     727               0 :     Shmem::SharedMemory* rawmem = (aMem).Segment(Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead());
     728               0 :     if (((!(rawmem))) || (IsTrackingSharedMemory(rawmem))) {
     729               0 :         NS_RUNTIMEABORT("bad Shmem");
     730                 :     }
     731                 : 
     732                 :     Shmem::id_t aId;
     733               0 :     if ((!(AdoptSharedMemory(rawmem, (&(aId)))))) {
     734               0 :         return false;
     735                 :     }
     736                 : 
     737               0 :     (*(aOutMem)) = Shmem(Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead(), rawmem, aId);
     738               0 :     return true;
     739                 : }
     740                 : 
     741                 : bool
     742               0 : PObjectWrapperChild::DeallocShmem(Shmem& aMem)
     743                 : {
     744               0 :     bool ok = DestroySharedMemory(aMem);
     745               0 :     (aMem).forget(Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead());
     746               0 :     return ok;
     747                 : }
     748                 : 
     749                 : void
     750               0 : PObjectWrapperChild::FatalError(const char* const msg) const
     751                 : {
     752                 :     // Virtual method to prevent inlining.
     753                 :     // This give us better error reporting.
     754                 :     // See bug 589371
     755                 : 
     756               0 :     NS_ERROR("IPDL error:");
     757               0 :     NS_ERROR(msg);
     758                 : 
     759               0 :     NS_RUNTIMEABORT("[PObjectWrapperChild] abort()ing as a result");
     760               0 : }
     761                 : 
     762                 : void
     763               0 : PObjectWrapperChild::DestroySubtree(ActorDestroyReason why)
     764                 : {
     765                 :     // Unregister from our manager.
     766               0 :     Unregister(mId);
     767               0 :     mId = 1;
     768                 : 
     769                 :     // Finally, destroy "us".
     770               0 :     ActorDestroy(why);
     771               0 : }
     772                 : 
     773                 : void
     774               0 : PObjectWrapperChild::DeallocSubtree()
     775                 : {
     776               0 : }
     777                 : 
     778                 : void
     779               0 : PObjectWrapperChild::Write(
     780                 :         PObjectWrapperChild* __v,
     781                 :         Message* __msg,
     782                 :         bool __nullable)
     783                 : {
     784                 :     int32 id;
     785               0 :     if ((!(__v))) {
     786               0 :         if ((!(__nullable))) {
     787               0 :             NS_RUNTIMEABORT("NULL actor value passed to non-nullable param");
     788                 :         }
     789               0 :         id = 0;
     790                 :     }
     791                 :     else {
     792               0 :         id = (__v)->mId;
     793               0 :         if ((1) == (id)) {
     794               0 :             NS_RUNTIMEABORT("actor has been |delete|d");
     795                 :         }
     796                 :     }
     797                 : 
     798               0 :     Write(id, __msg);
     799               0 : }
     800                 : 
     801                 : bool
     802               0 : PObjectWrapperChild::Read(
     803                 :         PObjectWrapperChild** __v,
     804                 :         const Message* __msg,
     805                 :         void** __iter,
     806                 :         bool __nullable)
     807                 : {
     808                 :     int32 id;
     809               0 :     if ((!(Read((&(id)), __msg, __iter)))) {
     810               0 :         return false;
     811                 :     }
     812               0 :     if (((1) == (id)) || (((0) == (id)) && ((!(__nullable))))) {
     813               0 :         return false;
     814                 :     }
     815                 : 
     816               0 :     if ((0) == (id)) {
     817               0 :         (*(__v)) = 0;
     818                 :     }
     819                 :     else {
     820               0 :         (*(__v)) = static_cast<PObjectWrapperChild*>(Lookup(id));
     821               0 :         if ((!((*(__v))))) {
     822               0 :             return false;
     823                 :         }
     824                 :     }
     825               0 :     return true;
     826                 : }
     827                 : 
     828                 : void
     829               0 : PObjectWrapperChild::Write(
     830                 :         const InfallibleTArray<JSVariant>& __v,
     831                 :         Message* __msg)
     832                 : {
     833               0 :     uint32 length = (__v).Length();
     834               0 :     Write(length, __msg);
     835                 : 
     836               0 :     for (uint32 i = 0; (i) < (length); (++(i))) {
     837               0 :         Write(__v[i], __msg);
     838                 :     }
     839               0 : }
     840                 : 
     841                 : bool
     842               0 : PObjectWrapperChild::Read(
     843                 :         InfallibleTArray<JSVariant>* __v,
     844                 :         const Message* __msg,
     845                 :         void** __iter)
     846                 : {
     847               0 :     InfallibleTArray<JSVariant>& a = (*(__v));
     848                 :     uint32 length;
     849               0 :     if ((!(Read((&(length)), __msg, __iter)))) {
     850               0 :         return false;
     851                 :     }
     852                 : 
     853               0 :     (__v)->SetLength(length);
     854               0 :     for (uint32 i = 0; (i) < (length); (++(i))) {
     855               0 :         if ((!(Read((&(a[i])), __msg, __iter)))) {
     856               0 :             return false;
     857                 :         }
     858                 :     }
     859               0 :     return true;
     860                 : }
     861                 : 
     862                 : void
     863               0 : PObjectWrapperChild::Write(
     864                 :         const OperationStatus& __v,
     865                 :         Message* __msg)
     866                 : {
     867                 :     typedef OperationStatus __type;
     868               0 :     Write(int((__v).type()), __msg);
     869                 : 
     870               0 :     switch ((__v).type()) {
     871                 :     case __type::TJSBool:
     872                 :         {
     873               0 :             Write((__v).get_JSBool(), __msg);
     874               0 :             return;
     875                 :         }
     876                 :     case __type::TJSVariant:
     877                 :         {
     878               0 :             Write((__v).get_JSVariant(), __msg);
     879               0 :             return;
     880                 :         }
     881                 :     default:
     882                 :         {
     883               0 :             NS_RUNTIMEABORT("unknown union type");
     884               0 :             return;
     885                 :         }
     886                 :     }
     887                 : }
     888                 : 
     889                 : bool
     890               0 : PObjectWrapperChild::Read(
     891                 :         OperationStatus* __v,
     892                 :         const Message* __msg,
     893                 :         void** __iter)
     894                 : {
     895                 :     typedef OperationStatus __type;
     896                 :     int type;
     897               0 :     if ((!(Read((&(type)), __msg, __iter)))) {
     898               0 :         return false;
     899                 :     }
     900                 : 
     901               0 :     switch (type) {
     902                 :     case __type::TJSBool:
     903                 :         {
     904               0 :             JSBool tmp = JSBool();
     905               0 :             (*(__v)) = tmp;
     906               0 :             return Read((&((__v)->get_JSBool())), __msg, __iter);
     907                 :         }
     908                 :     case __type::TJSVariant:
     909                 :         {
     910               0 :             JSVariant tmp = JSVariant();
     911               0 :             (*(__v)) = tmp;
     912               0 :             return Read((&((__v)->get_JSVariant())), __msg, __iter);
     913                 :         }
     914                 :     default:
     915                 :         {
     916               0 :             return false;
     917                 :         }
     918                 :     }
     919                 : }
     920                 : 
     921                 : void
     922               0 : PObjectWrapperChild::Write(
     923                 :         const JSVariant& __v,
     924                 :         Message* __msg)
     925                 : {
     926                 :     typedef JSVariant __type;
     927               0 :     Write(int((__v).type()), __msg);
     928                 : 
     929               0 :     switch ((__v).type()) {
     930                 :     case __type::Tvoid_t:
     931                 :         {
     932               0 :             Write((__v).get_void_t(), __msg);
     933               0 :             return;
     934                 :         }
     935                 :     case __type::TPObjectWrapperParent:
     936                 :         {
     937               0 :             NS_RUNTIMEABORT("wrong side!");
     938               0 :             return;
     939                 :         }
     940                 :     case __type::TPObjectWrapperChild:
     941                 :         {
     942               0 :             Write((__v).get_PObjectWrapperChild(), __msg, true);
     943               0 :             return;
     944                 :         }
     945                 :     case __type::TnsString:
     946                 :         {
     947               0 :             Write((__v).get_nsString(), __msg);
     948               0 :             return;
     949                 :         }
     950                 :     case __type::Tint:
     951                 :         {
     952               0 :             Write((__v).get_int(), __msg);
     953               0 :             return;
     954                 :         }
     955                 :     case __type::Tdouble:
     956                 :         {
     957               0 :             Write((__v).get_double(), __msg);
     958               0 :             return;
     959                 :         }
     960                 :     case __type::Tbool:
     961                 :         {
     962               0 :             Write((__v).get_bool(), __msg);
     963               0 :             return;
     964                 :         }
     965                 :     default:
     966                 :         {
     967               0 :             NS_RUNTIMEABORT("unknown union type");
     968               0 :             return;
     969                 :         }
     970                 :     }
     971                 : }
     972                 : 
     973                 : bool
     974               0 : PObjectWrapperChild::Read(
     975                 :         JSVariant* __v,
     976                 :         const Message* __msg,
     977                 :         void** __iter)
     978                 : {
     979                 :     typedef JSVariant __type;
     980                 :     int type;
     981               0 :     if ((!(Read((&(type)), __msg, __iter)))) {
     982               0 :         return false;
     983                 :     }
     984                 : 
     985               0 :     switch (type) {
     986                 :     case __type::Tvoid_t:
     987                 :         {
     988               0 :             void_t tmp = void_t();
     989               0 :             (*(__v)) = tmp;
     990               0 :             return Read((&((__v)->get_void_t())), __msg, __iter);
     991                 :         }
     992                 :     case __type::TPObjectWrapperParent:
     993                 :         {
     994               0 :             PObjectWrapperChild* tmp = static_cast<PObjectWrapperChild*>(0);
     995               0 :             (*(__v)) = tmp;
     996               0 :             return Read((&((__v)->get_PObjectWrapperChild())), __msg, __iter, true);
     997                 :         }
     998                 :     case __type::TPObjectWrapperChild:
     999                 :         {
    1000               0 :             return false;
    1001                 :         }
    1002                 :     case __type::TnsString:
    1003                 :         {
    1004               0 :             nsString tmp = nsString();
    1005               0 :             (*(__v)) = tmp;
    1006               0 :             return Read((&((__v)->get_nsString())), __msg, __iter);
    1007                 :         }
    1008                 :     case __type::Tint:
    1009                 :         {
    1010               0 :             int tmp = int();
    1011               0 :             (*(__v)) = tmp;
    1012               0 :             return Read((&((__v)->get_int())), __msg, __iter);
    1013                 :         }
    1014                 :     case __type::Tdouble:
    1015                 :         {
    1016               0 :             double tmp = double();
    1017               0 :             (*(__v)) = tmp;
    1018               0 :             return Read((&((__v)->get_double())), __msg, __iter);
    1019                 :         }
    1020                 :     case __type::Tbool:
    1021                 :         {
    1022               0 :             bool tmp = bool();
    1023               0 :             (*(__v)) = tmp;
    1024               0 :             return Read((&((__v)->get_bool())), __msg, __iter);
    1025                 :         }
    1026                 :     default:
    1027                 :         {
    1028               0 :             return false;
    1029                 :         }
    1030                 :     }
    1031                 : }
    1032                 : 
    1033                 : 
    1034                 : 
    1035                 : } // namespace jsipc
    1036                 : } // namespace mozilla

Generated by: LCOV version 1.7