1 : //
2 : // Automatically generated by ipdlc.
3 : // Edit at your own risk
4 : //
5 :
6 :
7 : #include "mozilla/plugins/PPluginScriptableObjectParent.h"
8 :
9 : #include "mozilla/plugins/PPluginInstanceParent.h"
10 : #include "mozilla/plugins/PPluginIdentifierParent.h"
11 :
12 : typedef IPC::Message Message;
13 : typedef mozilla::ipc::RPCChannel Channel;
14 : typedef mozilla::ipc::RPCChannel::RPCListener ChannelListener;
15 : typedef base::ProcessHandle ProcessHandle;
16 : typedef mozilla::ipc::AsyncChannel AsyncChannel;
17 : typedef mozilla::ipc::SharedMemory SharedMemory;
18 : typedef mozilla::ipc::Trigger Trigger;
19 : typedef mozilla::ipc::ActorHandle ActorHandle;
20 : typedef mozilla::plugins::Variant Variant;
21 : typedef mozilla::ipc::Shmem Shmem;
22 : typedef mozilla::void_t void_t;
23 : typedef mozilla::null_t null_t;
24 : using mozilla::plugins::PPluginInstanceParent;
25 : using mozilla::plugins::PPluginIdentifierParent;
26 :
27 : namespace mozilla {
28 : namespace plugins {
29 :
30 :
31 : bool
32 0 : PPluginScriptableObjectParent::Recv__delete__()
33 : {
34 0 : return true;
35 : }
36 :
37 : void
38 0 : PPluginScriptableObjectParent::ActorDestroy(ActorDestroyReason why)
39 : {
40 0 : }
41 :
42 0 : PPluginScriptableObjectParent::PPluginScriptableObjectParent() :
43 : mId(0),
44 0 : mState(PPluginScriptableObject::__Dead)
45 : {
46 0 : MOZ_COUNT_CTOR(PPluginScriptableObjectParent);
47 0 : }
48 :
49 0 : PPluginScriptableObjectParent::~PPluginScriptableObjectParent()
50 : {
51 0 : MOZ_COUNT_DTOR(PPluginScriptableObjectParent);
52 0 : }
53 :
54 : PPluginInstanceParent*
55 0 : PPluginScriptableObjectParent::Manager()
56 : {
57 0 : return static_cast<PPluginInstanceParent*>(mManager);
58 : }
59 :
60 : PPluginScriptableObject::State
61 0 : PPluginScriptableObjectParent::state()
62 : {
63 0 : return mState;
64 : }
65 :
66 : bool
67 0 : PPluginScriptableObjectParent::Send__delete__(PPluginScriptableObjectParent* actor)
68 : {
69 0 : if ((!(actor))) {
70 0 : return false;
71 : }
72 :
73 0 : if ((!(actor))) {
74 0 : return false;
75 : }
76 :
77 0 : PPluginScriptableObject::Msg___delete__* __msg = new PPluginScriptableObject::Msg___delete__();
78 :
79 0 : (actor)->Write(actor, __msg, false);
80 :
81 0 : (__msg)->set_routing_id((actor)->mId);
82 :
83 :
84 0 : if (mozilla::ipc::LoggingEnabled()) {
85 0 : (__msg)->Log("[PPluginScriptableObjectParent] Sending ", stderr);
86 : }
87 0 : if ((!(PPluginScriptableObject::Transition((actor)->mState, Trigger(Trigger::Send, PPluginScriptableObject::Msg___delete____ID), (&((actor)->mState)))))) {
88 0 : NS_WARNING("bad state transition!");
89 : }
90 :
91 0 : bool __sendok = ((actor)->mChannel)->Send(__msg);
92 :
93 0 : (actor)->DestroySubtree(Deletion);
94 0 : (actor)->DeallocSubtree();
95 0 : ((actor)->mManager)->RemoveManagee(PPluginScriptableObjectMsgStart, actor);
96 0 : return __sendok;
97 : }
98 :
99 : bool
100 0 : PPluginScriptableObjectParent::CallInvalidate()
101 : {
102 0 : PPluginScriptableObject::Msg_Invalidate* __msg = new PPluginScriptableObject::Msg_Invalidate();
103 :
104 :
105 0 : (__msg)->set_routing_id(mId);
106 0 : (__msg)->set_rpc();
107 :
108 :
109 0 : Message __reply;
110 :
111 0 : if (mozilla::ipc::LoggingEnabled()) {
112 0 : (__msg)->Log("[PPluginScriptableObjectParent] Sending ", stderr);
113 : }
114 0 : if ((!(PPluginScriptableObject::Transition(mState, Trigger(Trigger::Send, PPluginScriptableObject::Msg_Invalidate__ID), (&(mState)))))) {
115 0 : NS_WARNING("bad state transition!");
116 : }
117 :
118 0 : bool __sendok = (mChannel)->Call(__msg, (&(__reply)));
119 0 : if ((!(__sendok))) {
120 0 : return false;
121 : }
122 :
123 0 : if (mozilla::ipc::LoggingEnabled()) {
124 0 : (static_cast<const PPluginScriptableObject::Reply_Invalidate*>((&(__reply))))->Log("[PPluginScriptableObjectParent] Received reply ", stderr);
125 : }
126 :
127 0 : return true;
128 : }
129 :
130 : bool
131 0 : PPluginScriptableObjectParent::CallHasMethod(
132 : PPluginIdentifierParent* aId,
133 : bool* aHasMethod)
134 : {
135 0 : PPluginScriptableObject::Msg_HasMethod* __msg = new PPluginScriptableObject::Msg_HasMethod();
136 :
137 0 : Write(aId, __msg, false);
138 :
139 0 : (__msg)->set_routing_id(mId);
140 0 : (__msg)->set_rpc();
141 :
142 :
143 0 : Message __reply;
144 :
145 0 : if (mozilla::ipc::LoggingEnabled()) {
146 0 : (__msg)->Log("[PPluginScriptableObjectParent] Sending ", stderr);
147 : }
148 0 : if ((!(PPluginScriptableObject::Transition(mState, Trigger(Trigger::Send, PPluginScriptableObject::Msg_HasMethod__ID), (&(mState)))))) {
149 0 : NS_WARNING("bad state transition!");
150 : }
151 :
152 0 : bool __sendok = (mChannel)->Call(__msg, (&(__reply)));
153 0 : if ((!(__sendok))) {
154 0 : return false;
155 : }
156 :
157 0 : if (mozilla::ipc::LoggingEnabled()) {
158 0 : (static_cast<const PPluginScriptableObject::Reply_HasMethod*>((&(__reply))))->Log("[PPluginScriptableObjectParent] Received reply ", stderr);
159 : }
160 :
161 0 : void* __iter = 0;
162 0 : if ((!(Read(aHasMethod, (&(__reply)), (&(__iter)))))) {
163 0 : FatalError("error deserializing (better message TODO)");
164 0 : return false;
165 : }
166 0 : (__reply).EndRead(__iter);
167 :
168 0 : return true;
169 : }
170 :
171 : bool
172 0 : PPluginScriptableObjectParent::CallInvoke(
173 : PPluginIdentifierParent* aId,
174 : const InfallibleTArray<Variant>& aArgs,
175 : Variant* aResult,
176 : bool* aSuccess)
177 : {
178 0 : PPluginScriptableObject::Msg_Invoke* __msg = new PPluginScriptableObject::Msg_Invoke();
179 :
180 0 : Write(aId, __msg, false);
181 0 : Write(aArgs, __msg);
182 :
183 0 : (__msg)->set_routing_id(mId);
184 0 : (__msg)->set_rpc();
185 :
186 :
187 0 : Message __reply;
188 :
189 0 : if (mozilla::ipc::LoggingEnabled()) {
190 0 : (__msg)->Log("[PPluginScriptableObjectParent] Sending ", stderr);
191 : }
192 0 : if ((!(PPluginScriptableObject::Transition(mState, Trigger(Trigger::Send, PPluginScriptableObject::Msg_Invoke__ID), (&(mState)))))) {
193 0 : NS_WARNING("bad state transition!");
194 : }
195 :
196 0 : bool __sendok = (mChannel)->Call(__msg, (&(__reply)));
197 0 : if ((!(__sendok))) {
198 0 : return false;
199 : }
200 :
201 0 : if (mozilla::ipc::LoggingEnabled()) {
202 0 : (static_cast<const PPluginScriptableObject::Reply_Invoke*>((&(__reply))))->Log("[PPluginScriptableObjectParent] Received reply ", stderr);
203 : }
204 :
205 0 : void* __iter = 0;
206 0 : if ((!(Read(aResult, (&(__reply)), (&(__iter)))))) {
207 0 : FatalError("error deserializing (better message TODO)");
208 0 : return false;
209 : }
210 0 : if ((!(Read(aSuccess, (&(__reply)), (&(__iter)))))) {
211 0 : FatalError("error deserializing (better message TODO)");
212 0 : return false;
213 : }
214 0 : (__reply).EndRead(__iter);
215 :
216 0 : return true;
217 : }
218 :
219 : bool
220 0 : PPluginScriptableObjectParent::CallInvokeDefault(
221 : const InfallibleTArray<Variant>& aArgs,
222 : Variant* aResult,
223 : bool* aSuccess)
224 : {
225 0 : PPluginScriptableObject::Msg_InvokeDefault* __msg = new PPluginScriptableObject::Msg_InvokeDefault();
226 :
227 0 : Write(aArgs, __msg);
228 :
229 0 : (__msg)->set_routing_id(mId);
230 0 : (__msg)->set_rpc();
231 :
232 :
233 0 : Message __reply;
234 :
235 0 : if (mozilla::ipc::LoggingEnabled()) {
236 0 : (__msg)->Log("[PPluginScriptableObjectParent] Sending ", stderr);
237 : }
238 0 : if ((!(PPluginScriptableObject::Transition(mState, Trigger(Trigger::Send, PPluginScriptableObject::Msg_InvokeDefault__ID), (&(mState)))))) {
239 0 : NS_WARNING("bad state transition!");
240 : }
241 :
242 0 : bool __sendok = (mChannel)->Call(__msg, (&(__reply)));
243 0 : if ((!(__sendok))) {
244 0 : return false;
245 : }
246 :
247 0 : if (mozilla::ipc::LoggingEnabled()) {
248 0 : (static_cast<const PPluginScriptableObject::Reply_InvokeDefault*>((&(__reply))))->Log("[PPluginScriptableObjectParent] Received reply ", stderr);
249 : }
250 :
251 0 : void* __iter = 0;
252 0 : if ((!(Read(aResult, (&(__reply)), (&(__iter)))))) {
253 0 : FatalError("error deserializing (better message TODO)");
254 0 : return false;
255 : }
256 0 : if ((!(Read(aSuccess, (&(__reply)), (&(__iter)))))) {
257 0 : FatalError("error deserializing (better message TODO)");
258 0 : return false;
259 : }
260 0 : (__reply).EndRead(__iter);
261 :
262 0 : return true;
263 : }
264 :
265 : bool
266 0 : PPluginScriptableObjectParent::CallHasProperty(
267 : PPluginIdentifierParent* aId,
268 : bool* aHasProperty)
269 : {
270 0 : PPluginScriptableObject::Msg_HasProperty* __msg = new PPluginScriptableObject::Msg_HasProperty();
271 :
272 0 : Write(aId, __msg, false);
273 :
274 0 : (__msg)->set_routing_id(mId);
275 0 : (__msg)->set_rpc();
276 :
277 :
278 0 : Message __reply;
279 :
280 0 : if (mozilla::ipc::LoggingEnabled()) {
281 0 : (__msg)->Log("[PPluginScriptableObjectParent] Sending ", stderr);
282 : }
283 0 : if ((!(PPluginScriptableObject::Transition(mState, Trigger(Trigger::Send, PPluginScriptableObject::Msg_HasProperty__ID), (&(mState)))))) {
284 0 : NS_WARNING("bad state transition!");
285 : }
286 :
287 0 : bool __sendok = (mChannel)->Call(__msg, (&(__reply)));
288 0 : if ((!(__sendok))) {
289 0 : return false;
290 : }
291 :
292 0 : if (mozilla::ipc::LoggingEnabled()) {
293 0 : (static_cast<const PPluginScriptableObject::Reply_HasProperty*>((&(__reply))))->Log("[PPluginScriptableObjectParent] Received reply ", stderr);
294 : }
295 :
296 0 : void* __iter = 0;
297 0 : if ((!(Read(aHasProperty, (&(__reply)), (&(__iter)))))) {
298 0 : FatalError("error deserializing (better message TODO)");
299 0 : return false;
300 : }
301 0 : (__reply).EndRead(__iter);
302 :
303 0 : return true;
304 : }
305 :
306 : bool
307 0 : PPluginScriptableObjectParent::CallSetProperty(
308 : PPluginIdentifierParent* aId,
309 : const Variant& aValue,
310 : bool* aSuccess)
311 : {
312 0 : PPluginScriptableObject::Msg_SetProperty* __msg = new PPluginScriptableObject::Msg_SetProperty();
313 :
314 0 : Write(aId, __msg, false);
315 0 : Write(aValue, __msg);
316 :
317 0 : (__msg)->set_routing_id(mId);
318 0 : (__msg)->set_rpc();
319 :
320 :
321 0 : Message __reply;
322 :
323 0 : if (mozilla::ipc::LoggingEnabled()) {
324 0 : (__msg)->Log("[PPluginScriptableObjectParent] Sending ", stderr);
325 : }
326 0 : if ((!(PPluginScriptableObject::Transition(mState, Trigger(Trigger::Send, PPluginScriptableObject::Msg_SetProperty__ID), (&(mState)))))) {
327 0 : NS_WARNING("bad state transition!");
328 : }
329 :
330 0 : bool __sendok = (mChannel)->Call(__msg, (&(__reply)));
331 0 : if ((!(__sendok))) {
332 0 : return false;
333 : }
334 :
335 0 : if (mozilla::ipc::LoggingEnabled()) {
336 0 : (static_cast<const PPluginScriptableObject::Reply_SetProperty*>((&(__reply))))->Log("[PPluginScriptableObjectParent] Received reply ", stderr);
337 : }
338 :
339 0 : void* __iter = 0;
340 0 : if ((!(Read(aSuccess, (&(__reply)), (&(__iter)))))) {
341 0 : FatalError("error deserializing (better message TODO)");
342 0 : return false;
343 : }
344 0 : (__reply).EndRead(__iter);
345 :
346 0 : return true;
347 : }
348 :
349 : bool
350 0 : PPluginScriptableObjectParent::CallRemoveProperty(
351 : PPluginIdentifierParent* aId,
352 : bool* aSuccess)
353 : {
354 0 : PPluginScriptableObject::Msg_RemoveProperty* __msg = new PPluginScriptableObject::Msg_RemoveProperty();
355 :
356 0 : Write(aId, __msg, false);
357 :
358 0 : (__msg)->set_routing_id(mId);
359 0 : (__msg)->set_rpc();
360 :
361 :
362 0 : Message __reply;
363 :
364 0 : if (mozilla::ipc::LoggingEnabled()) {
365 0 : (__msg)->Log("[PPluginScriptableObjectParent] Sending ", stderr);
366 : }
367 0 : if ((!(PPluginScriptableObject::Transition(mState, Trigger(Trigger::Send, PPluginScriptableObject::Msg_RemoveProperty__ID), (&(mState)))))) {
368 0 : NS_WARNING("bad state transition!");
369 : }
370 :
371 0 : bool __sendok = (mChannel)->Call(__msg, (&(__reply)));
372 0 : if ((!(__sendok))) {
373 0 : return false;
374 : }
375 :
376 0 : if (mozilla::ipc::LoggingEnabled()) {
377 0 : (static_cast<const PPluginScriptableObject::Reply_RemoveProperty*>((&(__reply))))->Log("[PPluginScriptableObjectParent] Received reply ", stderr);
378 : }
379 :
380 0 : void* __iter = 0;
381 0 : if ((!(Read(aSuccess, (&(__reply)), (&(__iter)))))) {
382 0 : FatalError("error deserializing (better message TODO)");
383 0 : return false;
384 : }
385 0 : (__reply).EndRead(__iter);
386 :
387 0 : return true;
388 : }
389 :
390 : bool
391 0 : PPluginScriptableObjectParent::CallEnumerate(
392 : InfallibleTArray<PPluginIdentifierParent*>* aProperties,
393 : bool* aSuccess)
394 : {
395 0 : PPluginScriptableObject::Msg_Enumerate* __msg = new PPluginScriptableObject::Msg_Enumerate();
396 :
397 :
398 0 : (__msg)->set_routing_id(mId);
399 0 : (__msg)->set_rpc();
400 :
401 :
402 0 : Message __reply;
403 :
404 0 : if (mozilla::ipc::LoggingEnabled()) {
405 0 : (__msg)->Log("[PPluginScriptableObjectParent] Sending ", stderr);
406 : }
407 0 : if ((!(PPluginScriptableObject::Transition(mState, Trigger(Trigger::Send, PPluginScriptableObject::Msg_Enumerate__ID), (&(mState)))))) {
408 0 : NS_WARNING("bad state transition!");
409 : }
410 :
411 0 : bool __sendok = (mChannel)->Call(__msg, (&(__reply)));
412 0 : if ((!(__sendok))) {
413 0 : return false;
414 : }
415 :
416 0 : if (mozilla::ipc::LoggingEnabled()) {
417 0 : (static_cast<const PPluginScriptableObject::Reply_Enumerate*>((&(__reply))))->Log("[PPluginScriptableObjectParent] Received reply ", stderr);
418 : }
419 :
420 0 : void* __iter = 0;
421 0 : if ((!(Read(aProperties, (&(__reply)), (&(__iter)))))) {
422 0 : FatalError("error deserializing (better message TODO)");
423 0 : return false;
424 : }
425 0 : if ((!(Read(aSuccess, (&(__reply)), (&(__iter)))))) {
426 0 : FatalError("error deserializing (better message TODO)");
427 0 : return false;
428 : }
429 0 : (__reply).EndRead(__iter);
430 :
431 0 : return true;
432 : }
433 :
434 : bool
435 0 : PPluginScriptableObjectParent::CallConstruct(
436 : const InfallibleTArray<Variant>& aArgs,
437 : Variant* aResult,
438 : bool* aSuccess)
439 : {
440 0 : PPluginScriptableObject::Msg_Construct* __msg = new PPluginScriptableObject::Msg_Construct();
441 :
442 0 : Write(aArgs, __msg);
443 :
444 0 : (__msg)->set_routing_id(mId);
445 0 : (__msg)->set_rpc();
446 :
447 :
448 0 : Message __reply;
449 :
450 0 : if (mozilla::ipc::LoggingEnabled()) {
451 0 : (__msg)->Log("[PPluginScriptableObjectParent] Sending ", stderr);
452 : }
453 0 : if ((!(PPluginScriptableObject::Transition(mState, Trigger(Trigger::Send, PPluginScriptableObject::Msg_Construct__ID), (&(mState)))))) {
454 0 : NS_WARNING("bad state transition!");
455 : }
456 :
457 0 : bool __sendok = (mChannel)->Call(__msg, (&(__reply)));
458 0 : if ((!(__sendok))) {
459 0 : return false;
460 : }
461 :
462 0 : if (mozilla::ipc::LoggingEnabled()) {
463 0 : (static_cast<const PPluginScriptableObject::Reply_Construct*>((&(__reply))))->Log("[PPluginScriptableObjectParent] Received reply ", stderr);
464 : }
465 :
466 0 : void* __iter = 0;
467 0 : if ((!(Read(aResult, (&(__reply)), (&(__iter)))))) {
468 0 : FatalError("error deserializing (better message TODO)");
469 0 : return false;
470 : }
471 0 : if ((!(Read(aSuccess, (&(__reply)), (&(__iter)))))) {
472 0 : FatalError("error deserializing (better message TODO)");
473 0 : return false;
474 : }
475 0 : (__reply).EndRead(__iter);
476 :
477 0 : return true;
478 : }
479 :
480 : bool
481 0 : PPluginScriptableObjectParent::SendProtect()
482 : {
483 0 : PPluginScriptableObject::Msg_Protect* __msg = new PPluginScriptableObject::Msg_Protect();
484 :
485 :
486 0 : (__msg)->set_routing_id(mId);
487 :
488 :
489 :
490 0 : if (mozilla::ipc::LoggingEnabled()) {
491 0 : (__msg)->Log("[PPluginScriptableObjectParent] Sending ", stderr);
492 : }
493 0 : if ((!(PPluginScriptableObject::Transition(mState, Trigger(Trigger::Send, PPluginScriptableObject::Msg_Protect__ID), (&(mState)))))) {
494 0 : NS_WARNING("bad state transition!");
495 : }
496 :
497 0 : bool __sendok = (mChannel)->Send(__msg);
498 0 : return __sendok;
499 : }
500 :
501 : bool
502 0 : PPluginScriptableObjectParent::SendUnprotect()
503 : {
504 0 : PPluginScriptableObject::Msg_Unprotect* __msg = new PPluginScriptableObject::Msg_Unprotect();
505 :
506 :
507 0 : (__msg)->set_routing_id(mId);
508 :
509 :
510 :
511 0 : if (mozilla::ipc::LoggingEnabled()) {
512 0 : (__msg)->Log("[PPluginScriptableObjectParent] Sending ", stderr);
513 : }
514 0 : if ((!(PPluginScriptableObject::Transition(mState, Trigger(Trigger::Send, PPluginScriptableObject::Msg_Unprotect__ID), (&(mState)))))) {
515 0 : NS_WARNING("bad state transition!");
516 : }
517 :
518 0 : bool __sendok = (mChannel)->Send(__msg);
519 0 : return __sendok;
520 : }
521 :
522 : bool
523 0 : PPluginScriptableObjectParent::CallGetChildProperty(
524 : PPluginIdentifierParent* aId,
525 : bool* aHasProperty,
526 : bool* aHasMethod,
527 : Variant* aResult,
528 : bool* aSuccess)
529 : {
530 0 : PPluginScriptableObject::Msg_GetChildProperty* __msg = new PPluginScriptableObject::Msg_GetChildProperty();
531 :
532 0 : Write(aId, __msg, false);
533 :
534 0 : (__msg)->set_routing_id(mId);
535 0 : (__msg)->set_rpc();
536 :
537 :
538 0 : Message __reply;
539 :
540 0 : if (mozilla::ipc::LoggingEnabled()) {
541 0 : (__msg)->Log("[PPluginScriptableObjectParent] Sending ", stderr);
542 : }
543 0 : if ((!(PPluginScriptableObject::Transition(mState, Trigger(Trigger::Send, PPluginScriptableObject::Msg_GetChildProperty__ID), (&(mState)))))) {
544 0 : NS_WARNING("bad state transition!");
545 : }
546 :
547 0 : bool __sendok = (mChannel)->Call(__msg, (&(__reply)));
548 0 : if ((!(__sendok))) {
549 0 : return false;
550 : }
551 :
552 0 : if (mozilla::ipc::LoggingEnabled()) {
553 0 : (static_cast<const PPluginScriptableObject::Reply_GetChildProperty*>((&(__reply))))->Log("[PPluginScriptableObjectParent] Received reply ", stderr);
554 : }
555 :
556 0 : void* __iter = 0;
557 0 : if ((!(Read(aHasProperty, (&(__reply)), (&(__iter)))))) {
558 0 : FatalError("error deserializing (better message TODO)");
559 0 : return false;
560 : }
561 0 : if ((!(Read(aHasMethod, (&(__reply)), (&(__iter)))))) {
562 0 : FatalError("error deserializing (better message TODO)");
563 0 : return false;
564 : }
565 0 : if ((!(Read(aResult, (&(__reply)), (&(__iter)))))) {
566 0 : FatalError("error deserializing (better message TODO)");
567 0 : return false;
568 : }
569 0 : if ((!(Read(aSuccess, (&(__reply)), (&(__iter)))))) {
570 0 : FatalError("error deserializing (better message TODO)");
571 0 : return false;
572 : }
573 0 : (__reply).EndRead(__iter);
574 :
575 0 : return true;
576 : }
577 :
578 : int32
579 0 : PPluginScriptableObjectParent::Register(ChannelListener* aRouted)
580 : {
581 0 : return (mManager)->Register(aRouted);
582 : }
583 :
584 : int32
585 0 : PPluginScriptableObjectParent::RegisterID(
586 : ChannelListener* aRouted,
587 : int32 aId)
588 : {
589 0 : return (mManager)->RegisterID(aRouted, aId);
590 : }
591 :
592 : ChannelListener*
593 0 : PPluginScriptableObjectParent::Lookup(int32 aId)
594 : {
595 0 : return (mManager)->Lookup(aId);
596 : }
597 :
598 : void
599 0 : PPluginScriptableObjectParent::Unregister(int32 aId)
600 : {
601 0 : return (mManager)->Unregister(aId);
602 : }
603 :
604 : void
605 0 : PPluginScriptableObjectParent::RemoveManagee(
606 : int32 aProtocolId,
607 : ChannelListener* aListener)
608 : {
609 0 : NS_RUNTIMEABORT("unreached");
610 : return;
611 : }
612 :
613 : Shmem::SharedMemory*
614 0 : PPluginScriptableObjectParent::CreateSharedMemory(
615 : size_t aSize,
616 : Shmem::SharedMemory::SharedMemoryType type,
617 : bool unsafe,
618 : Shmem::id_t* aId)
619 : {
620 0 : return (mManager)->CreateSharedMemory(aSize, type, unsafe, aId);
621 : }
622 :
623 : bool
624 0 : PPluginScriptableObjectParent::AdoptSharedMemory(
625 : Shmem::SharedMemory* segment,
626 : Shmem::id_t* aId)
627 : {
628 0 : return (mManager)->AdoptSharedMemory(segment, aId);
629 : }
630 :
631 : Shmem::SharedMemory*
632 0 : PPluginScriptableObjectParent::LookupSharedMemory(Shmem::id_t aId)
633 : {
634 0 : return (mManager)->LookupSharedMemory(aId);
635 : }
636 :
637 : bool
638 0 : PPluginScriptableObjectParent::IsTrackingSharedMemory(Shmem::SharedMemory* segment)
639 : {
640 0 : return (mManager)->IsTrackingSharedMemory(segment);
641 : }
642 :
643 : bool
644 0 : PPluginScriptableObjectParent::DestroySharedMemory(Shmem& aShmem)
645 : {
646 0 : return (mManager)->DestroySharedMemory(aShmem);
647 : }
648 :
649 : ProcessHandle
650 0 : PPluginScriptableObjectParent::OtherProcess() const
651 : {
652 0 : return (mManager)->OtherProcess();
653 : }
654 :
655 : AsyncChannel*
656 0 : PPluginScriptableObjectParent::GetIPCChannel()
657 : {
658 0 : return mChannel;
659 : }
660 :
661 : PPluginScriptableObjectParent::Result
662 0 : PPluginScriptableObjectParent::OnMessageReceived(const Message& __msg)
663 : {
664 0 : switch ((__msg).type()) {
665 : case PPluginScriptableObject::Reply___delete____ID:
666 : {
667 0 : return MsgProcessed;
668 : }
669 : case PPluginScriptableObject::Msg___delete____ID:
670 : {
671 0 : (const_cast<Message&>(__msg)).set_name("PPluginScriptableObject::Msg___delete__");
672 0 : if (mozilla::ipc::LoggingEnabled()) {
673 0 : (static_cast<const PPluginScriptableObject::Msg___delete__*>((&(__msg))))->Log("[PPluginScriptableObjectParent] Received ", stderr);
674 : }
675 :
676 0 : void* __iter = 0;
677 : PPluginScriptableObjectParent* actor;
678 :
679 0 : if ((!(Read((&(actor)), (&(__msg)), (&(__iter)), false)))) {
680 0 : FatalError("error deserializing (better message TODO)");
681 0 : return MsgValueError;
682 : }
683 0 : (__msg).EndRead(__iter);
684 0 : if ((!(PPluginScriptableObject::Transition(mState, Trigger(Trigger::Recv, PPluginScriptableObject::Msg___delete____ID), (&(mState)))))) {
685 0 : NS_WARNING("bad state transition!");
686 : }
687 0 : if ((!(Recv__delete__()))) {
688 0 : return MsgProcessingError;
689 : }
690 :
691 0 : (actor)->DestroySubtree(Deletion);
692 0 : (actor)->DeallocSubtree();
693 0 : ((actor)->mManager)->RemoveManagee(PPluginScriptableObjectMsgStart, actor);
694 :
695 :
696 0 : return MsgProcessed;
697 : }
698 : case PPluginScriptableObject::Msg_Protect__ID:
699 : {
700 0 : (const_cast<Message&>(__msg)).set_name("PPluginScriptableObject::Msg_Protect");
701 0 : if (mozilla::ipc::LoggingEnabled()) {
702 0 : (static_cast<const PPluginScriptableObject::Msg_Protect*>((&(__msg))))->Log("[PPluginScriptableObjectParent] Received ", stderr);
703 : }
704 :
705 0 : if ((!(PPluginScriptableObject::Transition(mState, Trigger(Trigger::Recv, PPluginScriptableObject::Msg_Protect__ID), (&(mState)))))) {
706 0 : NS_WARNING("bad state transition!");
707 : }
708 0 : if ((!(RecvProtect()))) {
709 0 : return MsgProcessingError;
710 : }
711 :
712 0 : return MsgProcessed;
713 : }
714 : case PPluginScriptableObject::Msg_Unprotect__ID:
715 : {
716 0 : (const_cast<Message&>(__msg)).set_name("PPluginScriptableObject::Msg_Unprotect");
717 0 : if (mozilla::ipc::LoggingEnabled()) {
718 0 : (static_cast<const PPluginScriptableObject::Msg_Unprotect*>((&(__msg))))->Log("[PPluginScriptableObjectParent] Received ", stderr);
719 : }
720 :
721 0 : if ((!(PPluginScriptableObject::Transition(mState, Trigger(Trigger::Recv, PPluginScriptableObject::Msg_Unprotect__ID), (&(mState)))))) {
722 0 : NS_WARNING("bad state transition!");
723 : }
724 0 : if ((!(RecvUnprotect()))) {
725 0 : return MsgProcessingError;
726 : }
727 :
728 0 : return MsgProcessed;
729 : }
730 : default:
731 : {
732 0 : return MsgNotKnown;
733 : }
734 : }
735 : }
736 :
737 : PPluginScriptableObjectParent::Result
738 0 : PPluginScriptableObjectParent::OnMessageReceived(
739 : const Message& __msg,
740 : Message*& __reply)
741 : {
742 0 : return MsgNotKnown;
743 : }
744 :
745 : PPluginScriptableObjectParent::Result
746 0 : PPluginScriptableObjectParent::OnCallReceived(
747 : const Message& __msg,
748 : Message*& __reply)
749 : {
750 0 : switch ((__msg).type()) {
751 : case PPluginScriptableObject::Msg_NPN_Evaluate__ID:
752 : {
753 0 : (const_cast<Message&>(__msg)).set_name("PPluginScriptableObject::Msg_NPN_Evaluate");
754 0 : if (mozilla::ipc::LoggingEnabled()) {
755 0 : (static_cast<const PPluginScriptableObject::Msg_NPN_Evaluate*>((&(__msg))))->Log("[PPluginScriptableObjectParent] Received ", stderr);
756 : }
757 :
758 0 : void* __iter = 0;
759 0 : nsCString aScript;
760 :
761 0 : if ((!(Read((&(aScript)), (&(__msg)), (&(__iter)))))) {
762 0 : FatalError("error deserializing (better message TODO)");
763 0 : return MsgValueError;
764 : }
765 0 : (__msg).EndRead(__iter);
766 0 : if ((!(PPluginScriptableObject::Transition(mState, Trigger(Trigger::Recv, PPluginScriptableObject::Msg_NPN_Evaluate__ID), (&(mState)))))) {
767 0 : NS_WARNING("bad state transition!");
768 : }
769 0 : Variant aResult;
770 : bool aSuccess;
771 0 : int32 __id = mId;
772 0 : if ((!(AnswerNPN_Evaluate(aScript, (&(aResult)), (&(aSuccess)))))) {
773 0 : return MsgProcessingError;
774 : }
775 :
776 0 : __reply = new PPluginScriptableObject::Reply_NPN_Evaluate();
777 :
778 0 : Write(aResult, __reply);
779 0 : Write(aSuccess, __reply);
780 0 : (__reply)->set_routing_id(__id);
781 0 : (__reply)->set_rpc();
782 0 : (__reply)->set_reply();
783 :
784 0 : if (mozilla::ipc::LoggingEnabled()) {
785 0 : (static_cast<const PPluginScriptableObject::Reply_NPN_Evaluate*>(__reply))->Log("[PPluginScriptableObjectParent] Sending reply ", stderr);
786 : }
787 0 : return MsgProcessed;
788 : }
789 : case PPluginScriptableObject::Msg_HasMethod__ID:
790 : {
791 0 : (const_cast<Message&>(__msg)).set_name("PPluginScriptableObject::Msg_HasMethod");
792 0 : if (mozilla::ipc::LoggingEnabled()) {
793 0 : (static_cast<const PPluginScriptableObject::Msg_HasMethod*>((&(__msg))))->Log("[PPluginScriptableObjectParent] Received ", stderr);
794 : }
795 :
796 0 : void* __iter = 0;
797 : PPluginIdentifierParent* aId;
798 :
799 0 : if ((!(Read((&(aId)), (&(__msg)), (&(__iter)), false)))) {
800 0 : FatalError("error deserializing (better message TODO)");
801 0 : return MsgValueError;
802 : }
803 0 : (__msg).EndRead(__iter);
804 0 : if ((!(PPluginScriptableObject::Transition(mState, Trigger(Trigger::Recv, PPluginScriptableObject::Msg_HasMethod__ID), (&(mState)))))) {
805 0 : NS_WARNING("bad state transition!");
806 : }
807 : bool aHasMethod;
808 0 : int32 __id = mId;
809 0 : if ((!(AnswerHasMethod(aId, (&(aHasMethod)))))) {
810 0 : return MsgProcessingError;
811 : }
812 :
813 0 : __reply = new PPluginScriptableObject::Reply_HasMethod();
814 :
815 0 : Write(aHasMethod, __reply);
816 0 : (__reply)->set_routing_id(__id);
817 0 : (__reply)->set_rpc();
818 0 : (__reply)->set_reply();
819 :
820 0 : if (mozilla::ipc::LoggingEnabled()) {
821 0 : (static_cast<const PPluginScriptableObject::Reply_HasMethod*>(__reply))->Log("[PPluginScriptableObjectParent] Sending reply ", stderr);
822 : }
823 0 : return MsgProcessed;
824 : }
825 : case PPluginScriptableObject::Msg_Invoke__ID:
826 : {
827 0 : (const_cast<Message&>(__msg)).set_name("PPluginScriptableObject::Msg_Invoke");
828 0 : if (mozilla::ipc::LoggingEnabled()) {
829 0 : (static_cast<const PPluginScriptableObject::Msg_Invoke*>((&(__msg))))->Log("[PPluginScriptableObjectParent] Received ", stderr);
830 : }
831 :
832 0 : void* __iter = 0;
833 : PPluginIdentifierParent* aId;
834 0 : InfallibleTArray<Variant> aArgs;
835 :
836 0 : if ((!(Read((&(aId)), (&(__msg)), (&(__iter)), false)))) {
837 0 : FatalError("error deserializing (better message TODO)");
838 0 : return MsgValueError;
839 : }
840 0 : if ((!(Read((&(aArgs)), (&(__msg)), (&(__iter)))))) {
841 0 : FatalError("error deserializing (better message TODO)");
842 0 : return MsgValueError;
843 : }
844 0 : (__msg).EndRead(__iter);
845 0 : if ((!(PPluginScriptableObject::Transition(mState, Trigger(Trigger::Recv, PPluginScriptableObject::Msg_Invoke__ID), (&(mState)))))) {
846 0 : NS_WARNING("bad state transition!");
847 : }
848 0 : Variant aResult;
849 : bool aSuccess;
850 0 : int32 __id = mId;
851 0 : if ((!(AnswerInvoke(aId, aArgs, (&(aResult)), (&(aSuccess)))))) {
852 0 : return MsgProcessingError;
853 : }
854 :
855 0 : __reply = new PPluginScriptableObject::Reply_Invoke();
856 :
857 0 : Write(aResult, __reply);
858 0 : Write(aSuccess, __reply);
859 0 : (__reply)->set_routing_id(__id);
860 0 : (__reply)->set_rpc();
861 0 : (__reply)->set_reply();
862 :
863 0 : if (mozilla::ipc::LoggingEnabled()) {
864 0 : (static_cast<const PPluginScriptableObject::Reply_Invoke*>(__reply))->Log("[PPluginScriptableObjectParent] Sending reply ", stderr);
865 : }
866 0 : return MsgProcessed;
867 : }
868 : case PPluginScriptableObject::Msg_InvokeDefault__ID:
869 : {
870 0 : (const_cast<Message&>(__msg)).set_name("PPluginScriptableObject::Msg_InvokeDefault");
871 0 : if (mozilla::ipc::LoggingEnabled()) {
872 0 : (static_cast<const PPluginScriptableObject::Msg_InvokeDefault*>((&(__msg))))->Log("[PPluginScriptableObjectParent] Received ", stderr);
873 : }
874 :
875 0 : void* __iter = 0;
876 0 : InfallibleTArray<Variant> aArgs;
877 :
878 0 : if ((!(Read((&(aArgs)), (&(__msg)), (&(__iter)))))) {
879 0 : FatalError("error deserializing (better message TODO)");
880 0 : return MsgValueError;
881 : }
882 0 : (__msg).EndRead(__iter);
883 0 : if ((!(PPluginScriptableObject::Transition(mState, Trigger(Trigger::Recv, PPluginScriptableObject::Msg_InvokeDefault__ID), (&(mState)))))) {
884 0 : NS_WARNING("bad state transition!");
885 : }
886 0 : Variant aResult;
887 : bool aSuccess;
888 0 : int32 __id = mId;
889 0 : if ((!(AnswerInvokeDefault(aArgs, (&(aResult)), (&(aSuccess)))))) {
890 0 : return MsgProcessingError;
891 : }
892 :
893 0 : __reply = new PPluginScriptableObject::Reply_InvokeDefault();
894 :
895 0 : Write(aResult, __reply);
896 0 : Write(aSuccess, __reply);
897 0 : (__reply)->set_routing_id(__id);
898 0 : (__reply)->set_rpc();
899 0 : (__reply)->set_reply();
900 :
901 0 : if (mozilla::ipc::LoggingEnabled()) {
902 0 : (static_cast<const PPluginScriptableObject::Reply_InvokeDefault*>(__reply))->Log("[PPluginScriptableObjectParent] Sending reply ", stderr);
903 : }
904 0 : return MsgProcessed;
905 : }
906 : case PPluginScriptableObject::Msg_HasProperty__ID:
907 : {
908 0 : (const_cast<Message&>(__msg)).set_name("PPluginScriptableObject::Msg_HasProperty");
909 0 : if (mozilla::ipc::LoggingEnabled()) {
910 0 : (static_cast<const PPluginScriptableObject::Msg_HasProperty*>((&(__msg))))->Log("[PPluginScriptableObjectParent] Received ", stderr);
911 : }
912 :
913 0 : void* __iter = 0;
914 : PPluginIdentifierParent* aId;
915 :
916 0 : if ((!(Read((&(aId)), (&(__msg)), (&(__iter)), false)))) {
917 0 : FatalError("error deserializing (better message TODO)");
918 0 : return MsgValueError;
919 : }
920 0 : (__msg).EndRead(__iter);
921 0 : if ((!(PPluginScriptableObject::Transition(mState, Trigger(Trigger::Recv, PPluginScriptableObject::Msg_HasProperty__ID), (&(mState)))))) {
922 0 : NS_WARNING("bad state transition!");
923 : }
924 : bool aHasProperty;
925 0 : int32 __id = mId;
926 0 : if ((!(AnswerHasProperty(aId, (&(aHasProperty)))))) {
927 0 : return MsgProcessingError;
928 : }
929 :
930 0 : __reply = new PPluginScriptableObject::Reply_HasProperty();
931 :
932 0 : Write(aHasProperty, __reply);
933 0 : (__reply)->set_routing_id(__id);
934 0 : (__reply)->set_rpc();
935 0 : (__reply)->set_reply();
936 :
937 0 : if (mozilla::ipc::LoggingEnabled()) {
938 0 : (static_cast<const PPluginScriptableObject::Reply_HasProperty*>(__reply))->Log("[PPluginScriptableObjectParent] Sending reply ", stderr);
939 : }
940 0 : return MsgProcessed;
941 : }
942 : case PPluginScriptableObject::Msg_SetProperty__ID:
943 : {
944 0 : (const_cast<Message&>(__msg)).set_name("PPluginScriptableObject::Msg_SetProperty");
945 0 : if (mozilla::ipc::LoggingEnabled()) {
946 0 : (static_cast<const PPluginScriptableObject::Msg_SetProperty*>((&(__msg))))->Log("[PPluginScriptableObjectParent] Received ", stderr);
947 : }
948 :
949 0 : void* __iter = 0;
950 : PPluginIdentifierParent* aId;
951 0 : Variant aValue;
952 :
953 0 : if ((!(Read((&(aId)), (&(__msg)), (&(__iter)), false)))) {
954 0 : FatalError("error deserializing (better message TODO)");
955 0 : return MsgValueError;
956 : }
957 0 : if ((!(Read((&(aValue)), (&(__msg)), (&(__iter)))))) {
958 0 : FatalError("error deserializing (better message TODO)");
959 0 : return MsgValueError;
960 : }
961 0 : (__msg).EndRead(__iter);
962 0 : if ((!(PPluginScriptableObject::Transition(mState, Trigger(Trigger::Recv, PPluginScriptableObject::Msg_SetProperty__ID), (&(mState)))))) {
963 0 : NS_WARNING("bad state transition!");
964 : }
965 : bool aSuccess;
966 0 : int32 __id = mId;
967 0 : if ((!(AnswerSetProperty(aId, aValue, (&(aSuccess)))))) {
968 0 : return MsgProcessingError;
969 : }
970 :
971 0 : __reply = new PPluginScriptableObject::Reply_SetProperty();
972 :
973 0 : Write(aSuccess, __reply);
974 0 : (__reply)->set_routing_id(__id);
975 0 : (__reply)->set_rpc();
976 0 : (__reply)->set_reply();
977 :
978 0 : if (mozilla::ipc::LoggingEnabled()) {
979 0 : (static_cast<const PPluginScriptableObject::Reply_SetProperty*>(__reply))->Log("[PPluginScriptableObjectParent] Sending reply ", stderr);
980 : }
981 0 : return MsgProcessed;
982 : }
983 : case PPluginScriptableObject::Msg_RemoveProperty__ID:
984 : {
985 0 : (const_cast<Message&>(__msg)).set_name("PPluginScriptableObject::Msg_RemoveProperty");
986 0 : if (mozilla::ipc::LoggingEnabled()) {
987 0 : (static_cast<const PPluginScriptableObject::Msg_RemoveProperty*>((&(__msg))))->Log("[PPluginScriptableObjectParent] Received ", stderr);
988 : }
989 :
990 0 : void* __iter = 0;
991 : PPluginIdentifierParent* aId;
992 :
993 0 : if ((!(Read((&(aId)), (&(__msg)), (&(__iter)), false)))) {
994 0 : FatalError("error deserializing (better message TODO)");
995 0 : return MsgValueError;
996 : }
997 0 : (__msg).EndRead(__iter);
998 0 : if ((!(PPluginScriptableObject::Transition(mState, Trigger(Trigger::Recv, PPluginScriptableObject::Msg_RemoveProperty__ID), (&(mState)))))) {
999 0 : NS_WARNING("bad state transition!");
1000 : }
1001 : bool aSuccess;
1002 0 : int32 __id = mId;
1003 0 : if ((!(AnswerRemoveProperty(aId, (&(aSuccess)))))) {
1004 0 : return MsgProcessingError;
1005 : }
1006 :
1007 0 : __reply = new PPluginScriptableObject::Reply_RemoveProperty();
1008 :
1009 0 : Write(aSuccess, __reply);
1010 0 : (__reply)->set_routing_id(__id);
1011 0 : (__reply)->set_rpc();
1012 0 : (__reply)->set_reply();
1013 :
1014 0 : if (mozilla::ipc::LoggingEnabled()) {
1015 0 : (static_cast<const PPluginScriptableObject::Reply_RemoveProperty*>(__reply))->Log("[PPluginScriptableObjectParent] Sending reply ", stderr);
1016 : }
1017 0 : return MsgProcessed;
1018 : }
1019 : case PPluginScriptableObject::Msg_Enumerate__ID:
1020 : {
1021 0 : (const_cast<Message&>(__msg)).set_name("PPluginScriptableObject::Msg_Enumerate");
1022 0 : if (mozilla::ipc::LoggingEnabled()) {
1023 0 : (static_cast<const PPluginScriptableObject::Msg_Enumerate*>((&(__msg))))->Log("[PPluginScriptableObjectParent] Received ", stderr);
1024 : }
1025 :
1026 0 : if ((!(PPluginScriptableObject::Transition(mState, Trigger(Trigger::Recv, PPluginScriptableObject::Msg_Enumerate__ID), (&(mState)))))) {
1027 0 : NS_WARNING("bad state transition!");
1028 : }
1029 0 : InfallibleTArray<PPluginIdentifierParent*> aProperties;
1030 : bool aSuccess;
1031 0 : int32 __id = mId;
1032 0 : if ((!(AnswerEnumerate((&(aProperties)), (&(aSuccess)))))) {
1033 0 : return MsgProcessingError;
1034 : }
1035 :
1036 0 : __reply = new PPluginScriptableObject::Reply_Enumerate();
1037 :
1038 0 : Write(aProperties, __reply);
1039 0 : Write(aSuccess, __reply);
1040 0 : (__reply)->set_routing_id(__id);
1041 0 : (__reply)->set_rpc();
1042 0 : (__reply)->set_reply();
1043 :
1044 0 : if (mozilla::ipc::LoggingEnabled()) {
1045 0 : (static_cast<const PPluginScriptableObject::Reply_Enumerate*>(__reply))->Log("[PPluginScriptableObjectParent] Sending reply ", stderr);
1046 : }
1047 0 : return MsgProcessed;
1048 : }
1049 : case PPluginScriptableObject::Msg_Construct__ID:
1050 : {
1051 0 : (const_cast<Message&>(__msg)).set_name("PPluginScriptableObject::Msg_Construct");
1052 0 : if (mozilla::ipc::LoggingEnabled()) {
1053 0 : (static_cast<const PPluginScriptableObject::Msg_Construct*>((&(__msg))))->Log("[PPluginScriptableObjectParent] Received ", stderr);
1054 : }
1055 :
1056 0 : void* __iter = 0;
1057 0 : InfallibleTArray<Variant> aArgs;
1058 :
1059 0 : if ((!(Read((&(aArgs)), (&(__msg)), (&(__iter)))))) {
1060 0 : FatalError("error deserializing (better message TODO)");
1061 0 : return MsgValueError;
1062 : }
1063 0 : (__msg).EndRead(__iter);
1064 0 : if ((!(PPluginScriptableObject::Transition(mState, Trigger(Trigger::Recv, PPluginScriptableObject::Msg_Construct__ID), (&(mState)))))) {
1065 0 : NS_WARNING("bad state transition!");
1066 : }
1067 0 : Variant aResult;
1068 : bool aSuccess;
1069 0 : int32 __id = mId;
1070 0 : if ((!(AnswerConstruct(aArgs, (&(aResult)), (&(aSuccess)))))) {
1071 0 : return MsgProcessingError;
1072 : }
1073 :
1074 0 : __reply = new PPluginScriptableObject::Reply_Construct();
1075 :
1076 0 : Write(aResult, __reply);
1077 0 : Write(aSuccess, __reply);
1078 0 : (__reply)->set_routing_id(__id);
1079 0 : (__reply)->set_rpc();
1080 0 : (__reply)->set_reply();
1081 :
1082 0 : if (mozilla::ipc::LoggingEnabled()) {
1083 0 : (static_cast<const PPluginScriptableObject::Reply_Construct*>(__reply))->Log("[PPluginScriptableObjectParent] Sending reply ", stderr);
1084 : }
1085 0 : return MsgProcessed;
1086 : }
1087 : case PPluginScriptableObject::Msg_GetParentProperty__ID:
1088 : {
1089 0 : (const_cast<Message&>(__msg)).set_name("PPluginScriptableObject::Msg_GetParentProperty");
1090 0 : if (mozilla::ipc::LoggingEnabled()) {
1091 0 : (static_cast<const PPluginScriptableObject::Msg_GetParentProperty*>((&(__msg))))->Log("[PPluginScriptableObjectParent] Received ", stderr);
1092 : }
1093 :
1094 0 : void* __iter = 0;
1095 : PPluginIdentifierParent* aId;
1096 :
1097 0 : if ((!(Read((&(aId)), (&(__msg)), (&(__iter)), false)))) {
1098 0 : FatalError("error deserializing (better message TODO)");
1099 0 : return MsgValueError;
1100 : }
1101 0 : (__msg).EndRead(__iter);
1102 0 : if ((!(PPluginScriptableObject::Transition(mState, Trigger(Trigger::Recv, PPluginScriptableObject::Msg_GetParentProperty__ID), (&(mState)))))) {
1103 0 : NS_WARNING("bad state transition!");
1104 : }
1105 0 : Variant aResult;
1106 : bool aSuccess;
1107 0 : int32 __id = mId;
1108 0 : if ((!(AnswerGetParentProperty(aId, (&(aResult)), (&(aSuccess)))))) {
1109 0 : return MsgProcessingError;
1110 : }
1111 :
1112 0 : __reply = new PPluginScriptableObject::Reply_GetParentProperty();
1113 :
1114 0 : Write(aResult, __reply);
1115 0 : Write(aSuccess, __reply);
1116 0 : (__reply)->set_routing_id(__id);
1117 0 : (__reply)->set_rpc();
1118 0 : (__reply)->set_reply();
1119 :
1120 0 : if (mozilla::ipc::LoggingEnabled()) {
1121 0 : (static_cast<const PPluginScriptableObject::Reply_GetParentProperty*>(__reply))->Log("[PPluginScriptableObjectParent] Sending reply ", stderr);
1122 : }
1123 0 : return MsgProcessed;
1124 : }
1125 : default:
1126 : {
1127 0 : return MsgNotKnown;
1128 : }
1129 : }
1130 : }
1131 :
1132 : void
1133 0 : PPluginScriptableObjectParent::OnProcessingError(Result code)
1134 : {
1135 0 : NS_RUNTIMEABORT("`OnProcessingError' called on non-toplevel actor");
1136 0 : }
1137 :
1138 : bool
1139 0 : PPluginScriptableObjectParent::OnReplyTimeout()
1140 : {
1141 0 : NS_RUNTIMEABORT("`OnReplyTimeout' called on non-toplevel actor");
1142 0 : return false;
1143 : }
1144 :
1145 : void
1146 0 : PPluginScriptableObjectParent::OnChannelClose()
1147 : {
1148 0 : NS_RUNTIMEABORT("`OnClose' called on non-toplevel actor");
1149 0 : }
1150 :
1151 : void
1152 0 : PPluginScriptableObjectParent::OnChannelError()
1153 : {
1154 0 : NS_RUNTIMEABORT("`OnError' called on non-toplevel actor");
1155 0 : }
1156 :
1157 : void
1158 0 : PPluginScriptableObjectParent::OnChannelConnected(int32 pid)
1159 : {
1160 0 : NS_RUNTIMEABORT("'OnConnected' called on non-toplevel actor");
1161 0 : }
1162 :
1163 : bool
1164 0 : PPluginScriptableObjectParent::AllocShmem(
1165 : size_t aSize,
1166 : Shmem::SharedMemory::SharedMemoryType aType,
1167 : Shmem* aMem)
1168 : {
1169 : Shmem::id_t aId;
1170 0 : nsAutoPtr<Shmem::SharedMemory> rawmem(CreateSharedMemory(aSize, aType, false, (&(aId))));
1171 0 : if ((!(rawmem))) {
1172 0 : return false;
1173 : }
1174 :
1175 0 : (*(aMem)) = Shmem(Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead(), (rawmem).forget(), aId);
1176 0 : return true;
1177 : }
1178 :
1179 : bool
1180 0 : PPluginScriptableObjectParent::AllocUnsafeShmem(
1181 : size_t aSize,
1182 : Shmem::SharedMemory::SharedMemoryType aType,
1183 : Shmem* aMem)
1184 : {
1185 : Shmem::id_t aId;
1186 0 : nsAutoPtr<Shmem::SharedMemory> rawmem(CreateSharedMemory(aSize, aType, true, (&(aId))));
1187 0 : if ((!(rawmem))) {
1188 0 : return false;
1189 : }
1190 :
1191 0 : (*(aMem)) = Shmem(Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead(), (rawmem).forget(), aId);
1192 0 : return true;
1193 : }
1194 :
1195 : bool
1196 0 : PPluginScriptableObjectParent::AdoptShmem(
1197 : Shmem& aMem,
1198 : Shmem* aOutMem)
1199 : {
1200 0 : Shmem::SharedMemory* rawmem = (aMem).Segment(Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead());
1201 0 : if (((!(rawmem))) || (IsTrackingSharedMemory(rawmem))) {
1202 0 : NS_RUNTIMEABORT("bad Shmem");
1203 : }
1204 :
1205 : Shmem::id_t aId;
1206 0 : if ((!(AdoptSharedMemory(rawmem, (&(aId)))))) {
1207 0 : return false;
1208 : }
1209 :
1210 0 : (*(aOutMem)) = Shmem(Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead(), rawmem, aId);
1211 0 : return true;
1212 : }
1213 :
1214 : bool
1215 0 : PPluginScriptableObjectParent::DeallocShmem(Shmem& aMem)
1216 : {
1217 0 : bool ok = DestroySharedMemory(aMem);
1218 0 : (aMem).forget(Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead());
1219 0 : return ok;
1220 : }
1221 :
1222 : void
1223 0 : PPluginScriptableObjectParent::FatalError(const char* const msg) const
1224 : {
1225 : // Virtual method to prevent inlining.
1226 : // This give us better error reporting.
1227 : // See bug 589371
1228 :
1229 0 : NS_ERROR("IPDL error:");
1230 0 : NS_ERROR(msg);
1231 :
1232 0 : NS_ERROR("[PPluginScriptableObjectParent] killing child side as a result");
1233 :
1234 0 : if ((!(base::KillProcess(OtherProcess(), base::PROCESS_END_KILLED_BY_USER, false)))) {
1235 0 : NS_ERROR(" may have failed to kill child!");
1236 : }
1237 0 : }
1238 :
1239 : void
1240 0 : PPluginScriptableObjectParent::DestroySubtree(ActorDestroyReason why)
1241 : {
1242 : // Unregister from our manager.
1243 0 : Unregister(mId);
1244 0 : mId = 1;
1245 :
1246 : // Finally, destroy "us".
1247 0 : ActorDestroy(why);
1248 0 : }
1249 :
1250 : void
1251 0 : PPluginScriptableObjectParent::DeallocSubtree()
1252 : {
1253 0 : }
1254 :
1255 : void
1256 0 : PPluginScriptableObjectParent::Write(
1257 : const InfallibleTArray<Variant>& __v,
1258 : Message* __msg)
1259 : {
1260 0 : uint32 length = (__v).Length();
1261 0 : Write(length, __msg);
1262 :
1263 0 : for (uint32 i = 0; (i) < (length); (++(i))) {
1264 0 : Write(__v[i], __msg);
1265 : }
1266 0 : }
1267 :
1268 : bool
1269 0 : PPluginScriptableObjectParent::Read(
1270 : InfallibleTArray<Variant>* __v,
1271 : const Message* __msg,
1272 : void** __iter)
1273 : {
1274 0 : InfallibleTArray<Variant>& a = (*(__v));
1275 : uint32 length;
1276 0 : if ((!(Read((&(length)), __msg, __iter)))) {
1277 0 : return false;
1278 : }
1279 :
1280 0 : (__v)->SetLength(length);
1281 0 : for (uint32 i = 0; (i) < (length); (++(i))) {
1282 0 : if ((!(Read((&(a[i])), __msg, __iter)))) {
1283 0 : return false;
1284 : }
1285 : }
1286 0 : return true;
1287 : }
1288 :
1289 : void
1290 0 : PPluginScriptableObjectParent::Write(
1291 : PPluginScriptableObjectParent* __v,
1292 : Message* __msg,
1293 : bool __nullable)
1294 : {
1295 : int32 id;
1296 0 : if ((!(__v))) {
1297 0 : if ((!(__nullable))) {
1298 0 : NS_RUNTIMEABORT("NULL actor value passed to non-nullable param");
1299 : }
1300 0 : id = 0;
1301 : }
1302 : else {
1303 0 : id = (__v)->mId;
1304 0 : if ((1) == (id)) {
1305 0 : NS_RUNTIMEABORT("actor has been |delete|d");
1306 : }
1307 : }
1308 :
1309 0 : Write(id, __msg);
1310 0 : }
1311 :
1312 : bool
1313 0 : PPluginScriptableObjectParent::Read(
1314 : PPluginScriptableObjectParent** __v,
1315 : const Message* __msg,
1316 : void** __iter,
1317 : bool __nullable)
1318 : {
1319 : int32 id;
1320 0 : if ((!(Read((&(id)), __msg, __iter)))) {
1321 0 : return false;
1322 : }
1323 0 : if (((1) == (id)) || (((0) == (id)) && ((!(__nullable))))) {
1324 0 : return false;
1325 : }
1326 :
1327 0 : if ((0) == (id)) {
1328 0 : (*(__v)) = 0;
1329 : }
1330 : else {
1331 0 : (*(__v)) = static_cast<PPluginScriptableObjectParent*>(Lookup(id));
1332 0 : if ((!((*(__v))))) {
1333 0 : return false;
1334 : }
1335 : }
1336 0 : return true;
1337 : }
1338 :
1339 : void
1340 0 : PPluginScriptableObjectParent::Write(
1341 : const InfallibleTArray<PPluginIdentifierParent*>& __v,
1342 : Message* __msg)
1343 : {
1344 0 : uint32 length = (__v).Length();
1345 0 : Write(length, __msg);
1346 :
1347 0 : for (uint32 i = 0; (i) < (length); (++(i))) {
1348 0 : Write(__v[i], __msg, false);
1349 : }
1350 0 : }
1351 :
1352 : bool
1353 0 : PPluginScriptableObjectParent::Read(
1354 : InfallibleTArray<PPluginIdentifierParent*>* __v,
1355 : const Message* __msg,
1356 : void** __iter)
1357 : {
1358 0 : InfallibleTArray<PPluginIdentifierParent*>& a = (*(__v));
1359 : uint32 length;
1360 0 : if ((!(Read((&(length)), __msg, __iter)))) {
1361 0 : return false;
1362 : }
1363 :
1364 0 : (__v)->SetLength(length);
1365 0 : for (uint32 i = 0; (i) < (length); (++(i))) {
1366 0 : if ((!(Read((&(a[i])), __msg, __iter, false)))) {
1367 0 : return false;
1368 : }
1369 : }
1370 0 : return true;
1371 : }
1372 :
1373 : void
1374 0 : PPluginScriptableObjectParent::Write(
1375 : const Variant& __v,
1376 : Message* __msg)
1377 : {
1378 : typedef Variant __type;
1379 0 : Write(int((__v).type()), __msg);
1380 :
1381 0 : switch ((__v).type()) {
1382 : case __type::Tvoid_t:
1383 : {
1384 0 : Write((__v).get_void_t(), __msg);
1385 0 : return;
1386 : }
1387 : case __type::Tnull_t:
1388 : {
1389 0 : Write((__v).get_null_t(), __msg);
1390 0 : return;
1391 : }
1392 : case __type::Tbool:
1393 : {
1394 0 : Write((__v).get_bool(), __msg);
1395 0 : return;
1396 : }
1397 : case __type::Tint:
1398 : {
1399 0 : Write((__v).get_int(), __msg);
1400 0 : return;
1401 : }
1402 : case __type::Tdouble:
1403 : {
1404 0 : Write((__v).get_double(), __msg);
1405 0 : return;
1406 : }
1407 : case __type::TnsCString:
1408 : {
1409 0 : Write((__v).get_nsCString(), __msg);
1410 0 : return;
1411 : }
1412 : case __type::TPPluginScriptableObjectParent:
1413 : {
1414 0 : Write((__v).get_PPluginScriptableObjectParent(), __msg, true);
1415 0 : return;
1416 : }
1417 : case __type::TPPluginScriptableObjectChild:
1418 : {
1419 0 : NS_RUNTIMEABORT("wrong side!");
1420 0 : return;
1421 : }
1422 : default:
1423 : {
1424 0 : NS_RUNTIMEABORT("unknown union type");
1425 0 : return;
1426 : }
1427 : }
1428 : }
1429 :
1430 : bool
1431 0 : PPluginScriptableObjectParent::Read(
1432 : Variant* __v,
1433 : const Message* __msg,
1434 : void** __iter)
1435 : {
1436 : typedef Variant __type;
1437 : int type;
1438 0 : if ((!(Read((&(type)), __msg, __iter)))) {
1439 0 : return false;
1440 : }
1441 :
1442 0 : switch (type) {
1443 : case __type::Tvoid_t:
1444 : {
1445 0 : void_t tmp = void_t();
1446 0 : (*(__v)) = tmp;
1447 0 : return Read((&((__v)->get_void_t())), __msg, __iter);
1448 : }
1449 : case __type::Tnull_t:
1450 : {
1451 0 : null_t tmp = null_t();
1452 0 : (*(__v)) = tmp;
1453 0 : return Read((&((__v)->get_null_t())), __msg, __iter);
1454 : }
1455 : case __type::Tbool:
1456 : {
1457 0 : bool tmp = bool();
1458 0 : (*(__v)) = tmp;
1459 0 : return Read((&((__v)->get_bool())), __msg, __iter);
1460 : }
1461 : case __type::Tint:
1462 : {
1463 0 : int tmp = int();
1464 0 : (*(__v)) = tmp;
1465 0 : return Read((&((__v)->get_int())), __msg, __iter);
1466 : }
1467 : case __type::Tdouble:
1468 : {
1469 0 : double tmp = double();
1470 0 : (*(__v)) = tmp;
1471 0 : return Read((&((__v)->get_double())), __msg, __iter);
1472 : }
1473 : case __type::TnsCString:
1474 : {
1475 0 : nsCString tmp = nsCString();
1476 0 : (*(__v)) = tmp;
1477 0 : return Read((&((__v)->get_nsCString())), __msg, __iter);
1478 : }
1479 : case __type::TPPluginScriptableObjectParent:
1480 : {
1481 0 : return false;
1482 : }
1483 : case __type::TPPluginScriptableObjectChild:
1484 : {
1485 0 : PPluginScriptableObjectParent* tmp = static_cast<PPluginScriptableObjectParent*>(0);
1486 0 : (*(__v)) = tmp;
1487 0 : return Read((&((__v)->get_PPluginScriptableObjectParent())), __msg, __iter, true);
1488 : }
1489 : default:
1490 : {
1491 0 : return false;
1492 : }
1493 : }
1494 : }
1495 :
1496 : void
1497 0 : PPluginScriptableObjectParent::Write(
1498 : PPluginIdentifierParent* __v,
1499 : Message* __msg,
1500 : bool __nullable)
1501 : {
1502 : int32 id;
1503 0 : if ((!(__v))) {
1504 0 : if ((!(__nullable))) {
1505 0 : NS_RUNTIMEABORT("NULL actor value passed to non-nullable param");
1506 : }
1507 0 : id = 0;
1508 : }
1509 : else {
1510 0 : id = (__v)->mId;
1511 0 : if ((1) == (id)) {
1512 0 : NS_RUNTIMEABORT("actor has been |delete|d");
1513 : }
1514 : }
1515 :
1516 0 : Write(id, __msg);
1517 0 : }
1518 :
1519 : bool
1520 0 : PPluginScriptableObjectParent::Read(
1521 : PPluginIdentifierParent** __v,
1522 : const Message* __msg,
1523 : void** __iter,
1524 : bool __nullable)
1525 : {
1526 : int32 id;
1527 0 : if ((!(Read((&(id)), __msg, __iter)))) {
1528 0 : return false;
1529 : }
1530 0 : if (((1) == (id)) || (((0) == (id)) && ((!(__nullable))))) {
1531 0 : return false;
1532 : }
1533 :
1534 0 : if ((0) == (id)) {
1535 0 : (*(__v)) = 0;
1536 : }
1537 : else {
1538 0 : (*(__v)) = static_cast<PPluginIdentifierParent*>(Lookup(id));
1539 0 : if ((!((*(__v))))) {
1540 0 : return false;
1541 : }
1542 : }
1543 0 : return true;
1544 : }
1545 :
1546 :
1547 :
1548 : } // namespace plugins
1549 : } // namespace mozilla
|