Lines Matching refs:dispatcher
1364 SDKCtlIODispatcher* const dispatcher = &sdkctl->io_dispatcher; in _sdkctl_io_dispatcher_start() local
1366 dispatcher->state = SDKCTL_IODISP_EXPECT_HEADER; in _sdkctl_io_dispatcher_start()
1367 dispatcher->sdkctl = sdkctl; in _sdkctl_io_dispatcher_start()
1368 dispatcher->packet = NULL; in _sdkctl_io_dispatcher_start()
1369 dispatcher->current_query = NULL; in _sdkctl_io_dispatcher_start()
1372 async_socket_read_rel(dispatcher->sdkctl->as, &dispatcher->packet_header, in _sdkctl_io_dispatcher_start()
1374 dispatcher, -1); in _sdkctl_io_dispatcher_start()
1380 SDKCtlIODispatcher* const dispatcher = &sdkctl->io_dispatcher; in _sdkctl_io_dispatcher_reset() local
1383 if (dispatcher->current_query != NULL) { in _sdkctl_io_dispatcher_reset()
1384 SDKCtlQuery* const query = dispatcher->current_query; in _sdkctl_io_dispatcher_reset()
1385 dispatcher->current_query = NULL; in _sdkctl_io_dispatcher_reset()
1391 if (dispatcher->packet != NULL) { in _sdkctl_io_dispatcher_reset()
1392 _sdkctl_packet_release(dispatcher->packet); in _sdkctl_io_dispatcher_reset()
1393 dispatcher->packet = NULL; in _sdkctl_io_dispatcher_reset()
1397 dispatcher->state = SDKCTL_IODISP_EXPECT_HEADER; in _sdkctl_io_dispatcher_reset()
1410 _on_io_dispatcher_io_failure(SDKCtlIODispatcher* dispatcher, in _on_io_dispatcher_io_failure() argument
1413 SDKCtlSocket* const sdkctl = dispatcher->sdkctl; in _on_io_dispatcher_io_failure()
1429 _on_io_dispatcher_io_cancelled(SDKCtlIODispatcher* dispatcher, in _on_io_dispatcher_io_cancelled() argument
1432 T("SDKCtl %s: Dispatcher I/O cancelled.", dispatcher->sdkctl->service_name); in _on_io_dispatcher_io_cancelled()
1436 if (dispatcher->current_query != NULL) { in _on_io_dispatcher_io_cancelled()
1437 SDKCtlQuery* const query = dispatcher->current_query; in _on_io_dispatcher_io_cancelled()
1438 dispatcher->current_query = NULL; in _on_io_dispatcher_io_cancelled()
1444 if (dispatcher->packet != NULL) { in _on_io_dispatcher_io_cancelled()
1445 _sdkctl_packet_release(dispatcher->packet); in _on_io_dispatcher_io_cancelled()
1446 dispatcher->packet = NULL; in _on_io_dispatcher_io_cancelled()
1452 _on_io_dispatcher_packet_header(SDKCtlIODispatcher* dispatcher, in _on_io_dispatcher_packet_header() argument
1455 SDKCtlSocket* const sdkctl = dispatcher->sdkctl; in _on_io_dispatcher_packet_header()
1458 dispatcher->sdkctl->service_name, dispatcher->packet_header.type, in _on_io_dispatcher_packet_header()
1459 dispatcher->packet_header.size); in _on_io_dispatcher_packet_header()
1462 if (dispatcher->packet_header.signature != _sdkctl_packet_sig) { in _on_io_dispatcher_packet_header()
1464 sdkctl->service_name, dispatcher->packet_header.signature, in _on_io_dispatcher_packet_header()
1465 dispatcher->packet_header.type, dispatcher->packet_header.size); in _on_io_dispatcher_packet_header()
1469 _on_io_dispatcher_io_failure(dispatcher, asio); in _on_io_dispatcher_packet_header()
1481 if (dispatcher->packet_header.type == SDKCTL_PACKET_QUERY_RESPONSE) { in _on_io_dispatcher_packet_header()
1486 dispatcher->state = SDKCTL_IODISP_EXPECT_QUERY_REPLY_HEADER; in _on_io_dispatcher_packet_header()
1487 async_socket_read_rel(sdkctl->as, &dispatcher->query_reply_header.query_id, in _on_io_dispatcher_packet_header()
1489 _on_sdkctl_io_dispatcher_io, dispatcher, -1); in _on_io_dispatcher_packet_header()
1494 dispatcher->state = SDKCTL_IODISP_EXPECT_DATA; in _on_io_dispatcher_packet_header()
1495 dispatcher->packet = in _on_io_dispatcher_packet_header()
1496 _sdkctl_packet_new(sdkctl, dispatcher->packet_header.size, in _on_io_dispatcher_packet_header()
1497 dispatcher->packet_header.type); in _on_io_dispatcher_packet_header()
1499 async_socket_read_rel(sdkctl->as, dispatcher->packet + 1, in _on_io_dispatcher_packet_header()
1500 dispatcher->packet_header.size - sizeof(SDKCtlPacketHeader), in _on_io_dispatcher_packet_header()
1501 _on_sdkctl_io_dispatcher_io, dispatcher, -1); in _on_io_dispatcher_packet_header()
1509 _on_io_dispatcher_packet(SDKCtlIODispatcher* dispatcher, AsyncSocketIO* asio) in _on_io_dispatcher_packet() argument
1511 SDKCtlSocket* const sdkctl = dispatcher->sdkctl; in _on_io_dispatcher_packet()
1512 SDKCtlPacket* const packet = dispatcher->packet; in _on_io_dispatcher_packet()
1513 dispatcher->packet = NULL; in _on_io_dispatcher_packet()
1516 dispatcher->sdkctl->service_name, dispatcher->packet_header.type, in _on_io_dispatcher_packet()
1517 dispatcher->packet_header.size); in _on_io_dispatcher_packet()
1523 dispatcher->state = SDKCTL_IODISP_EXPECT_HEADER; in _on_io_dispatcher_packet()
1524 async_socket_read_rel(sdkctl->as, &dispatcher->packet_header, sizeof(SDKCtlPacketHeader), in _on_io_dispatcher_packet()
1525 _on_sdkctl_io_dispatcher_io, dispatcher, -1); in _on_io_dispatcher_packet()
1531 _on_io_dispatcher_query_reply_header(SDKCtlIODispatcher* dispatcher, in _on_io_dispatcher_query_reply_header() argument
1534 SDKCtlSocket* const sdkctl = dispatcher->sdkctl; in _on_io_dispatcher_query_reply_header()
1538 dispatcher->sdkctl->service_name, dispatcher->query_reply_header.query_id); in _on_io_dispatcher_query_reply_header()
1542 dispatcher->current_query = in _on_io_dispatcher_query_reply_header()
1543 _sdkctl_socket_remove_query_id(sdkctl, dispatcher->query_reply_header.query_id); in _on_io_dispatcher_query_reply_header()
1544 query = dispatcher->current_query; in _on_io_dispatcher_query_reply_header()
1546 dispatcher->packet_header.size - sizeof(SDKCtlQueryReplyHeader); in _on_io_dispatcher_query_reply_header()
1547 dispatcher->state = SDKCTL_IODISP_EXPECT_QUERY_REPLY_DATA; in _on_io_dispatcher_query_reply_header()
1551 dispatcher->sdkctl->service_name, dispatcher->query_reply_header.query_id); in _on_io_dispatcher_query_reply_header()
1555 dispatcher->state = SDKCTL_IODISP_EXPECT_QUERY_REPLY_DATA; in _on_io_dispatcher_query_reply_header()
1556 dispatcher->packet = in _on_io_dispatcher_query_reply_header()
1557 _sdkctl_packet_new(sdkctl, dispatcher->packet_header.size, in _on_io_dispatcher_query_reply_header()
1558 dispatcher->packet_header.type); in _on_io_dispatcher_query_reply_header()
1560 memcpy(&dispatcher->packet->header, &dispatcher->query_reply_header, in _on_io_dispatcher_query_reply_header()
1562 async_socket_read_rel(sdkctl->as, dispatcher->packet + 1, query_data_size, in _on_io_dispatcher_query_reply_header()
1563 _on_sdkctl_io_dispatcher_io, dispatcher, -1); in _on_io_dispatcher_query_reply_header()
1583 dispatcher, -1); in _on_io_dispatcher_query_reply_header()
1591 _on_io_dispatcher_query_reply(SDKCtlIODispatcher* dispatcher, AsyncSocketIO* asio) in _on_io_dispatcher_query_reply() argument
1593 SDKCtlSocket* const sdkctl = dispatcher->sdkctl; in _on_io_dispatcher_query_reply()
1594 SDKCtlQuery* const query = dispatcher->current_query; in _on_io_dispatcher_query_reply()
1595 dispatcher->current_query = NULL; in _on_io_dispatcher_query_reply()
1598 _ANDROID_ASSERT(query->header.query_id == dispatcher->query_reply_header.query_id, in _on_io_dispatcher_query_reply()
1602 dispatcher->sdkctl->service_name, query, query->header.query_id, in _on_io_dispatcher_query_reply()
1611 if (dispatcher->packet != NULL) { in _on_io_dispatcher_query_reply()
1612 _sdkctl_packet_release(dispatcher->packet); in _on_io_dispatcher_query_reply()
1613 dispatcher->packet = NULL; in _on_io_dispatcher_query_reply()
1618 dispatcher->state = SDKCTL_IODISP_EXPECT_HEADER; in _on_io_dispatcher_query_reply()
1619 async_socket_read_rel(sdkctl->as, &dispatcher->packet_header, sizeof(SDKCtlPacketHeader), in _on_io_dispatcher_query_reply()
1620 _on_sdkctl_io_dispatcher_io, dispatcher, -1); in _on_io_dispatcher_query_reply()
1637 SDKCtlIODispatcher* const dispatcher = (SDKCtlIODispatcher*)io_opaque; in _on_sdkctl_io_dispatcher_io() local
1638 SDKCtlSocket* const sdkctl = dispatcher->sdkctl; in _on_sdkctl_io_dispatcher_io()
1655 _on_io_dispatcher_io_failure(dispatcher, asio); in _on_sdkctl_io_dispatcher_io()
1672 _on_io_dispatcher_io_cancelled(dispatcher, asio); in _on_sdkctl_io_dispatcher_io()
1683 _on_io_dispatcher_io_failure(dispatcher, asio); in _on_sdkctl_io_dispatcher_io()
1695 switch (dispatcher->state) { in _on_sdkctl_io_dispatcher_io()
1698 action = _on_io_dispatcher_packet_header(dispatcher, asio); in _on_sdkctl_io_dispatcher_io()
1703 action = _on_io_dispatcher_query_reply_header(dispatcher, asio); in _on_sdkctl_io_dispatcher_io()
1708 action = _on_io_dispatcher_query_reply(dispatcher, asio); in _on_sdkctl_io_dispatcher_io()
1713 action = _on_io_dispatcher_packet(dispatcher, asio); in _on_sdkctl_io_dispatcher_io()
1718 sdkctl->service_name, dispatcher->state); in _on_sdkctl_io_dispatcher_io()
1735 SDKCtlIODispatcher* const dispatcher = &sdkctl->io_dispatcher; in _sdkctl_socket_cancel_all_queries() local
1739 if (dispatcher->current_query != NULL) { in _sdkctl_socket_cancel_all_queries()
1740 SDKCtlQuery* const query = dispatcher->current_query; in _sdkctl_socket_cancel_all_queries()
1741 dispatcher->current_query = NULL; in _sdkctl_socket_cancel_all_queries()