1#![warn(clippy::all)]
4#![allow(unused_parens, unused_mut, unused_imports, nonstandard_style)]
5
6use bitflags::bitflags;
7use fidl::client::QueryResponseFut;
8use fidl::encoding::{MessageBufFor, ProxyChannelBox, ResourceDialect};
9use fidl::endpoints::{ControlHandle as _, Responder as _};
10pub use fidl_fuchsia_factory_common::*;
11use futures::future::{self, MaybeDone, TryFutureExt};
12use zx_status;
13
14#[derive(Debug, Eq, Hash, Ord, PartialEq, PartialOrd)]
15pub struct FactoryStoreProviderGetFactoryStoreRequest {
16 pub dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
17}
18
19impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect>
20 for FactoryStoreProviderGetFactoryStoreRequest
21{
22}
23
24#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Hash)]
25pub struct AlphaFactoryStoreProviderMarker;
26
27impl fidl::endpoints::ProtocolMarker for AlphaFactoryStoreProviderMarker {
28 type Proxy = AlphaFactoryStoreProviderProxy;
29 type RequestStream = AlphaFactoryStoreProviderRequestStream;
30 #[cfg(target_os = "fuchsia")]
31 type SynchronousProxy = AlphaFactoryStoreProviderSynchronousProxy;
32
33 const DEBUG_NAME: &'static str = "fuchsia.factory.AlphaFactoryStoreProvider";
34}
35impl fidl::endpoints::DiscoverableProtocolMarker for AlphaFactoryStoreProviderMarker {}
36
37pub trait AlphaFactoryStoreProviderProxyInterface: Send + Sync {
38 fn r#get_factory_store(
39 &self,
40 dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
41 ) -> Result<(), fidl::Error>;
42}
43#[derive(Debug)]
44#[cfg(target_os = "fuchsia")]
45pub struct AlphaFactoryStoreProviderSynchronousProxy {
46 client: fidl::client::sync::Client,
47}
48
49#[cfg(target_os = "fuchsia")]
50impl fidl::endpoints::SynchronousProxy for AlphaFactoryStoreProviderSynchronousProxy {
51 type Proxy = AlphaFactoryStoreProviderProxy;
52 type Protocol = AlphaFactoryStoreProviderMarker;
53
54 fn from_channel(inner: fidl::Channel) -> Self {
55 Self::new(inner)
56 }
57
58 fn into_channel(self) -> fidl::Channel {
59 self.client.into_channel()
60 }
61
62 fn as_channel(&self) -> &fidl::Channel {
63 self.client.as_channel()
64 }
65}
66
67#[cfg(target_os = "fuchsia")]
68impl AlphaFactoryStoreProviderSynchronousProxy {
69 pub fn new(channel: fidl::Channel) -> Self {
70 Self { client: fidl::client::sync::Client::new(channel) }
71 }
72
73 pub fn into_channel(self) -> fidl::Channel {
74 self.client.into_channel()
75 }
76
77 pub fn wait_for_event(
80 &self,
81 deadline: zx::MonotonicInstant,
82 ) -> Result<AlphaFactoryStoreProviderEvent, fidl::Error> {
83 AlphaFactoryStoreProviderEvent::decode(
84 self.client.wait_for_event::<AlphaFactoryStoreProviderMarker>(deadline)?,
85 )
86 }
87
88 pub fn r#get_factory_store(
89 &self,
90 mut dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
91 ) -> Result<(), fidl::Error> {
92 self.client.send::<FactoryStoreProviderGetFactoryStoreRequest>(
93 (dir,),
94 0x21fa8e8bc0e1209e,
95 fidl::encoding::DynamicFlags::empty(),
96 )
97 }
98}
99
100#[cfg(target_os = "fuchsia")]
101impl From<AlphaFactoryStoreProviderSynchronousProxy> for zx::NullableHandle {
102 fn from(value: AlphaFactoryStoreProviderSynchronousProxy) -> Self {
103 value.into_channel().into()
104 }
105}
106
107#[cfg(target_os = "fuchsia")]
108impl From<fidl::Channel> for AlphaFactoryStoreProviderSynchronousProxy {
109 fn from(value: fidl::Channel) -> Self {
110 Self::new(value)
111 }
112}
113
114#[cfg(target_os = "fuchsia")]
115impl fidl::endpoints::FromClient for AlphaFactoryStoreProviderSynchronousProxy {
116 type Protocol = AlphaFactoryStoreProviderMarker;
117
118 fn from_client(value: fidl::endpoints::ClientEnd<AlphaFactoryStoreProviderMarker>) -> Self {
119 Self::new(value.into_channel())
120 }
121}
122
123#[derive(Debug, Clone)]
124pub struct AlphaFactoryStoreProviderProxy {
125 client: fidl::client::Client<fidl::encoding::DefaultFuchsiaResourceDialect>,
126}
127
128impl fidl::endpoints::Proxy for AlphaFactoryStoreProviderProxy {
129 type Protocol = AlphaFactoryStoreProviderMarker;
130
131 fn from_channel(inner: ::fidl::AsyncChannel) -> Self {
132 Self::new(inner)
133 }
134
135 fn into_channel(self) -> Result<::fidl::AsyncChannel, Self> {
136 self.client.into_channel().map_err(|client| Self { client })
137 }
138
139 fn as_channel(&self) -> &::fidl::AsyncChannel {
140 self.client.as_channel()
141 }
142}
143
144impl AlphaFactoryStoreProviderProxy {
145 pub fn new(channel: ::fidl::AsyncChannel) -> Self {
147 let protocol_name =
148 <AlphaFactoryStoreProviderMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME;
149 Self { client: fidl::client::Client::new(channel, protocol_name) }
150 }
151
152 pub fn take_event_stream(&self) -> AlphaFactoryStoreProviderEventStream {
158 AlphaFactoryStoreProviderEventStream { event_receiver: self.client.take_event_receiver() }
159 }
160
161 pub fn r#get_factory_store(
162 &self,
163 mut dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
164 ) -> Result<(), fidl::Error> {
165 AlphaFactoryStoreProviderProxyInterface::r#get_factory_store(self, dir)
166 }
167}
168
169impl AlphaFactoryStoreProviderProxyInterface for AlphaFactoryStoreProviderProxy {
170 fn r#get_factory_store(
171 &self,
172 mut dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
173 ) -> Result<(), fidl::Error> {
174 self.client.send::<FactoryStoreProviderGetFactoryStoreRequest>(
175 (dir,),
176 0x21fa8e8bc0e1209e,
177 fidl::encoding::DynamicFlags::empty(),
178 )
179 }
180}
181
182pub struct AlphaFactoryStoreProviderEventStream {
183 event_receiver: fidl::client::EventReceiver<fidl::encoding::DefaultFuchsiaResourceDialect>,
184}
185
186impl std::marker::Unpin for AlphaFactoryStoreProviderEventStream {}
187
188impl futures::stream::FusedStream for AlphaFactoryStoreProviderEventStream {
189 fn is_terminated(&self) -> bool {
190 self.event_receiver.is_terminated()
191 }
192}
193
194impl futures::Stream for AlphaFactoryStoreProviderEventStream {
195 type Item = Result<AlphaFactoryStoreProviderEvent, fidl::Error>;
196
197 fn poll_next(
198 mut self: std::pin::Pin<&mut Self>,
199 cx: &mut std::task::Context<'_>,
200 ) -> std::task::Poll<Option<Self::Item>> {
201 match futures::ready!(futures::stream::StreamExt::poll_next_unpin(
202 &mut self.event_receiver,
203 cx
204 )?) {
205 Some(buf) => std::task::Poll::Ready(Some(AlphaFactoryStoreProviderEvent::decode(buf))),
206 None => std::task::Poll::Ready(None),
207 }
208 }
209}
210
211#[derive(Debug)]
212pub enum AlphaFactoryStoreProviderEvent {}
213
214impl AlphaFactoryStoreProviderEvent {
215 fn decode(
217 mut buf: <fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc,
218 ) -> Result<AlphaFactoryStoreProviderEvent, fidl::Error> {
219 let (bytes, _handles) = buf.split_mut();
220 let (tx_header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
221 debug_assert_eq!(tx_header.tx_id, 0);
222 match tx_header.ordinal {
223 _ => Err(fidl::Error::UnknownOrdinal {
224 ordinal: tx_header.ordinal,
225 protocol_name:
226 <AlphaFactoryStoreProviderMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
227 }),
228 }
229 }
230}
231
232pub struct AlphaFactoryStoreProviderRequestStream {
234 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
235 is_terminated: bool,
236}
237
238impl std::marker::Unpin for AlphaFactoryStoreProviderRequestStream {}
239
240impl futures::stream::FusedStream for AlphaFactoryStoreProviderRequestStream {
241 fn is_terminated(&self) -> bool {
242 self.is_terminated
243 }
244}
245
246impl fidl::endpoints::RequestStream for AlphaFactoryStoreProviderRequestStream {
247 type Protocol = AlphaFactoryStoreProviderMarker;
248 type ControlHandle = AlphaFactoryStoreProviderControlHandle;
249
250 fn from_channel(channel: ::fidl::AsyncChannel) -> Self {
251 Self { inner: std::sync::Arc::new(fidl::ServeInner::new(channel)), is_terminated: false }
252 }
253
254 fn control_handle(&self) -> Self::ControlHandle {
255 AlphaFactoryStoreProviderControlHandle { inner: self.inner.clone() }
256 }
257
258 fn into_inner(
259 self,
260 ) -> (::std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>, bool)
261 {
262 (self.inner, self.is_terminated)
263 }
264
265 fn from_inner(
266 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
267 is_terminated: bool,
268 ) -> Self {
269 Self { inner, is_terminated }
270 }
271}
272
273impl futures::Stream for AlphaFactoryStoreProviderRequestStream {
274 type Item = Result<AlphaFactoryStoreProviderRequest, fidl::Error>;
275
276 fn poll_next(
277 mut self: std::pin::Pin<&mut Self>,
278 cx: &mut std::task::Context<'_>,
279 ) -> std::task::Poll<Option<Self::Item>> {
280 let this = &mut *self;
281 if this.inner.check_shutdown(cx) {
282 this.is_terminated = true;
283 return std::task::Poll::Ready(None);
284 }
285 if this.is_terminated {
286 panic!("polled AlphaFactoryStoreProviderRequestStream after completion");
287 }
288 fidl::encoding::with_tls_decode_buf::<_, fidl::encoding::DefaultFuchsiaResourceDialect>(
289 |bytes, handles| {
290 match this.inner.channel().read_etc(cx, bytes, handles) {
291 std::task::Poll::Ready(Ok(())) => {}
292 std::task::Poll::Pending => return std::task::Poll::Pending,
293 std::task::Poll::Ready(Err(zx_status::Status::PEER_CLOSED)) => {
294 this.is_terminated = true;
295 return std::task::Poll::Ready(None);
296 }
297 std::task::Poll::Ready(Err(e)) => {
298 return std::task::Poll::Ready(Some(Err(fidl::Error::ServerRequestRead(
299 e.into(),
300 ))));
301 }
302 }
303
304 let (header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
306
307 std::task::Poll::Ready(Some(match header.ordinal {
308 0x21fa8e8bc0e1209e => {
309 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
310 let mut req = fidl::new_empty!(FactoryStoreProviderGetFactoryStoreRequest, fidl::encoding::DefaultFuchsiaResourceDialect);
311 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<FactoryStoreProviderGetFactoryStoreRequest>(&header, _body_bytes, handles, &mut req)?;
312 let control_handle = AlphaFactoryStoreProviderControlHandle {
313 inner: this.inner.clone(),
314 };
315 Ok(AlphaFactoryStoreProviderRequest::GetFactoryStore {dir: req.dir,
316
317 control_handle,
318 })
319 }
320 _ => Err(fidl::Error::UnknownOrdinal {
321 ordinal: header.ordinal,
322 protocol_name: <AlphaFactoryStoreProviderMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
323 }),
324 }))
325 },
326 )
327 }
328}
329
330#[derive(Debug)]
331pub enum AlphaFactoryStoreProviderRequest {
332 GetFactoryStore {
333 dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
334 control_handle: AlphaFactoryStoreProviderControlHandle,
335 },
336}
337
338impl AlphaFactoryStoreProviderRequest {
339 #[allow(irrefutable_let_patterns)]
340 pub fn into_get_factory_store(
341 self,
342 ) -> Option<(
343 fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
344 AlphaFactoryStoreProviderControlHandle,
345 )> {
346 if let AlphaFactoryStoreProviderRequest::GetFactoryStore { dir, control_handle } = self {
347 Some((dir, control_handle))
348 } else {
349 None
350 }
351 }
352
353 pub fn method_name(&self) -> &'static str {
355 match *self {
356 AlphaFactoryStoreProviderRequest::GetFactoryStore { .. } => "get_factory_store",
357 }
358 }
359}
360
361#[derive(Debug, Clone)]
362pub struct AlphaFactoryStoreProviderControlHandle {
363 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
364}
365
366impl AlphaFactoryStoreProviderControlHandle {
367 pub fn shutdown_with_epitaph(&self, status: impl Into<fidl::Epitaph>) {
368 self.inner.shutdown_with_epitaph(status.into())
369 }
370}
371
372impl fidl::endpoints::ControlHandle for AlphaFactoryStoreProviderControlHandle {
373 fn shutdown(&self) {
374 self.inner.shutdown()
375 }
376
377 fn shutdown_with_epitaph(&self, status: fidl::Epitaph) {
378 self.inner.shutdown_with_epitaph(status)
379 }
380
381 fn is_closed(&self) -> bool {
382 self.inner.channel().is_closed()
383 }
384 fn on_closed(&self) -> fidl::OnSignalsRef<'_> {
385 self.inner.channel().on_closed()
386 }
387
388 #[cfg(target_os = "fuchsia")]
389 fn signal_peer(
390 &self,
391 clear_mask: zx::Signals,
392 set_mask: zx::Signals,
393 ) -> Result<(), zx_status::Status> {
394 use fidl::Peered;
395 self.inner.channel().signal_peer(clear_mask, set_mask)
396 }
397}
398
399impl AlphaFactoryStoreProviderControlHandle {}
400
401#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Hash)]
402pub struct CastCredentialsFactoryStoreProviderMarker;
403
404impl fidl::endpoints::ProtocolMarker for CastCredentialsFactoryStoreProviderMarker {
405 type Proxy = CastCredentialsFactoryStoreProviderProxy;
406 type RequestStream = CastCredentialsFactoryStoreProviderRequestStream;
407 #[cfg(target_os = "fuchsia")]
408 type SynchronousProxy = CastCredentialsFactoryStoreProviderSynchronousProxy;
409
410 const DEBUG_NAME: &'static str = "fuchsia.factory.CastCredentialsFactoryStoreProvider";
411}
412impl fidl::endpoints::DiscoverableProtocolMarker for CastCredentialsFactoryStoreProviderMarker {}
413
414pub trait CastCredentialsFactoryStoreProviderProxyInterface: Send + Sync {
415 fn r#get_factory_store(
416 &self,
417 dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
418 ) -> Result<(), fidl::Error>;
419}
420#[derive(Debug)]
421#[cfg(target_os = "fuchsia")]
422pub struct CastCredentialsFactoryStoreProviderSynchronousProxy {
423 client: fidl::client::sync::Client,
424}
425
426#[cfg(target_os = "fuchsia")]
427impl fidl::endpoints::SynchronousProxy for CastCredentialsFactoryStoreProviderSynchronousProxy {
428 type Proxy = CastCredentialsFactoryStoreProviderProxy;
429 type Protocol = CastCredentialsFactoryStoreProviderMarker;
430
431 fn from_channel(inner: fidl::Channel) -> Self {
432 Self::new(inner)
433 }
434
435 fn into_channel(self) -> fidl::Channel {
436 self.client.into_channel()
437 }
438
439 fn as_channel(&self) -> &fidl::Channel {
440 self.client.as_channel()
441 }
442}
443
444#[cfg(target_os = "fuchsia")]
445impl CastCredentialsFactoryStoreProviderSynchronousProxy {
446 pub fn new(channel: fidl::Channel) -> Self {
447 Self { client: fidl::client::sync::Client::new(channel) }
448 }
449
450 pub fn into_channel(self) -> fidl::Channel {
451 self.client.into_channel()
452 }
453
454 pub fn wait_for_event(
457 &self,
458 deadline: zx::MonotonicInstant,
459 ) -> Result<CastCredentialsFactoryStoreProviderEvent, fidl::Error> {
460 CastCredentialsFactoryStoreProviderEvent::decode(
461 self.client.wait_for_event::<CastCredentialsFactoryStoreProviderMarker>(deadline)?,
462 )
463 }
464
465 pub fn r#get_factory_store(
466 &self,
467 mut dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
468 ) -> Result<(), fidl::Error> {
469 self.client.send::<FactoryStoreProviderGetFactoryStoreRequest>(
470 (dir,),
471 0x21fa8e8bc0e1209e,
472 fidl::encoding::DynamicFlags::empty(),
473 )
474 }
475}
476
477#[cfg(target_os = "fuchsia")]
478impl From<CastCredentialsFactoryStoreProviderSynchronousProxy> for zx::NullableHandle {
479 fn from(value: CastCredentialsFactoryStoreProviderSynchronousProxy) -> Self {
480 value.into_channel().into()
481 }
482}
483
484#[cfg(target_os = "fuchsia")]
485impl From<fidl::Channel> for CastCredentialsFactoryStoreProviderSynchronousProxy {
486 fn from(value: fidl::Channel) -> Self {
487 Self::new(value)
488 }
489}
490
491#[cfg(target_os = "fuchsia")]
492impl fidl::endpoints::FromClient for CastCredentialsFactoryStoreProviderSynchronousProxy {
493 type Protocol = CastCredentialsFactoryStoreProviderMarker;
494
495 fn from_client(
496 value: fidl::endpoints::ClientEnd<CastCredentialsFactoryStoreProviderMarker>,
497 ) -> Self {
498 Self::new(value.into_channel())
499 }
500}
501
502#[derive(Debug, Clone)]
503pub struct CastCredentialsFactoryStoreProviderProxy {
504 client: fidl::client::Client<fidl::encoding::DefaultFuchsiaResourceDialect>,
505}
506
507impl fidl::endpoints::Proxy for CastCredentialsFactoryStoreProviderProxy {
508 type Protocol = CastCredentialsFactoryStoreProviderMarker;
509
510 fn from_channel(inner: ::fidl::AsyncChannel) -> Self {
511 Self::new(inner)
512 }
513
514 fn into_channel(self) -> Result<::fidl::AsyncChannel, Self> {
515 self.client.into_channel().map_err(|client| Self { client })
516 }
517
518 fn as_channel(&self) -> &::fidl::AsyncChannel {
519 self.client.as_channel()
520 }
521}
522
523impl CastCredentialsFactoryStoreProviderProxy {
524 pub fn new(channel: ::fidl::AsyncChannel) -> Self {
526 let protocol_name = <CastCredentialsFactoryStoreProviderMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME;
527 Self { client: fidl::client::Client::new(channel, protocol_name) }
528 }
529
530 pub fn take_event_stream(&self) -> CastCredentialsFactoryStoreProviderEventStream {
536 CastCredentialsFactoryStoreProviderEventStream {
537 event_receiver: self.client.take_event_receiver(),
538 }
539 }
540
541 pub fn r#get_factory_store(
542 &self,
543 mut dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
544 ) -> Result<(), fidl::Error> {
545 CastCredentialsFactoryStoreProviderProxyInterface::r#get_factory_store(self, dir)
546 }
547}
548
549impl CastCredentialsFactoryStoreProviderProxyInterface
550 for CastCredentialsFactoryStoreProviderProxy
551{
552 fn r#get_factory_store(
553 &self,
554 mut dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
555 ) -> Result<(), fidl::Error> {
556 self.client.send::<FactoryStoreProviderGetFactoryStoreRequest>(
557 (dir,),
558 0x21fa8e8bc0e1209e,
559 fidl::encoding::DynamicFlags::empty(),
560 )
561 }
562}
563
564pub struct CastCredentialsFactoryStoreProviderEventStream {
565 event_receiver: fidl::client::EventReceiver<fidl::encoding::DefaultFuchsiaResourceDialect>,
566}
567
568impl std::marker::Unpin for CastCredentialsFactoryStoreProviderEventStream {}
569
570impl futures::stream::FusedStream for CastCredentialsFactoryStoreProviderEventStream {
571 fn is_terminated(&self) -> bool {
572 self.event_receiver.is_terminated()
573 }
574}
575
576impl futures::Stream for CastCredentialsFactoryStoreProviderEventStream {
577 type Item = Result<CastCredentialsFactoryStoreProviderEvent, fidl::Error>;
578
579 fn poll_next(
580 mut self: std::pin::Pin<&mut Self>,
581 cx: &mut std::task::Context<'_>,
582 ) -> std::task::Poll<Option<Self::Item>> {
583 match futures::ready!(futures::stream::StreamExt::poll_next_unpin(
584 &mut self.event_receiver,
585 cx
586 )?) {
587 Some(buf) => {
588 std::task::Poll::Ready(Some(CastCredentialsFactoryStoreProviderEvent::decode(buf)))
589 }
590 None => std::task::Poll::Ready(None),
591 }
592 }
593}
594
595#[derive(Debug)]
596pub enum CastCredentialsFactoryStoreProviderEvent {}
597
598impl CastCredentialsFactoryStoreProviderEvent {
599 fn decode(
601 mut buf: <fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc,
602 ) -> Result<CastCredentialsFactoryStoreProviderEvent, fidl::Error> {
603 let (bytes, _handles) = buf.split_mut();
604 let (tx_header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
605 debug_assert_eq!(tx_header.tx_id, 0);
606 match tx_header.ordinal {
607 _ => Err(fidl::Error::UnknownOrdinal {
608 ordinal: tx_header.ordinal,
609 protocol_name: <CastCredentialsFactoryStoreProviderMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
610 })
611 }
612 }
613}
614
615pub struct CastCredentialsFactoryStoreProviderRequestStream {
617 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
618 is_terminated: bool,
619}
620
621impl std::marker::Unpin for CastCredentialsFactoryStoreProviderRequestStream {}
622
623impl futures::stream::FusedStream for CastCredentialsFactoryStoreProviderRequestStream {
624 fn is_terminated(&self) -> bool {
625 self.is_terminated
626 }
627}
628
629impl fidl::endpoints::RequestStream for CastCredentialsFactoryStoreProviderRequestStream {
630 type Protocol = CastCredentialsFactoryStoreProviderMarker;
631 type ControlHandle = CastCredentialsFactoryStoreProviderControlHandle;
632
633 fn from_channel(channel: ::fidl::AsyncChannel) -> Self {
634 Self { inner: std::sync::Arc::new(fidl::ServeInner::new(channel)), is_terminated: false }
635 }
636
637 fn control_handle(&self) -> Self::ControlHandle {
638 CastCredentialsFactoryStoreProviderControlHandle { inner: self.inner.clone() }
639 }
640
641 fn into_inner(
642 self,
643 ) -> (::std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>, bool)
644 {
645 (self.inner, self.is_terminated)
646 }
647
648 fn from_inner(
649 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
650 is_terminated: bool,
651 ) -> Self {
652 Self { inner, is_terminated }
653 }
654}
655
656impl futures::Stream for CastCredentialsFactoryStoreProviderRequestStream {
657 type Item = Result<CastCredentialsFactoryStoreProviderRequest, fidl::Error>;
658
659 fn poll_next(
660 mut self: std::pin::Pin<&mut Self>,
661 cx: &mut std::task::Context<'_>,
662 ) -> std::task::Poll<Option<Self::Item>> {
663 let this = &mut *self;
664 if this.inner.check_shutdown(cx) {
665 this.is_terminated = true;
666 return std::task::Poll::Ready(None);
667 }
668 if this.is_terminated {
669 panic!("polled CastCredentialsFactoryStoreProviderRequestStream after completion");
670 }
671 fidl::encoding::with_tls_decode_buf::<_, fidl::encoding::DefaultFuchsiaResourceDialect>(
672 |bytes, handles| {
673 match this.inner.channel().read_etc(cx, bytes, handles) {
674 std::task::Poll::Ready(Ok(())) => {}
675 std::task::Poll::Pending => return std::task::Poll::Pending,
676 std::task::Poll::Ready(Err(zx_status::Status::PEER_CLOSED)) => {
677 this.is_terminated = true;
678 return std::task::Poll::Ready(None);
679 }
680 std::task::Poll::Ready(Err(e)) => {
681 return std::task::Poll::Ready(Some(Err(fidl::Error::ServerRequestRead(
682 e.into(),
683 ))));
684 }
685 }
686
687 let (header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
689
690 std::task::Poll::Ready(Some(match header.ordinal {
691 0x21fa8e8bc0e1209e => {
692 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
693 let mut req = fidl::new_empty!(FactoryStoreProviderGetFactoryStoreRequest, fidl::encoding::DefaultFuchsiaResourceDialect);
694 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<FactoryStoreProviderGetFactoryStoreRequest>(&header, _body_bytes, handles, &mut req)?;
695 let control_handle = CastCredentialsFactoryStoreProviderControlHandle {
696 inner: this.inner.clone(),
697 };
698 Ok(CastCredentialsFactoryStoreProviderRequest::GetFactoryStore {dir: req.dir,
699
700 control_handle,
701 })
702 }
703 _ => Err(fidl::Error::UnknownOrdinal {
704 ordinal: header.ordinal,
705 protocol_name: <CastCredentialsFactoryStoreProviderMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
706 }),
707 }))
708 },
709 )
710 }
711}
712
713#[derive(Debug)]
717pub enum CastCredentialsFactoryStoreProviderRequest {
718 GetFactoryStore {
719 dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
720 control_handle: CastCredentialsFactoryStoreProviderControlHandle,
721 },
722}
723
724impl CastCredentialsFactoryStoreProviderRequest {
725 #[allow(irrefutable_let_patterns)]
726 pub fn into_get_factory_store(
727 self,
728 ) -> Option<(
729 fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
730 CastCredentialsFactoryStoreProviderControlHandle,
731 )> {
732 if let CastCredentialsFactoryStoreProviderRequest::GetFactoryStore { dir, control_handle } =
733 self
734 {
735 Some((dir, control_handle))
736 } else {
737 None
738 }
739 }
740
741 pub fn method_name(&self) -> &'static str {
743 match *self {
744 CastCredentialsFactoryStoreProviderRequest::GetFactoryStore { .. } => {
745 "get_factory_store"
746 }
747 }
748 }
749}
750
751#[derive(Debug, Clone)]
752pub struct CastCredentialsFactoryStoreProviderControlHandle {
753 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
754}
755
756impl CastCredentialsFactoryStoreProviderControlHandle {
757 pub fn shutdown_with_epitaph(&self, status: impl Into<fidl::Epitaph>) {
758 self.inner.shutdown_with_epitaph(status.into())
759 }
760}
761
762impl fidl::endpoints::ControlHandle for CastCredentialsFactoryStoreProviderControlHandle {
763 fn shutdown(&self) {
764 self.inner.shutdown()
765 }
766
767 fn shutdown_with_epitaph(&self, status: fidl::Epitaph) {
768 self.inner.shutdown_with_epitaph(status)
769 }
770
771 fn is_closed(&self) -> bool {
772 self.inner.channel().is_closed()
773 }
774 fn on_closed(&self) -> fidl::OnSignalsRef<'_> {
775 self.inner.channel().on_closed()
776 }
777
778 #[cfg(target_os = "fuchsia")]
779 fn signal_peer(
780 &self,
781 clear_mask: zx::Signals,
782 set_mask: zx::Signals,
783 ) -> Result<(), zx_status::Status> {
784 use fidl::Peered;
785 self.inner.channel().signal_peer(clear_mask, set_mask)
786 }
787}
788
789impl CastCredentialsFactoryStoreProviderControlHandle {}
790
791#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Hash)]
792pub struct FactoryStoreProviderMarker;
793
794impl fidl::endpoints::ProtocolMarker for FactoryStoreProviderMarker {
795 type Proxy = FactoryStoreProviderProxy;
796 type RequestStream = FactoryStoreProviderRequestStream;
797 #[cfg(target_os = "fuchsia")]
798 type SynchronousProxy = FactoryStoreProviderSynchronousProxy;
799
800 const DEBUG_NAME: &'static str = "(anonymous) FactoryStoreProvider";
801}
802
803pub trait FactoryStoreProviderProxyInterface: Send + Sync {
804 fn r#get_factory_store(
805 &self,
806 dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
807 ) -> Result<(), fidl::Error>;
808}
809#[derive(Debug)]
810#[cfg(target_os = "fuchsia")]
811pub struct FactoryStoreProviderSynchronousProxy {
812 client: fidl::client::sync::Client,
813}
814
815#[cfg(target_os = "fuchsia")]
816impl fidl::endpoints::SynchronousProxy for FactoryStoreProviderSynchronousProxy {
817 type Proxy = FactoryStoreProviderProxy;
818 type Protocol = FactoryStoreProviderMarker;
819
820 fn from_channel(inner: fidl::Channel) -> Self {
821 Self::new(inner)
822 }
823
824 fn into_channel(self) -> fidl::Channel {
825 self.client.into_channel()
826 }
827
828 fn as_channel(&self) -> &fidl::Channel {
829 self.client.as_channel()
830 }
831}
832
833#[cfg(target_os = "fuchsia")]
834impl FactoryStoreProviderSynchronousProxy {
835 pub fn new(channel: fidl::Channel) -> Self {
836 Self { client: fidl::client::sync::Client::new(channel) }
837 }
838
839 pub fn into_channel(self) -> fidl::Channel {
840 self.client.into_channel()
841 }
842
843 pub fn wait_for_event(
846 &self,
847 deadline: zx::MonotonicInstant,
848 ) -> Result<FactoryStoreProviderEvent, fidl::Error> {
849 FactoryStoreProviderEvent::decode(
850 self.client.wait_for_event::<FactoryStoreProviderMarker>(deadline)?,
851 )
852 }
853
854 pub fn r#get_factory_store(
855 &self,
856 mut dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
857 ) -> Result<(), fidl::Error> {
858 self.client.send::<FactoryStoreProviderGetFactoryStoreRequest>(
859 (dir,),
860 0x21fa8e8bc0e1209e,
861 fidl::encoding::DynamicFlags::empty(),
862 )
863 }
864}
865
866#[cfg(target_os = "fuchsia")]
867impl From<FactoryStoreProviderSynchronousProxy> for zx::NullableHandle {
868 fn from(value: FactoryStoreProviderSynchronousProxy) -> Self {
869 value.into_channel().into()
870 }
871}
872
873#[cfg(target_os = "fuchsia")]
874impl From<fidl::Channel> for FactoryStoreProviderSynchronousProxy {
875 fn from(value: fidl::Channel) -> Self {
876 Self::new(value)
877 }
878}
879
880#[cfg(target_os = "fuchsia")]
881impl fidl::endpoints::FromClient for FactoryStoreProviderSynchronousProxy {
882 type Protocol = FactoryStoreProviderMarker;
883
884 fn from_client(value: fidl::endpoints::ClientEnd<FactoryStoreProviderMarker>) -> Self {
885 Self::new(value.into_channel())
886 }
887}
888
889#[derive(Debug, Clone)]
890pub struct FactoryStoreProviderProxy {
891 client: fidl::client::Client<fidl::encoding::DefaultFuchsiaResourceDialect>,
892}
893
894impl fidl::endpoints::Proxy for FactoryStoreProviderProxy {
895 type Protocol = FactoryStoreProviderMarker;
896
897 fn from_channel(inner: ::fidl::AsyncChannel) -> Self {
898 Self::new(inner)
899 }
900
901 fn into_channel(self) -> Result<::fidl::AsyncChannel, Self> {
902 self.client.into_channel().map_err(|client| Self { client })
903 }
904
905 fn as_channel(&self) -> &::fidl::AsyncChannel {
906 self.client.as_channel()
907 }
908}
909
910impl FactoryStoreProviderProxy {
911 pub fn new(channel: ::fidl::AsyncChannel) -> Self {
913 let protocol_name =
914 <FactoryStoreProviderMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME;
915 Self { client: fidl::client::Client::new(channel, protocol_name) }
916 }
917
918 pub fn take_event_stream(&self) -> FactoryStoreProviderEventStream {
924 FactoryStoreProviderEventStream { event_receiver: self.client.take_event_receiver() }
925 }
926
927 pub fn r#get_factory_store(
928 &self,
929 mut dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
930 ) -> Result<(), fidl::Error> {
931 FactoryStoreProviderProxyInterface::r#get_factory_store(self, dir)
932 }
933}
934
935impl FactoryStoreProviderProxyInterface for FactoryStoreProviderProxy {
936 fn r#get_factory_store(
937 &self,
938 mut dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
939 ) -> Result<(), fidl::Error> {
940 self.client.send::<FactoryStoreProviderGetFactoryStoreRequest>(
941 (dir,),
942 0x21fa8e8bc0e1209e,
943 fidl::encoding::DynamicFlags::empty(),
944 )
945 }
946}
947
948pub struct FactoryStoreProviderEventStream {
949 event_receiver: fidl::client::EventReceiver<fidl::encoding::DefaultFuchsiaResourceDialect>,
950}
951
952impl std::marker::Unpin for FactoryStoreProviderEventStream {}
953
954impl futures::stream::FusedStream for FactoryStoreProviderEventStream {
955 fn is_terminated(&self) -> bool {
956 self.event_receiver.is_terminated()
957 }
958}
959
960impl futures::Stream for FactoryStoreProviderEventStream {
961 type Item = Result<FactoryStoreProviderEvent, fidl::Error>;
962
963 fn poll_next(
964 mut self: std::pin::Pin<&mut Self>,
965 cx: &mut std::task::Context<'_>,
966 ) -> std::task::Poll<Option<Self::Item>> {
967 match futures::ready!(futures::stream::StreamExt::poll_next_unpin(
968 &mut self.event_receiver,
969 cx
970 )?) {
971 Some(buf) => std::task::Poll::Ready(Some(FactoryStoreProviderEvent::decode(buf))),
972 None => std::task::Poll::Ready(None),
973 }
974 }
975}
976
977#[derive(Debug)]
978pub enum FactoryStoreProviderEvent {}
979
980impl FactoryStoreProviderEvent {
981 fn decode(
983 mut buf: <fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc,
984 ) -> Result<FactoryStoreProviderEvent, fidl::Error> {
985 let (bytes, _handles) = buf.split_mut();
986 let (tx_header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
987 debug_assert_eq!(tx_header.tx_id, 0);
988 match tx_header.ordinal {
989 _ => Err(fidl::Error::UnknownOrdinal {
990 ordinal: tx_header.ordinal,
991 protocol_name:
992 <FactoryStoreProviderMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
993 }),
994 }
995 }
996}
997
998pub struct FactoryStoreProviderRequestStream {
1000 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
1001 is_terminated: bool,
1002}
1003
1004impl std::marker::Unpin for FactoryStoreProviderRequestStream {}
1005
1006impl futures::stream::FusedStream for FactoryStoreProviderRequestStream {
1007 fn is_terminated(&self) -> bool {
1008 self.is_terminated
1009 }
1010}
1011
1012impl fidl::endpoints::RequestStream for FactoryStoreProviderRequestStream {
1013 type Protocol = FactoryStoreProviderMarker;
1014 type ControlHandle = FactoryStoreProviderControlHandle;
1015
1016 fn from_channel(channel: ::fidl::AsyncChannel) -> Self {
1017 Self { inner: std::sync::Arc::new(fidl::ServeInner::new(channel)), is_terminated: false }
1018 }
1019
1020 fn control_handle(&self) -> Self::ControlHandle {
1021 FactoryStoreProviderControlHandle { inner: self.inner.clone() }
1022 }
1023
1024 fn into_inner(
1025 self,
1026 ) -> (::std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>, bool)
1027 {
1028 (self.inner, self.is_terminated)
1029 }
1030
1031 fn from_inner(
1032 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
1033 is_terminated: bool,
1034 ) -> Self {
1035 Self { inner, is_terminated }
1036 }
1037}
1038
1039impl futures::Stream for FactoryStoreProviderRequestStream {
1040 type Item = Result<FactoryStoreProviderRequest, fidl::Error>;
1041
1042 fn poll_next(
1043 mut self: std::pin::Pin<&mut Self>,
1044 cx: &mut std::task::Context<'_>,
1045 ) -> std::task::Poll<Option<Self::Item>> {
1046 let this = &mut *self;
1047 if this.inner.check_shutdown(cx) {
1048 this.is_terminated = true;
1049 return std::task::Poll::Ready(None);
1050 }
1051 if this.is_terminated {
1052 panic!("polled FactoryStoreProviderRequestStream after completion");
1053 }
1054 fidl::encoding::with_tls_decode_buf::<_, fidl::encoding::DefaultFuchsiaResourceDialect>(
1055 |bytes, handles| {
1056 match this.inner.channel().read_etc(cx, bytes, handles) {
1057 std::task::Poll::Ready(Ok(())) => {}
1058 std::task::Poll::Pending => return std::task::Poll::Pending,
1059 std::task::Poll::Ready(Err(zx_status::Status::PEER_CLOSED)) => {
1060 this.is_terminated = true;
1061 return std::task::Poll::Ready(None);
1062 }
1063 std::task::Poll::Ready(Err(e)) => {
1064 return std::task::Poll::Ready(Some(Err(fidl::Error::ServerRequestRead(
1065 e.into(),
1066 ))));
1067 }
1068 }
1069
1070 let (header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
1072
1073 std::task::Poll::Ready(Some(match header.ordinal {
1074 0x21fa8e8bc0e1209e => {
1075 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
1076 let mut req = fidl::new_empty!(FactoryStoreProviderGetFactoryStoreRequest, fidl::encoding::DefaultFuchsiaResourceDialect);
1077 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<FactoryStoreProviderGetFactoryStoreRequest>(&header, _body_bytes, handles, &mut req)?;
1078 let control_handle = FactoryStoreProviderControlHandle {
1079 inner: this.inner.clone(),
1080 };
1081 Ok(FactoryStoreProviderRequest::GetFactoryStore {dir: req.dir,
1082
1083 control_handle,
1084 })
1085 }
1086 _ => Err(fidl::Error::UnknownOrdinal {
1087 ordinal: header.ordinal,
1088 protocol_name: <FactoryStoreProviderMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
1089 }),
1090 }))
1091 },
1092 )
1093 }
1094}
1095
1096#[derive(Debug)]
1103pub enum FactoryStoreProviderRequest {
1104 GetFactoryStore {
1105 dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
1106 control_handle: FactoryStoreProviderControlHandle,
1107 },
1108}
1109
1110impl FactoryStoreProviderRequest {
1111 #[allow(irrefutable_let_patterns)]
1112 pub fn into_get_factory_store(
1113 self,
1114 ) -> Option<(
1115 fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
1116 FactoryStoreProviderControlHandle,
1117 )> {
1118 if let FactoryStoreProviderRequest::GetFactoryStore { dir, control_handle } = self {
1119 Some((dir, control_handle))
1120 } else {
1121 None
1122 }
1123 }
1124
1125 pub fn method_name(&self) -> &'static str {
1127 match *self {
1128 FactoryStoreProviderRequest::GetFactoryStore { .. } => "get_factory_store",
1129 }
1130 }
1131}
1132
1133#[derive(Debug, Clone)]
1134pub struct FactoryStoreProviderControlHandle {
1135 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
1136}
1137
1138impl FactoryStoreProviderControlHandle {
1139 pub fn shutdown_with_epitaph(&self, status: impl Into<fidl::Epitaph>) {
1140 self.inner.shutdown_with_epitaph(status.into())
1141 }
1142}
1143
1144impl fidl::endpoints::ControlHandle for FactoryStoreProviderControlHandle {
1145 fn shutdown(&self) {
1146 self.inner.shutdown()
1147 }
1148
1149 fn shutdown_with_epitaph(&self, status: fidl::Epitaph) {
1150 self.inner.shutdown_with_epitaph(status)
1151 }
1152
1153 fn is_closed(&self) -> bool {
1154 self.inner.channel().is_closed()
1155 }
1156 fn on_closed(&self) -> fidl::OnSignalsRef<'_> {
1157 self.inner.channel().on_closed()
1158 }
1159
1160 #[cfg(target_os = "fuchsia")]
1161 fn signal_peer(
1162 &self,
1163 clear_mask: zx::Signals,
1164 set_mask: zx::Signals,
1165 ) -> Result<(), zx_status::Status> {
1166 use fidl::Peered;
1167 self.inner.channel().signal_peer(clear_mask, set_mask)
1168 }
1169}
1170
1171impl FactoryStoreProviderControlHandle {}
1172
1173#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Hash)]
1174pub struct MiscFactoryStoreProviderMarker;
1175
1176impl fidl::endpoints::ProtocolMarker for MiscFactoryStoreProviderMarker {
1177 type Proxy = MiscFactoryStoreProviderProxy;
1178 type RequestStream = MiscFactoryStoreProviderRequestStream;
1179 #[cfg(target_os = "fuchsia")]
1180 type SynchronousProxy = MiscFactoryStoreProviderSynchronousProxy;
1181
1182 const DEBUG_NAME: &'static str = "fuchsia.factory.MiscFactoryStoreProvider";
1183}
1184impl fidl::endpoints::DiscoverableProtocolMarker for MiscFactoryStoreProviderMarker {}
1185
1186pub trait MiscFactoryStoreProviderProxyInterface: Send + Sync {
1187 fn r#get_factory_store(
1188 &self,
1189 dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
1190 ) -> Result<(), fidl::Error>;
1191}
1192#[derive(Debug)]
1193#[cfg(target_os = "fuchsia")]
1194pub struct MiscFactoryStoreProviderSynchronousProxy {
1195 client: fidl::client::sync::Client,
1196}
1197
1198#[cfg(target_os = "fuchsia")]
1199impl fidl::endpoints::SynchronousProxy for MiscFactoryStoreProviderSynchronousProxy {
1200 type Proxy = MiscFactoryStoreProviderProxy;
1201 type Protocol = MiscFactoryStoreProviderMarker;
1202
1203 fn from_channel(inner: fidl::Channel) -> Self {
1204 Self::new(inner)
1205 }
1206
1207 fn into_channel(self) -> fidl::Channel {
1208 self.client.into_channel()
1209 }
1210
1211 fn as_channel(&self) -> &fidl::Channel {
1212 self.client.as_channel()
1213 }
1214}
1215
1216#[cfg(target_os = "fuchsia")]
1217impl MiscFactoryStoreProviderSynchronousProxy {
1218 pub fn new(channel: fidl::Channel) -> Self {
1219 Self { client: fidl::client::sync::Client::new(channel) }
1220 }
1221
1222 pub fn into_channel(self) -> fidl::Channel {
1223 self.client.into_channel()
1224 }
1225
1226 pub fn wait_for_event(
1229 &self,
1230 deadline: zx::MonotonicInstant,
1231 ) -> Result<MiscFactoryStoreProviderEvent, fidl::Error> {
1232 MiscFactoryStoreProviderEvent::decode(
1233 self.client.wait_for_event::<MiscFactoryStoreProviderMarker>(deadline)?,
1234 )
1235 }
1236
1237 pub fn r#get_factory_store(
1238 &self,
1239 mut dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
1240 ) -> Result<(), fidl::Error> {
1241 self.client.send::<FactoryStoreProviderGetFactoryStoreRequest>(
1242 (dir,),
1243 0x21fa8e8bc0e1209e,
1244 fidl::encoding::DynamicFlags::empty(),
1245 )
1246 }
1247}
1248
1249#[cfg(target_os = "fuchsia")]
1250impl From<MiscFactoryStoreProviderSynchronousProxy> for zx::NullableHandle {
1251 fn from(value: MiscFactoryStoreProviderSynchronousProxy) -> Self {
1252 value.into_channel().into()
1253 }
1254}
1255
1256#[cfg(target_os = "fuchsia")]
1257impl From<fidl::Channel> for MiscFactoryStoreProviderSynchronousProxy {
1258 fn from(value: fidl::Channel) -> Self {
1259 Self::new(value)
1260 }
1261}
1262
1263#[cfg(target_os = "fuchsia")]
1264impl fidl::endpoints::FromClient for MiscFactoryStoreProviderSynchronousProxy {
1265 type Protocol = MiscFactoryStoreProviderMarker;
1266
1267 fn from_client(value: fidl::endpoints::ClientEnd<MiscFactoryStoreProviderMarker>) -> Self {
1268 Self::new(value.into_channel())
1269 }
1270}
1271
1272#[derive(Debug, Clone)]
1273pub struct MiscFactoryStoreProviderProxy {
1274 client: fidl::client::Client<fidl::encoding::DefaultFuchsiaResourceDialect>,
1275}
1276
1277impl fidl::endpoints::Proxy for MiscFactoryStoreProviderProxy {
1278 type Protocol = MiscFactoryStoreProviderMarker;
1279
1280 fn from_channel(inner: ::fidl::AsyncChannel) -> Self {
1281 Self::new(inner)
1282 }
1283
1284 fn into_channel(self) -> Result<::fidl::AsyncChannel, Self> {
1285 self.client.into_channel().map_err(|client| Self { client })
1286 }
1287
1288 fn as_channel(&self) -> &::fidl::AsyncChannel {
1289 self.client.as_channel()
1290 }
1291}
1292
1293impl MiscFactoryStoreProviderProxy {
1294 pub fn new(channel: ::fidl::AsyncChannel) -> Self {
1296 let protocol_name =
1297 <MiscFactoryStoreProviderMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME;
1298 Self { client: fidl::client::Client::new(channel, protocol_name) }
1299 }
1300
1301 pub fn take_event_stream(&self) -> MiscFactoryStoreProviderEventStream {
1307 MiscFactoryStoreProviderEventStream { event_receiver: self.client.take_event_receiver() }
1308 }
1309
1310 pub fn r#get_factory_store(
1311 &self,
1312 mut dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
1313 ) -> Result<(), fidl::Error> {
1314 MiscFactoryStoreProviderProxyInterface::r#get_factory_store(self, dir)
1315 }
1316}
1317
1318impl MiscFactoryStoreProviderProxyInterface for MiscFactoryStoreProviderProxy {
1319 fn r#get_factory_store(
1320 &self,
1321 mut dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
1322 ) -> Result<(), fidl::Error> {
1323 self.client.send::<FactoryStoreProviderGetFactoryStoreRequest>(
1324 (dir,),
1325 0x21fa8e8bc0e1209e,
1326 fidl::encoding::DynamicFlags::empty(),
1327 )
1328 }
1329}
1330
1331pub struct MiscFactoryStoreProviderEventStream {
1332 event_receiver: fidl::client::EventReceiver<fidl::encoding::DefaultFuchsiaResourceDialect>,
1333}
1334
1335impl std::marker::Unpin for MiscFactoryStoreProviderEventStream {}
1336
1337impl futures::stream::FusedStream for MiscFactoryStoreProviderEventStream {
1338 fn is_terminated(&self) -> bool {
1339 self.event_receiver.is_terminated()
1340 }
1341}
1342
1343impl futures::Stream for MiscFactoryStoreProviderEventStream {
1344 type Item = Result<MiscFactoryStoreProviderEvent, fidl::Error>;
1345
1346 fn poll_next(
1347 mut self: std::pin::Pin<&mut Self>,
1348 cx: &mut std::task::Context<'_>,
1349 ) -> std::task::Poll<Option<Self::Item>> {
1350 match futures::ready!(futures::stream::StreamExt::poll_next_unpin(
1351 &mut self.event_receiver,
1352 cx
1353 )?) {
1354 Some(buf) => std::task::Poll::Ready(Some(MiscFactoryStoreProviderEvent::decode(buf))),
1355 None => std::task::Poll::Ready(None),
1356 }
1357 }
1358}
1359
1360#[derive(Debug)]
1361pub enum MiscFactoryStoreProviderEvent {}
1362
1363impl MiscFactoryStoreProviderEvent {
1364 fn decode(
1366 mut buf: <fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc,
1367 ) -> Result<MiscFactoryStoreProviderEvent, fidl::Error> {
1368 let (bytes, _handles) = buf.split_mut();
1369 let (tx_header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
1370 debug_assert_eq!(tx_header.tx_id, 0);
1371 match tx_header.ordinal {
1372 _ => Err(fidl::Error::UnknownOrdinal {
1373 ordinal: tx_header.ordinal,
1374 protocol_name:
1375 <MiscFactoryStoreProviderMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
1376 }),
1377 }
1378 }
1379}
1380
1381pub struct MiscFactoryStoreProviderRequestStream {
1383 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
1384 is_terminated: bool,
1385}
1386
1387impl std::marker::Unpin for MiscFactoryStoreProviderRequestStream {}
1388
1389impl futures::stream::FusedStream for MiscFactoryStoreProviderRequestStream {
1390 fn is_terminated(&self) -> bool {
1391 self.is_terminated
1392 }
1393}
1394
1395impl fidl::endpoints::RequestStream for MiscFactoryStoreProviderRequestStream {
1396 type Protocol = MiscFactoryStoreProviderMarker;
1397 type ControlHandle = MiscFactoryStoreProviderControlHandle;
1398
1399 fn from_channel(channel: ::fidl::AsyncChannel) -> Self {
1400 Self { inner: std::sync::Arc::new(fidl::ServeInner::new(channel)), is_terminated: false }
1401 }
1402
1403 fn control_handle(&self) -> Self::ControlHandle {
1404 MiscFactoryStoreProviderControlHandle { inner: self.inner.clone() }
1405 }
1406
1407 fn into_inner(
1408 self,
1409 ) -> (::std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>, bool)
1410 {
1411 (self.inner, self.is_terminated)
1412 }
1413
1414 fn from_inner(
1415 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
1416 is_terminated: bool,
1417 ) -> Self {
1418 Self { inner, is_terminated }
1419 }
1420}
1421
1422impl futures::Stream for MiscFactoryStoreProviderRequestStream {
1423 type Item = Result<MiscFactoryStoreProviderRequest, fidl::Error>;
1424
1425 fn poll_next(
1426 mut self: std::pin::Pin<&mut Self>,
1427 cx: &mut std::task::Context<'_>,
1428 ) -> std::task::Poll<Option<Self::Item>> {
1429 let this = &mut *self;
1430 if this.inner.check_shutdown(cx) {
1431 this.is_terminated = true;
1432 return std::task::Poll::Ready(None);
1433 }
1434 if this.is_terminated {
1435 panic!("polled MiscFactoryStoreProviderRequestStream after completion");
1436 }
1437 fidl::encoding::with_tls_decode_buf::<_, fidl::encoding::DefaultFuchsiaResourceDialect>(
1438 |bytes, handles| {
1439 match this.inner.channel().read_etc(cx, bytes, handles) {
1440 std::task::Poll::Ready(Ok(())) => {}
1441 std::task::Poll::Pending => return std::task::Poll::Pending,
1442 std::task::Poll::Ready(Err(zx_status::Status::PEER_CLOSED)) => {
1443 this.is_terminated = true;
1444 return std::task::Poll::Ready(None);
1445 }
1446 std::task::Poll::Ready(Err(e)) => {
1447 return std::task::Poll::Ready(Some(Err(fidl::Error::ServerRequestRead(
1448 e.into(),
1449 ))));
1450 }
1451 }
1452
1453 let (header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
1455
1456 std::task::Poll::Ready(Some(match header.ordinal {
1457 0x21fa8e8bc0e1209e => {
1458 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
1459 let mut req = fidl::new_empty!(FactoryStoreProviderGetFactoryStoreRequest, fidl::encoding::DefaultFuchsiaResourceDialect);
1460 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<FactoryStoreProviderGetFactoryStoreRequest>(&header, _body_bytes, handles, &mut req)?;
1461 let control_handle = MiscFactoryStoreProviderControlHandle {
1462 inner: this.inner.clone(),
1463 };
1464 Ok(MiscFactoryStoreProviderRequest::GetFactoryStore {dir: req.dir,
1465
1466 control_handle,
1467 })
1468 }
1469 _ => Err(fidl::Error::UnknownOrdinal {
1470 ordinal: header.ordinal,
1471 protocol_name: <MiscFactoryStoreProviderMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
1472 }),
1473 }))
1474 },
1475 )
1476 }
1477}
1478
1479#[derive(Debug)]
1485pub enum MiscFactoryStoreProviderRequest {
1486 GetFactoryStore {
1487 dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
1488 control_handle: MiscFactoryStoreProviderControlHandle,
1489 },
1490}
1491
1492impl MiscFactoryStoreProviderRequest {
1493 #[allow(irrefutable_let_patterns)]
1494 pub fn into_get_factory_store(
1495 self,
1496 ) -> Option<(
1497 fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
1498 MiscFactoryStoreProviderControlHandle,
1499 )> {
1500 if let MiscFactoryStoreProviderRequest::GetFactoryStore { dir, control_handle } = self {
1501 Some((dir, control_handle))
1502 } else {
1503 None
1504 }
1505 }
1506
1507 pub fn method_name(&self) -> &'static str {
1509 match *self {
1510 MiscFactoryStoreProviderRequest::GetFactoryStore { .. } => "get_factory_store",
1511 }
1512 }
1513}
1514
1515#[derive(Debug, Clone)]
1516pub struct MiscFactoryStoreProviderControlHandle {
1517 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
1518}
1519
1520impl MiscFactoryStoreProviderControlHandle {
1521 pub fn shutdown_with_epitaph(&self, status: impl Into<fidl::Epitaph>) {
1522 self.inner.shutdown_with_epitaph(status.into())
1523 }
1524}
1525
1526impl fidl::endpoints::ControlHandle for MiscFactoryStoreProviderControlHandle {
1527 fn shutdown(&self) {
1528 self.inner.shutdown()
1529 }
1530
1531 fn shutdown_with_epitaph(&self, status: fidl::Epitaph) {
1532 self.inner.shutdown_with_epitaph(status)
1533 }
1534
1535 fn is_closed(&self) -> bool {
1536 self.inner.channel().is_closed()
1537 }
1538 fn on_closed(&self) -> fidl::OnSignalsRef<'_> {
1539 self.inner.channel().on_closed()
1540 }
1541
1542 #[cfg(target_os = "fuchsia")]
1543 fn signal_peer(
1544 &self,
1545 clear_mask: zx::Signals,
1546 set_mask: zx::Signals,
1547 ) -> Result<(), zx_status::Status> {
1548 use fidl::Peered;
1549 self.inner.channel().signal_peer(clear_mask, set_mask)
1550 }
1551}
1552
1553impl MiscFactoryStoreProviderControlHandle {}
1554
1555#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Hash)]
1556pub struct PlayReadyFactoryStoreProviderMarker;
1557
1558impl fidl::endpoints::ProtocolMarker for PlayReadyFactoryStoreProviderMarker {
1559 type Proxy = PlayReadyFactoryStoreProviderProxy;
1560 type RequestStream = PlayReadyFactoryStoreProviderRequestStream;
1561 #[cfg(target_os = "fuchsia")]
1562 type SynchronousProxy = PlayReadyFactoryStoreProviderSynchronousProxy;
1563
1564 const DEBUG_NAME: &'static str = "fuchsia.factory.PlayReadyFactoryStoreProvider";
1565}
1566impl fidl::endpoints::DiscoverableProtocolMarker for PlayReadyFactoryStoreProviderMarker {}
1567
1568pub trait PlayReadyFactoryStoreProviderProxyInterface: Send + Sync {
1569 fn r#get_factory_store(
1570 &self,
1571 dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
1572 ) -> Result<(), fidl::Error>;
1573}
1574#[derive(Debug)]
1575#[cfg(target_os = "fuchsia")]
1576pub struct PlayReadyFactoryStoreProviderSynchronousProxy {
1577 client: fidl::client::sync::Client,
1578}
1579
1580#[cfg(target_os = "fuchsia")]
1581impl fidl::endpoints::SynchronousProxy for PlayReadyFactoryStoreProviderSynchronousProxy {
1582 type Proxy = PlayReadyFactoryStoreProviderProxy;
1583 type Protocol = PlayReadyFactoryStoreProviderMarker;
1584
1585 fn from_channel(inner: fidl::Channel) -> Self {
1586 Self::new(inner)
1587 }
1588
1589 fn into_channel(self) -> fidl::Channel {
1590 self.client.into_channel()
1591 }
1592
1593 fn as_channel(&self) -> &fidl::Channel {
1594 self.client.as_channel()
1595 }
1596}
1597
1598#[cfg(target_os = "fuchsia")]
1599impl PlayReadyFactoryStoreProviderSynchronousProxy {
1600 pub fn new(channel: fidl::Channel) -> Self {
1601 Self { client: fidl::client::sync::Client::new(channel) }
1602 }
1603
1604 pub fn into_channel(self) -> fidl::Channel {
1605 self.client.into_channel()
1606 }
1607
1608 pub fn wait_for_event(
1611 &self,
1612 deadline: zx::MonotonicInstant,
1613 ) -> Result<PlayReadyFactoryStoreProviderEvent, fidl::Error> {
1614 PlayReadyFactoryStoreProviderEvent::decode(
1615 self.client.wait_for_event::<PlayReadyFactoryStoreProviderMarker>(deadline)?,
1616 )
1617 }
1618
1619 pub fn r#get_factory_store(
1620 &self,
1621 mut dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
1622 ) -> Result<(), fidl::Error> {
1623 self.client.send::<FactoryStoreProviderGetFactoryStoreRequest>(
1624 (dir,),
1625 0x21fa8e8bc0e1209e,
1626 fidl::encoding::DynamicFlags::empty(),
1627 )
1628 }
1629}
1630
1631#[cfg(target_os = "fuchsia")]
1632impl From<PlayReadyFactoryStoreProviderSynchronousProxy> for zx::NullableHandle {
1633 fn from(value: PlayReadyFactoryStoreProviderSynchronousProxy) -> Self {
1634 value.into_channel().into()
1635 }
1636}
1637
1638#[cfg(target_os = "fuchsia")]
1639impl From<fidl::Channel> for PlayReadyFactoryStoreProviderSynchronousProxy {
1640 fn from(value: fidl::Channel) -> Self {
1641 Self::new(value)
1642 }
1643}
1644
1645#[cfg(target_os = "fuchsia")]
1646impl fidl::endpoints::FromClient for PlayReadyFactoryStoreProviderSynchronousProxy {
1647 type Protocol = PlayReadyFactoryStoreProviderMarker;
1648
1649 fn from_client(value: fidl::endpoints::ClientEnd<PlayReadyFactoryStoreProviderMarker>) -> Self {
1650 Self::new(value.into_channel())
1651 }
1652}
1653
1654#[derive(Debug, Clone)]
1655pub struct PlayReadyFactoryStoreProviderProxy {
1656 client: fidl::client::Client<fidl::encoding::DefaultFuchsiaResourceDialect>,
1657}
1658
1659impl fidl::endpoints::Proxy for PlayReadyFactoryStoreProviderProxy {
1660 type Protocol = PlayReadyFactoryStoreProviderMarker;
1661
1662 fn from_channel(inner: ::fidl::AsyncChannel) -> Self {
1663 Self::new(inner)
1664 }
1665
1666 fn into_channel(self) -> Result<::fidl::AsyncChannel, Self> {
1667 self.client.into_channel().map_err(|client| Self { client })
1668 }
1669
1670 fn as_channel(&self) -> &::fidl::AsyncChannel {
1671 self.client.as_channel()
1672 }
1673}
1674
1675impl PlayReadyFactoryStoreProviderProxy {
1676 pub fn new(channel: ::fidl::AsyncChannel) -> Self {
1678 let protocol_name =
1679 <PlayReadyFactoryStoreProviderMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME;
1680 Self { client: fidl::client::Client::new(channel, protocol_name) }
1681 }
1682
1683 pub fn take_event_stream(&self) -> PlayReadyFactoryStoreProviderEventStream {
1689 PlayReadyFactoryStoreProviderEventStream {
1690 event_receiver: self.client.take_event_receiver(),
1691 }
1692 }
1693
1694 pub fn r#get_factory_store(
1695 &self,
1696 mut dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
1697 ) -> Result<(), fidl::Error> {
1698 PlayReadyFactoryStoreProviderProxyInterface::r#get_factory_store(self, dir)
1699 }
1700}
1701
1702impl PlayReadyFactoryStoreProviderProxyInterface for PlayReadyFactoryStoreProviderProxy {
1703 fn r#get_factory_store(
1704 &self,
1705 mut dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
1706 ) -> Result<(), fidl::Error> {
1707 self.client.send::<FactoryStoreProviderGetFactoryStoreRequest>(
1708 (dir,),
1709 0x21fa8e8bc0e1209e,
1710 fidl::encoding::DynamicFlags::empty(),
1711 )
1712 }
1713}
1714
1715pub struct PlayReadyFactoryStoreProviderEventStream {
1716 event_receiver: fidl::client::EventReceiver<fidl::encoding::DefaultFuchsiaResourceDialect>,
1717}
1718
1719impl std::marker::Unpin for PlayReadyFactoryStoreProviderEventStream {}
1720
1721impl futures::stream::FusedStream for PlayReadyFactoryStoreProviderEventStream {
1722 fn is_terminated(&self) -> bool {
1723 self.event_receiver.is_terminated()
1724 }
1725}
1726
1727impl futures::Stream for PlayReadyFactoryStoreProviderEventStream {
1728 type Item = Result<PlayReadyFactoryStoreProviderEvent, fidl::Error>;
1729
1730 fn poll_next(
1731 mut self: std::pin::Pin<&mut Self>,
1732 cx: &mut std::task::Context<'_>,
1733 ) -> std::task::Poll<Option<Self::Item>> {
1734 match futures::ready!(futures::stream::StreamExt::poll_next_unpin(
1735 &mut self.event_receiver,
1736 cx
1737 )?) {
1738 Some(buf) => {
1739 std::task::Poll::Ready(Some(PlayReadyFactoryStoreProviderEvent::decode(buf)))
1740 }
1741 None => std::task::Poll::Ready(None),
1742 }
1743 }
1744}
1745
1746#[derive(Debug)]
1747pub enum PlayReadyFactoryStoreProviderEvent {}
1748
1749impl PlayReadyFactoryStoreProviderEvent {
1750 fn decode(
1752 mut buf: <fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc,
1753 ) -> Result<PlayReadyFactoryStoreProviderEvent, fidl::Error> {
1754 let (bytes, _handles) = buf.split_mut();
1755 let (tx_header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
1756 debug_assert_eq!(tx_header.tx_id, 0);
1757 match tx_header.ordinal {
1758 _ => Err(fidl::Error::UnknownOrdinal {
1759 ordinal: tx_header.ordinal,
1760 protocol_name: <PlayReadyFactoryStoreProviderMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
1761 })
1762 }
1763 }
1764}
1765
1766pub struct PlayReadyFactoryStoreProviderRequestStream {
1768 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
1769 is_terminated: bool,
1770}
1771
1772impl std::marker::Unpin for PlayReadyFactoryStoreProviderRequestStream {}
1773
1774impl futures::stream::FusedStream for PlayReadyFactoryStoreProviderRequestStream {
1775 fn is_terminated(&self) -> bool {
1776 self.is_terminated
1777 }
1778}
1779
1780impl fidl::endpoints::RequestStream for PlayReadyFactoryStoreProviderRequestStream {
1781 type Protocol = PlayReadyFactoryStoreProviderMarker;
1782 type ControlHandle = PlayReadyFactoryStoreProviderControlHandle;
1783
1784 fn from_channel(channel: ::fidl::AsyncChannel) -> Self {
1785 Self { inner: std::sync::Arc::new(fidl::ServeInner::new(channel)), is_terminated: false }
1786 }
1787
1788 fn control_handle(&self) -> Self::ControlHandle {
1789 PlayReadyFactoryStoreProviderControlHandle { inner: self.inner.clone() }
1790 }
1791
1792 fn into_inner(
1793 self,
1794 ) -> (::std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>, bool)
1795 {
1796 (self.inner, self.is_terminated)
1797 }
1798
1799 fn from_inner(
1800 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
1801 is_terminated: bool,
1802 ) -> Self {
1803 Self { inner, is_terminated }
1804 }
1805}
1806
1807impl futures::Stream for PlayReadyFactoryStoreProviderRequestStream {
1808 type Item = Result<PlayReadyFactoryStoreProviderRequest, fidl::Error>;
1809
1810 fn poll_next(
1811 mut self: std::pin::Pin<&mut Self>,
1812 cx: &mut std::task::Context<'_>,
1813 ) -> std::task::Poll<Option<Self::Item>> {
1814 let this = &mut *self;
1815 if this.inner.check_shutdown(cx) {
1816 this.is_terminated = true;
1817 return std::task::Poll::Ready(None);
1818 }
1819 if this.is_terminated {
1820 panic!("polled PlayReadyFactoryStoreProviderRequestStream after completion");
1821 }
1822 fidl::encoding::with_tls_decode_buf::<_, fidl::encoding::DefaultFuchsiaResourceDialect>(
1823 |bytes, handles| {
1824 match this.inner.channel().read_etc(cx, bytes, handles) {
1825 std::task::Poll::Ready(Ok(())) => {}
1826 std::task::Poll::Pending => return std::task::Poll::Pending,
1827 std::task::Poll::Ready(Err(zx_status::Status::PEER_CLOSED)) => {
1828 this.is_terminated = true;
1829 return std::task::Poll::Ready(None);
1830 }
1831 std::task::Poll::Ready(Err(e)) => {
1832 return std::task::Poll::Ready(Some(Err(fidl::Error::ServerRequestRead(
1833 e.into(),
1834 ))));
1835 }
1836 }
1837
1838 let (header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
1840
1841 std::task::Poll::Ready(Some(match header.ordinal {
1842 0x21fa8e8bc0e1209e => {
1843 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
1844 let mut req = fidl::new_empty!(FactoryStoreProviderGetFactoryStoreRequest, fidl::encoding::DefaultFuchsiaResourceDialect);
1845 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<FactoryStoreProviderGetFactoryStoreRequest>(&header, _body_bytes, handles, &mut req)?;
1846 let control_handle = PlayReadyFactoryStoreProviderControlHandle {
1847 inner: this.inner.clone(),
1848 };
1849 Ok(PlayReadyFactoryStoreProviderRequest::GetFactoryStore {dir: req.dir,
1850
1851 control_handle,
1852 })
1853 }
1854 _ => Err(fidl::Error::UnknownOrdinal {
1855 ordinal: header.ordinal,
1856 protocol_name: <PlayReadyFactoryStoreProviderMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
1857 }),
1858 }))
1859 },
1860 )
1861 }
1862}
1863
1864#[derive(Debug)]
1868pub enum PlayReadyFactoryStoreProviderRequest {
1869 GetFactoryStore {
1870 dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
1871 control_handle: PlayReadyFactoryStoreProviderControlHandle,
1872 },
1873}
1874
1875impl PlayReadyFactoryStoreProviderRequest {
1876 #[allow(irrefutable_let_patterns)]
1877 pub fn into_get_factory_store(
1878 self,
1879 ) -> Option<(
1880 fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
1881 PlayReadyFactoryStoreProviderControlHandle,
1882 )> {
1883 if let PlayReadyFactoryStoreProviderRequest::GetFactoryStore { dir, control_handle } = self
1884 {
1885 Some((dir, control_handle))
1886 } else {
1887 None
1888 }
1889 }
1890
1891 pub fn method_name(&self) -> &'static str {
1893 match *self {
1894 PlayReadyFactoryStoreProviderRequest::GetFactoryStore { .. } => "get_factory_store",
1895 }
1896 }
1897}
1898
1899#[derive(Debug, Clone)]
1900pub struct PlayReadyFactoryStoreProviderControlHandle {
1901 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
1902}
1903
1904impl PlayReadyFactoryStoreProviderControlHandle {
1905 pub fn shutdown_with_epitaph(&self, status: impl Into<fidl::Epitaph>) {
1906 self.inner.shutdown_with_epitaph(status.into())
1907 }
1908}
1909
1910impl fidl::endpoints::ControlHandle for PlayReadyFactoryStoreProviderControlHandle {
1911 fn shutdown(&self) {
1912 self.inner.shutdown()
1913 }
1914
1915 fn shutdown_with_epitaph(&self, status: fidl::Epitaph) {
1916 self.inner.shutdown_with_epitaph(status)
1917 }
1918
1919 fn is_closed(&self) -> bool {
1920 self.inner.channel().is_closed()
1921 }
1922 fn on_closed(&self) -> fidl::OnSignalsRef<'_> {
1923 self.inner.channel().on_closed()
1924 }
1925
1926 #[cfg(target_os = "fuchsia")]
1927 fn signal_peer(
1928 &self,
1929 clear_mask: zx::Signals,
1930 set_mask: zx::Signals,
1931 ) -> Result<(), zx_status::Status> {
1932 use fidl::Peered;
1933 self.inner.channel().signal_peer(clear_mask, set_mask)
1934 }
1935}
1936
1937impl PlayReadyFactoryStoreProviderControlHandle {}
1938
1939#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Hash)]
1940pub struct WeaveFactoryStoreProviderMarker;
1941
1942impl fidl::endpoints::ProtocolMarker for WeaveFactoryStoreProviderMarker {
1943 type Proxy = WeaveFactoryStoreProviderProxy;
1944 type RequestStream = WeaveFactoryStoreProviderRequestStream;
1945 #[cfg(target_os = "fuchsia")]
1946 type SynchronousProxy = WeaveFactoryStoreProviderSynchronousProxy;
1947
1948 const DEBUG_NAME: &'static str = "fuchsia.factory.WeaveFactoryStoreProvider";
1949}
1950impl fidl::endpoints::DiscoverableProtocolMarker for WeaveFactoryStoreProviderMarker {}
1951
1952pub trait WeaveFactoryStoreProviderProxyInterface: Send + Sync {
1953 fn r#get_factory_store(
1954 &self,
1955 dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
1956 ) -> Result<(), fidl::Error>;
1957}
1958#[derive(Debug)]
1959#[cfg(target_os = "fuchsia")]
1960pub struct WeaveFactoryStoreProviderSynchronousProxy {
1961 client: fidl::client::sync::Client,
1962}
1963
1964#[cfg(target_os = "fuchsia")]
1965impl fidl::endpoints::SynchronousProxy for WeaveFactoryStoreProviderSynchronousProxy {
1966 type Proxy = WeaveFactoryStoreProviderProxy;
1967 type Protocol = WeaveFactoryStoreProviderMarker;
1968
1969 fn from_channel(inner: fidl::Channel) -> Self {
1970 Self::new(inner)
1971 }
1972
1973 fn into_channel(self) -> fidl::Channel {
1974 self.client.into_channel()
1975 }
1976
1977 fn as_channel(&self) -> &fidl::Channel {
1978 self.client.as_channel()
1979 }
1980}
1981
1982#[cfg(target_os = "fuchsia")]
1983impl WeaveFactoryStoreProviderSynchronousProxy {
1984 pub fn new(channel: fidl::Channel) -> Self {
1985 Self { client: fidl::client::sync::Client::new(channel) }
1986 }
1987
1988 pub fn into_channel(self) -> fidl::Channel {
1989 self.client.into_channel()
1990 }
1991
1992 pub fn wait_for_event(
1995 &self,
1996 deadline: zx::MonotonicInstant,
1997 ) -> Result<WeaveFactoryStoreProviderEvent, fidl::Error> {
1998 WeaveFactoryStoreProviderEvent::decode(
1999 self.client.wait_for_event::<WeaveFactoryStoreProviderMarker>(deadline)?,
2000 )
2001 }
2002
2003 pub fn r#get_factory_store(
2004 &self,
2005 mut dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
2006 ) -> Result<(), fidl::Error> {
2007 self.client.send::<FactoryStoreProviderGetFactoryStoreRequest>(
2008 (dir,),
2009 0x21fa8e8bc0e1209e,
2010 fidl::encoding::DynamicFlags::empty(),
2011 )
2012 }
2013}
2014
2015#[cfg(target_os = "fuchsia")]
2016impl From<WeaveFactoryStoreProviderSynchronousProxy> for zx::NullableHandle {
2017 fn from(value: WeaveFactoryStoreProviderSynchronousProxy) -> Self {
2018 value.into_channel().into()
2019 }
2020}
2021
2022#[cfg(target_os = "fuchsia")]
2023impl From<fidl::Channel> for WeaveFactoryStoreProviderSynchronousProxy {
2024 fn from(value: fidl::Channel) -> Self {
2025 Self::new(value)
2026 }
2027}
2028
2029#[cfg(target_os = "fuchsia")]
2030impl fidl::endpoints::FromClient for WeaveFactoryStoreProviderSynchronousProxy {
2031 type Protocol = WeaveFactoryStoreProviderMarker;
2032
2033 fn from_client(value: fidl::endpoints::ClientEnd<WeaveFactoryStoreProviderMarker>) -> Self {
2034 Self::new(value.into_channel())
2035 }
2036}
2037
2038#[derive(Debug, Clone)]
2039pub struct WeaveFactoryStoreProviderProxy {
2040 client: fidl::client::Client<fidl::encoding::DefaultFuchsiaResourceDialect>,
2041}
2042
2043impl fidl::endpoints::Proxy for WeaveFactoryStoreProviderProxy {
2044 type Protocol = WeaveFactoryStoreProviderMarker;
2045
2046 fn from_channel(inner: ::fidl::AsyncChannel) -> Self {
2047 Self::new(inner)
2048 }
2049
2050 fn into_channel(self) -> Result<::fidl::AsyncChannel, Self> {
2051 self.client.into_channel().map_err(|client| Self { client })
2052 }
2053
2054 fn as_channel(&self) -> &::fidl::AsyncChannel {
2055 self.client.as_channel()
2056 }
2057}
2058
2059impl WeaveFactoryStoreProviderProxy {
2060 pub fn new(channel: ::fidl::AsyncChannel) -> Self {
2062 let protocol_name =
2063 <WeaveFactoryStoreProviderMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME;
2064 Self { client: fidl::client::Client::new(channel, protocol_name) }
2065 }
2066
2067 pub fn take_event_stream(&self) -> WeaveFactoryStoreProviderEventStream {
2073 WeaveFactoryStoreProviderEventStream { event_receiver: self.client.take_event_receiver() }
2074 }
2075
2076 pub fn r#get_factory_store(
2077 &self,
2078 mut dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
2079 ) -> Result<(), fidl::Error> {
2080 WeaveFactoryStoreProviderProxyInterface::r#get_factory_store(self, dir)
2081 }
2082}
2083
2084impl WeaveFactoryStoreProviderProxyInterface for WeaveFactoryStoreProviderProxy {
2085 fn r#get_factory_store(
2086 &self,
2087 mut dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
2088 ) -> Result<(), fidl::Error> {
2089 self.client.send::<FactoryStoreProviderGetFactoryStoreRequest>(
2090 (dir,),
2091 0x21fa8e8bc0e1209e,
2092 fidl::encoding::DynamicFlags::empty(),
2093 )
2094 }
2095}
2096
2097pub struct WeaveFactoryStoreProviderEventStream {
2098 event_receiver: fidl::client::EventReceiver<fidl::encoding::DefaultFuchsiaResourceDialect>,
2099}
2100
2101impl std::marker::Unpin for WeaveFactoryStoreProviderEventStream {}
2102
2103impl futures::stream::FusedStream for WeaveFactoryStoreProviderEventStream {
2104 fn is_terminated(&self) -> bool {
2105 self.event_receiver.is_terminated()
2106 }
2107}
2108
2109impl futures::Stream for WeaveFactoryStoreProviderEventStream {
2110 type Item = Result<WeaveFactoryStoreProviderEvent, fidl::Error>;
2111
2112 fn poll_next(
2113 mut self: std::pin::Pin<&mut Self>,
2114 cx: &mut std::task::Context<'_>,
2115 ) -> std::task::Poll<Option<Self::Item>> {
2116 match futures::ready!(futures::stream::StreamExt::poll_next_unpin(
2117 &mut self.event_receiver,
2118 cx
2119 )?) {
2120 Some(buf) => std::task::Poll::Ready(Some(WeaveFactoryStoreProviderEvent::decode(buf))),
2121 None => std::task::Poll::Ready(None),
2122 }
2123 }
2124}
2125
2126#[derive(Debug)]
2127pub enum WeaveFactoryStoreProviderEvent {}
2128
2129impl WeaveFactoryStoreProviderEvent {
2130 fn decode(
2132 mut buf: <fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc,
2133 ) -> Result<WeaveFactoryStoreProviderEvent, fidl::Error> {
2134 let (bytes, _handles) = buf.split_mut();
2135 let (tx_header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
2136 debug_assert_eq!(tx_header.tx_id, 0);
2137 match tx_header.ordinal {
2138 _ => Err(fidl::Error::UnknownOrdinal {
2139 ordinal: tx_header.ordinal,
2140 protocol_name:
2141 <WeaveFactoryStoreProviderMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
2142 }),
2143 }
2144 }
2145}
2146
2147pub struct WeaveFactoryStoreProviderRequestStream {
2149 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
2150 is_terminated: bool,
2151}
2152
2153impl std::marker::Unpin for WeaveFactoryStoreProviderRequestStream {}
2154
2155impl futures::stream::FusedStream for WeaveFactoryStoreProviderRequestStream {
2156 fn is_terminated(&self) -> bool {
2157 self.is_terminated
2158 }
2159}
2160
2161impl fidl::endpoints::RequestStream for WeaveFactoryStoreProviderRequestStream {
2162 type Protocol = WeaveFactoryStoreProviderMarker;
2163 type ControlHandle = WeaveFactoryStoreProviderControlHandle;
2164
2165 fn from_channel(channel: ::fidl::AsyncChannel) -> Self {
2166 Self { inner: std::sync::Arc::new(fidl::ServeInner::new(channel)), is_terminated: false }
2167 }
2168
2169 fn control_handle(&self) -> Self::ControlHandle {
2170 WeaveFactoryStoreProviderControlHandle { inner: self.inner.clone() }
2171 }
2172
2173 fn into_inner(
2174 self,
2175 ) -> (::std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>, bool)
2176 {
2177 (self.inner, self.is_terminated)
2178 }
2179
2180 fn from_inner(
2181 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
2182 is_terminated: bool,
2183 ) -> Self {
2184 Self { inner, is_terminated }
2185 }
2186}
2187
2188impl futures::Stream for WeaveFactoryStoreProviderRequestStream {
2189 type Item = Result<WeaveFactoryStoreProviderRequest, fidl::Error>;
2190
2191 fn poll_next(
2192 mut self: std::pin::Pin<&mut Self>,
2193 cx: &mut std::task::Context<'_>,
2194 ) -> std::task::Poll<Option<Self::Item>> {
2195 let this = &mut *self;
2196 if this.inner.check_shutdown(cx) {
2197 this.is_terminated = true;
2198 return std::task::Poll::Ready(None);
2199 }
2200 if this.is_terminated {
2201 panic!("polled WeaveFactoryStoreProviderRequestStream after completion");
2202 }
2203 fidl::encoding::with_tls_decode_buf::<_, fidl::encoding::DefaultFuchsiaResourceDialect>(
2204 |bytes, handles| {
2205 match this.inner.channel().read_etc(cx, bytes, handles) {
2206 std::task::Poll::Ready(Ok(())) => {}
2207 std::task::Poll::Pending => return std::task::Poll::Pending,
2208 std::task::Poll::Ready(Err(zx_status::Status::PEER_CLOSED)) => {
2209 this.is_terminated = true;
2210 return std::task::Poll::Ready(None);
2211 }
2212 std::task::Poll::Ready(Err(e)) => {
2213 return std::task::Poll::Ready(Some(Err(fidl::Error::ServerRequestRead(
2214 e.into(),
2215 ))));
2216 }
2217 }
2218
2219 let (header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
2221
2222 std::task::Poll::Ready(Some(match header.ordinal {
2223 0x21fa8e8bc0e1209e => {
2224 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2225 let mut req = fidl::new_empty!(FactoryStoreProviderGetFactoryStoreRequest, fidl::encoding::DefaultFuchsiaResourceDialect);
2226 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<FactoryStoreProviderGetFactoryStoreRequest>(&header, _body_bytes, handles, &mut req)?;
2227 let control_handle = WeaveFactoryStoreProviderControlHandle {
2228 inner: this.inner.clone(),
2229 };
2230 Ok(WeaveFactoryStoreProviderRequest::GetFactoryStore {dir: req.dir,
2231
2232 control_handle,
2233 })
2234 }
2235 _ => Err(fidl::Error::UnknownOrdinal {
2236 ordinal: header.ordinal,
2237 protocol_name: <WeaveFactoryStoreProviderMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
2238 }),
2239 }))
2240 },
2241 )
2242 }
2243}
2244
2245#[derive(Debug)]
2249pub enum WeaveFactoryStoreProviderRequest {
2250 GetFactoryStore {
2251 dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
2252 control_handle: WeaveFactoryStoreProviderControlHandle,
2253 },
2254}
2255
2256impl WeaveFactoryStoreProviderRequest {
2257 #[allow(irrefutable_let_patterns)]
2258 pub fn into_get_factory_store(
2259 self,
2260 ) -> Option<(
2261 fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
2262 WeaveFactoryStoreProviderControlHandle,
2263 )> {
2264 if let WeaveFactoryStoreProviderRequest::GetFactoryStore { dir, control_handle } = self {
2265 Some((dir, control_handle))
2266 } else {
2267 None
2268 }
2269 }
2270
2271 pub fn method_name(&self) -> &'static str {
2273 match *self {
2274 WeaveFactoryStoreProviderRequest::GetFactoryStore { .. } => "get_factory_store",
2275 }
2276 }
2277}
2278
2279#[derive(Debug, Clone)]
2280pub struct WeaveFactoryStoreProviderControlHandle {
2281 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
2282}
2283
2284impl WeaveFactoryStoreProviderControlHandle {
2285 pub fn shutdown_with_epitaph(&self, status: impl Into<fidl::Epitaph>) {
2286 self.inner.shutdown_with_epitaph(status.into())
2287 }
2288}
2289
2290impl fidl::endpoints::ControlHandle for WeaveFactoryStoreProviderControlHandle {
2291 fn shutdown(&self) {
2292 self.inner.shutdown()
2293 }
2294
2295 fn shutdown_with_epitaph(&self, status: fidl::Epitaph) {
2296 self.inner.shutdown_with_epitaph(status)
2297 }
2298
2299 fn is_closed(&self) -> bool {
2300 self.inner.channel().is_closed()
2301 }
2302 fn on_closed(&self) -> fidl::OnSignalsRef<'_> {
2303 self.inner.channel().on_closed()
2304 }
2305
2306 #[cfg(target_os = "fuchsia")]
2307 fn signal_peer(
2308 &self,
2309 clear_mask: zx::Signals,
2310 set_mask: zx::Signals,
2311 ) -> Result<(), zx_status::Status> {
2312 use fidl::Peered;
2313 self.inner.channel().signal_peer(clear_mask, set_mask)
2314 }
2315}
2316
2317impl WeaveFactoryStoreProviderControlHandle {}
2318
2319#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Hash)]
2320pub struct WidevineFactoryStoreProviderMarker;
2321
2322impl fidl::endpoints::ProtocolMarker for WidevineFactoryStoreProviderMarker {
2323 type Proxy = WidevineFactoryStoreProviderProxy;
2324 type RequestStream = WidevineFactoryStoreProviderRequestStream;
2325 #[cfg(target_os = "fuchsia")]
2326 type SynchronousProxy = WidevineFactoryStoreProviderSynchronousProxy;
2327
2328 const DEBUG_NAME: &'static str = "fuchsia.factory.WidevineFactoryStoreProvider";
2329}
2330impl fidl::endpoints::DiscoverableProtocolMarker for WidevineFactoryStoreProviderMarker {}
2331
2332pub trait WidevineFactoryStoreProviderProxyInterface: Send + Sync {
2333 fn r#get_factory_store(
2334 &self,
2335 dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
2336 ) -> Result<(), fidl::Error>;
2337}
2338#[derive(Debug)]
2339#[cfg(target_os = "fuchsia")]
2340pub struct WidevineFactoryStoreProviderSynchronousProxy {
2341 client: fidl::client::sync::Client,
2342}
2343
2344#[cfg(target_os = "fuchsia")]
2345impl fidl::endpoints::SynchronousProxy for WidevineFactoryStoreProviderSynchronousProxy {
2346 type Proxy = WidevineFactoryStoreProviderProxy;
2347 type Protocol = WidevineFactoryStoreProviderMarker;
2348
2349 fn from_channel(inner: fidl::Channel) -> Self {
2350 Self::new(inner)
2351 }
2352
2353 fn into_channel(self) -> fidl::Channel {
2354 self.client.into_channel()
2355 }
2356
2357 fn as_channel(&self) -> &fidl::Channel {
2358 self.client.as_channel()
2359 }
2360}
2361
2362#[cfg(target_os = "fuchsia")]
2363impl WidevineFactoryStoreProviderSynchronousProxy {
2364 pub fn new(channel: fidl::Channel) -> Self {
2365 Self { client: fidl::client::sync::Client::new(channel) }
2366 }
2367
2368 pub fn into_channel(self) -> fidl::Channel {
2369 self.client.into_channel()
2370 }
2371
2372 pub fn wait_for_event(
2375 &self,
2376 deadline: zx::MonotonicInstant,
2377 ) -> Result<WidevineFactoryStoreProviderEvent, fidl::Error> {
2378 WidevineFactoryStoreProviderEvent::decode(
2379 self.client.wait_for_event::<WidevineFactoryStoreProviderMarker>(deadline)?,
2380 )
2381 }
2382
2383 pub fn r#get_factory_store(
2384 &self,
2385 mut dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
2386 ) -> Result<(), fidl::Error> {
2387 self.client.send::<FactoryStoreProviderGetFactoryStoreRequest>(
2388 (dir,),
2389 0x21fa8e8bc0e1209e,
2390 fidl::encoding::DynamicFlags::empty(),
2391 )
2392 }
2393}
2394
2395#[cfg(target_os = "fuchsia")]
2396impl From<WidevineFactoryStoreProviderSynchronousProxy> for zx::NullableHandle {
2397 fn from(value: WidevineFactoryStoreProviderSynchronousProxy) -> Self {
2398 value.into_channel().into()
2399 }
2400}
2401
2402#[cfg(target_os = "fuchsia")]
2403impl From<fidl::Channel> for WidevineFactoryStoreProviderSynchronousProxy {
2404 fn from(value: fidl::Channel) -> Self {
2405 Self::new(value)
2406 }
2407}
2408
2409#[cfg(target_os = "fuchsia")]
2410impl fidl::endpoints::FromClient for WidevineFactoryStoreProviderSynchronousProxy {
2411 type Protocol = WidevineFactoryStoreProviderMarker;
2412
2413 fn from_client(value: fidl::endpoints::ClientEnd<WidevineFactoryStoreProviderMarker>) -> Self {
2414 Self::new(value.into_channel())
2415 }
2416}
2417
2418#[derive(Debug, Clone)]
2419pub struct WidevineFactoryStoreProviderProxy {
2420 client: fidl::client::Client<fidl::encoding::DefaultFuchsiaResourceDialect>,
2421}
2422
2423impl fidl::endpoints::Proxy for WidevineFactoryStoreProviderProxy {
2424 type Protocol = WidevineFactoryStoreProviderMarker;
2425
2426 fn from_channel(inner: ::fidl::AsyncChannel) -> Self {
2427 Self::new(inner)
2428 }
2429
2430 fn into_channel(self) -> Result<::fidl::AsyncChannel, Self> {
2431 self.client.into_channel().map_err(|client| Self { client })
2432 }
2433
2434 fn as_channel(&self) -> &::fidl::AsyncChannel {
2435 self.client.as_channel()
2436 }
2437}
2438
2439impl WidevineFactoryStoreProviderProxy {
2440 pub fn new(channel: ::fidl::AsyncChannel) -> Self {
2442 let protocol_name =
2443 <WidevineFactoryStoreProviderMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME;
2444 Self { client: fidl::client::Client::new(channel, protocol_name) }
2445 }
2446
2447 pub fn take_event_stream(&self) -> WidevineFactoryStoreProviderEventStream {
2453 WidevineFactoryStoreProviderEventStream {
2454 event_receiver: self.client.take_event_receiver(),
2455 }
2456 }
2457
2458 pub fn r#get_factory_store(
2459 &self,
2460 mut dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
2461 ) -> Result<(), fidl::Error> {
2462 WidevineFactoryStoreProviderProxyInterface::r#get_factory_store(self, dir)
2463 }
2464}
2465
2466impl WidevineFactoryStoreProviderProxyInterface for WidevineFactoryStoreProviderProxy {
2467 fn r#get_factory_store(
2468 &self,
2469 mut dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
2470 ) -> Result<(), fidl::Error> {
2471 self.client.send::<FactoryStoreProviderGetFactoryStoreRequest>(
2472 (dir,),
2473 0x21fa8e8bc0e1209e,
2474 fidl::encoding::DynamicFlags::empty(),
2475 )
2476 }
2477}
2478
2479pub struct WidevineFactoryStoreProviderEventStream {
2480 event_receiver: fidl::client::EventReceiver<fidl::encoding::DefaultFuchsiaResourceDialect>,
2481}
2482
2483impl std::marker::Unpin for WidevineFactoryStoreProviderEventStream {}
2484
2485impl futures::stream::FusedStream for WidevineFactoryStoreProviderEventStream {
2486 fn is_terminated(&self) -> bool {
2487 self.event_receiver.is_terminated()
2488 }
2489}
2490
2491impl futures::Stream for WidevineFactoryStoreProviderEventStream {
2492 type Item = Result<WidevineFactoryStoreProviderEvent, fidl::Error>;
2493
2494 fn poll_next(
2495 mut self: std::pin::Pin<&mut Self>,
2496 cx: &mut std::task::Context<'_>,
2497 ) -> std::task::Poll<Option<Self::Item>> {
2498 match futures::ready!(futures::stream::StreamExt::poll_next_unpin(
2499 &mut self.event_receiver,
2500 cx
2501 )?) {
2502 Some(buf) => {
2503 std::task::Poll::Ready(Some(WidevineFactoryStoreProviderEvent::decode(buf)))
2504 }
2505 None => std::task::Poll::Ready(None),
2506 }
2507 }
2508}
2509
2510#[derive(Debug)]
2511pub enum WidevineFactoryStoreProviderEvent {}
2512
2513impl WidevineFactoryStoreProviderEvent {
2514 fn decode(
2516 mut buf: <fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc,
2517 ) -> Result<WidevineFactoryStoreProviderEvent, fidl::Error> {
2518 let (bytes, _handles) = buf.split_mut();
2519 let (tx_header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
2520 debug_assert_eq!(tx_header.tx_id, 0);
2521 match tx_header.ordinal {
2522 _ => Err(fidl::Error::UnknownOrdinal {
2523 ordinal: tx_header.ordinal,
2524 protocol_name: <WidevineFactoryStoreProviderMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
2525 })
2526 }
2527 }
2528}
2529
2530pub struct WidevineFactoryStoreProviderRequestStream {
2532 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
2533 is_terminated: bool,
2534}
2535
2536impl std::marker::Unpin for WidevineFactoryStoreProviderRequestStream {}
2537
2538impl futures::stream::FusedStream for WidevineFactoryStoreProviderRequestStream {
2539 fn is_terminated(&self) -> bool {
2540 self.is_terminated
2541 }
2542}
2543
2544impl fidl::endpoints::RequestStream for WidevineFactoryStoreProviderRequestStream {
2545 type Protocol = WidevineFactoryStoreProviderMarker;
2546 type ControlHandle = WidevineFactoryStoreProviderControlHandle;
2547
2548 fn from_channel(channel: ::fidl::AsyncChannel) -> Self {
2549 Self { inner: std::sync::Arc::new(fidl::ServeInner::new(channel)), is_terminated: false }
2550 }
2551
2552 fn control_handle(&self) -> Self::ControlHandle {
2553 WidevineFactoryStoreProviderControlHandle { inner: self.inner.clone() }
2554 }
2555
2556 fn into_inner(
2557 self,
2558 ) -> (::std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>, bool)
2559 {
2560 (self.inner, self.is_terminated)
2561 }
2562
2563 fn from_inner(
2564 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
2565 is_terminated: bool,
2566 ) -> Self {
2567 Self { inner, is_terminated }
2568 }
2569}
2570
2571impl futures::Stream for WidevineFactoryStoreProviderRequestStream {
2572 type Item = Result<WidevineFactoryStoreProviderRequest, fidl::Error>;
2573
2574 fn poll_next(
2575 mut self: std::pin::Pin<&mut Self>,
2576 cx: &mut std::task::Context<'_>,
2577 ) -> std::task::Poll<Option<Self::Item>> {
2578 let this = &mut *self;
2579 if this.inner.check_shutdown(cx) {
2580 this.is_terminated = true;
2581 return std::task::Poll::Ready(None);
2582 }
2583 if this.is_terminated {
2584 panic!("polled WidevineFactoryStoreProviderRequestStream after completion");
2585 }
2586 fidl::encoding::with_tls_decode_buf::<_, fidl::encoding::DefaultFuchsiaResourceDialect>(
2587 |bytes, handles| {
2588 match this.inner.channel().read_etc(cx, bytes, handles) {
2589 std::task::Poll::Ready(Ok(())) => {}
2590 std::task::Poll::Pending => return std::task::Poll::Pending,
2591 std::task::Poll::Ready(Err(zx_status::Status::PEER_CLOSED)) => {
2592 this.is_terminated = true;
2593 return std::task::Poll::Ready(None);
2594 }
2595 std::task::Poll::Ready(Err(e)) => {
2596 return std::task::Poll::Ready(Some(Err(fidl::Error::ServerRequestRead(
2597 e.into(),
2598 ))));
2599 }
2600 }
2601
2602 let (header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
2604
2605 std::task::Poll::Ready(Some(match header.ordinal {
2606 0x21fa8e8bc0e1209e => {
2607 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2608 let mut req = fidl::new_empty!(FactoryStoreProviderGetFactoryStoreRequest, fidl::encoding::DefaultFuchsiaResourceDialect);
2609 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<FactoryStoreProviderGetFactoryStoreRequest>(&header, _body_bytes, handles, &mut req)?;
2610 let control_handle = WidevineFactoryStoreProviderControlHandle {
2611 inner: this.inner.clone(),
2612 };
2613 Ok(WidevineFactoryStoreProviderRequest::GetFactoryStore {dir: req.dir,
2614
2615 control_handle,
2616 })
2617 }
2618 _ => Err(fidl::Error::UnknownOrdinal {
2619 ordinal: header.ordinal,
2620 protocol_name: <WidevineFactoryStoreProviderMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
2621 }),
2622 }))
2623 },
2624 )
2625 }
2626}
2627
2628#[derive(Debug)]
2632pub enum WidevineFactoryStoreProviderRequest {
2633 GetFactoryStore {
2634 dir: fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
2635 control_handle: WidevineFactoryStoreProviderControlHandle,
2636 },
2637}
2638
2639impl WidevineFactoryStoreProviderRequest {
2640 #[allow(irrefutable_let_patterns)]
2641 pub fn into_get_factory_store(
2642 self,
2643 ) -> Option<(
2644 fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
2645 WidevineFactoryStoreProviderControlHandle,
2646 )> {
2647 if let WidevineFactoryStoreProviderRequest::GetFactoryStore { dir, control_handle } = self {
2648 Some((dir, control_handle))
2649 } else {
2650 None
2651 }
2652 }
2653
2654 pub fn method_name(&self) -> &'static str {
2656 match *self {
2657 WidevineFactoryStoreProviderRequest::GetFactoryStore { .. } => "get_factory_store",
2658 }
2659 }
2660}
2661
2662#[derive(Debug, Clone)]
2663pub struct WidevineFactoryStoreProviderControlHandle {
2664 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
2665}
2666
2667impl WidevineFactoryStoreProviderControlHandle {
2668 pub fn shutdown_with_epitaph(&self, status: impl Into<fidl::Epitaph>) {
2669 self.inner.shutdown_with_epitaph(status.into())
2670 }
2671}
2672
2673impl fidl::endpoints::ControlHandle for WidevineFactoryStoreProviderControlHandle {
2674 fn shutdown(&self) {
2675 self.inner.shutdown()
2676 }
2677
2678 fn shutdown_with_epitaph(&self, status: fidl::Epitaph) {
2679 self.inner.shutdown_with_epitaph(status)
2680 }
2681
2682 fn is_closed(&self) -> bool {
2683 self.inner.channel().is_closed()
2684 }
2685 fn on_closed(&self) -> fidl::OnSignalsRef<'_> {
2686 self.inner.channel().on_closed()
2687 }
2688
2689 #[cfg(target_os = "fuchsia")]
2690 fn signal_peer(
2691 &self,
2692 clear_mask: zx::Signals,
2693 set_mask: zx::Signals,
2694 ) -> Result<(), zx_status::Status> {
2695 use fidl::Peered;
2696 self.inner.channel().signal_peer(clear_mask, set_mask)
2697 }
2698}
2699
2700impl WidevineFactoryStoreProviderControlHandle {}
2701
2702mod internal {
2703 use super::*;
2704
2705 impl fidl::encoding::ResourceTypeMarker for FactoryStoreProviderGetFactoryStoreRequest {
2706 type Borrowed<'a> = &'a mut Self;
2707 fn take_or_borrow<'a>(
2708 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
2709 ) -> Self::Borrowed<'a> {
2710 value
2711 }
2712 }
2713
2714 unsafe impl fidl::encoding::TypeMarker for FactoryStoreProviderGetFactoryStoreRequest {
2715 type Owned = Self;
2716
2717 #[inline(always)]
2718 fn inline_align(_context: fidl::encoding::Context) -> usize {
2719 4
2720 }
2721
2722 #[inline(always)]
2723 fn inline_size(_context: fidl::encoding::Context) -> usize {
2724 4
2725 }
2726 }
2727
2728 unsafe impl
2729 fidl::encoding::Encode<
2730 FactoryStoreProviderGetFactoryStoreRequest,
2731 fidl::encoding::DefaultFuchsiaResourceDialect,
2732 > for &mut FactoryStoreProviderGetFactoryStoreRequest
2733 {
2734 #[inline]
2735 unsafe fn encode(
2736 self,
2737 encoder: &mut fidl::encoding::Encoder<
2738 '_,
2739 fidl::encoding::DefaultFuchsiaResourceDialect,
2740 >,
2741 offset: usize,
2742 _depth: fidl::encoding::Depth,
2743 ) -> fidl::Result<()> {
2744 encoder.debug_check_bounds::<FactoryStoreProviderGetFactoryStoreRequest>(offset);
2745 fidl::encoding::Encode::<
2747 FactoryStoreProviderGetFactoryStoreRequest,
2748 fidl::encoding::DefaultFuchsiaResourceDialect,
2749 >::encode(
2750 (<fidl::encoding::Endpoint<
2751 fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
2752 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
2753 &mut self.dir
2754 ),),
2755 encoder,
2756 offset,
2757 _depth,
2758 )
2759 }
2760 }
2761 unsafe impl<
2762 T0: fidl::encoding::Encode<
2763 fidl::encoding::Endpoint<
2764 fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
2765 >,
2766 fidl::encoding::DefaultFuchsiaResourceDialect,
2767 >,
2768 >
2769 fidl::encoding::Encode<
2770 FactoryStoreProviderGetFactoryStoreRequest,
2771 fidl::encoding::DefaultFuchsiaResourceDialect,
2772 > for (T0,)
2773 {
2774 #[inline]
2775 unsafe fn encode(
2776 self,
2777 encoder: &mut fidl::encoding::Encoder<
2778 '_,
2779 fidl::encoding::DefaultFuchsiaResourceDialect,
2780 >,
2781 offset: usize,
2782 depth: fidl::encoding::Depth,
2783 ) -> fidl::Result<()> {
2784 encoder.debug_check_bounds::<FactoryStoreProviderGetFactoryStoreRequest>(offset);
2785 self.0.encode(encoder, offset + 0, depth)?;
2789 Ok(())
2790 }
2791 }
2792
2793 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
2794 for FactoryStoreProviderGetFactoryStoreRequest
2795 {
2796 #[inline(always)]
2797 fn new_empty() -> Self {
2798 Self {
2799 dir: fidl::new_empty!(
2800 fidl::encoding::Endpoint<
2801 fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
2802 >,
2803 fidl::encoding::DefaultFuchsiaResourceDialect
2804 ),
2805 }
2806 }
2807
2808 #[inline]
2809 unsafe fn decode(
2810 &mut self,
2811 decoder: &mut fidl::encoding::Decoder<
2812 '_,
2813 fidl::encoding::DefaultFuchsiaResourceDialect,
2814 >,
2815 offset: usize,
2816 _depth: fidl::encoding::Depth,
2817 ) -> fidl::Result<()> {
2818 decoder.debug_check_bounds::<Self>(offset);
2819 fidl::decode!(
2821 fidl::encoding::Endpoint<
2822 fidl::endpoints::ServerEnd<fidl_fuchsia_io::DirectoryMarker>,
2823 >,
2824 fidl::encoding::DefaultFuchsiaResourceDialect,
2825 &mut self.dir,
2826 decoder,
2827 offset + 0,
2828 _depth
2829 )?;
2830 Ok(())
2831 }
2832 }
2833}