@@ -1569,43 +1569,20 @@ Returned `status` value is:
15691569
15701570### Functions exposed by the host
15711571
1572- #### ` proxy_register_shared_queue `
1572+ #### ` proxy_open_shared_queue `
15731573
15741574* params:
1575- - ` i32 (const char *) name_data `
1576- - ` i32 (size_t) name_size `
1575+ - ` i32 (const char *) queue_name_data `
1576+ - ` i32 (size_t) queue_name_size `
1577+ - ` i32 (bool) create_if_not_exist `
15771578 - ` i32 (uint32_t *) return_queue_id `
15781579* returns:
15791580 - ` i32 ( ` [ ` proxy_status_t ` ] ` ) status `
15801581
1581- Registers shared queue under a name ( ` name_data ` , ` name_size ` ).
1582+ Opens named queue ( ` queue_name_data ` , ` queue_name_size ` ).
15821583
1583- If the named queue already exists, then it's going to be opened
1584- instead of creating a new empty queue.
1585-
1586- Items can be enqueued/dequeued on the created/opened queue using
1587- [ ` proxy_enqueue_shared_queue ` ] and/or [ ` proxy_dequeue_shared_queue ` ]
1588- with ` return_queue_id ` .
1589-
1590- Returned ` status ` value is:
1591- - ` OK ` on success.
1592- - ` INVALID_MEMORY_ACCESS ` when ` name_data ` , ` name_size `
1593- and/or ` return_queue_id ` point to invalid memory address.
1594-
1595-
1596- #### ` proxy_resolve_shared_queue `
1597-
1598- * params:
1599- - ` i32 (const char *) vm_id_data `
1600- - ` i32 (size_t) vm_id_size `
1601- - ` i32 (const char *) name_data `
1602- - ` i32 (size_t) name_size `
1603- - ` i32 (uint32_t *) return_queue_id `
1604- * returns:
1605- - ` i32 ( ` [ ` proxy_status_t ` ] ` ) status `
1606-
1607- Resolves existing shared queue using the provided VM ID (` vm_id_data ` ,
1608- ` vm_id_size ` ) and name (` name_data ` , ` name_size ` ).
1584+ If ` create_if_not_exist ` is ` true ` and there is no shared queue with
1585+ that name, then it will be created.
16091586
16101587Items can be enqueued/dequeued on the opened queue using
16111588[ ` proxy_enqueue_shared_queue ` ] and/or [ ` proxy_dequeue_shared_queue ` ]
@@ -1657,6 +1634,18 @@ Returned `status` value is:
16571634 and/or ` return_value_size ` point to invalid memory address.
16581635
16591636
1637+ #### ` proxy_delete_shared_queue `
1638+
1639+ * params:
1640+ - ` i32 (uint32_t) queue_id `
1641+ * returns:
1642+ - ` i32 ( ` [ ` proxy_status_t ` ] ` ) status `
1643+
1644+ Deletes previously created shared queue (` queue_id ` ).
1645+ - ` OK ` on success.
1646+ - ` UNKNOWN_RESOURCE_ID ` for unknown ` queue_id ` .
1647+
1648+
16601649### Callbacks exposed by the Wasm module
16611650
16621651#### ` proxy_on_queue_ready `
@@ -2221,10 +2210,10 @@ changes to unrelated connections/requests.
22212210[ `proxy_on_grpc_close` ] : #proxy_on_grpc_close
22222211[ `proxy_set_shared_data` ] : #proxy_set_shared_data
22232212[ `proxy_get_shared_data` ] : #proxy_get_shared_data
2224- [ `proxy_register_shared_queue` ] : #proxy_register_shared_queue
2225- [ `proxy_resolve_shared_queue` ] : #proxy_resolve_shared_queue
2213+ [ `proxy_open_shared_queue` ] : #proxy_open_shared_queue
22262214[ `proxy_enqueue_shared_queue` ] : #proxy_enqueue_shared_queue
22272215[ `proxy_dequeue_shared_queue` ] : #proxy_dequeue_shared_queue
2216+ [ `proxy_delete_shared_queue` ] : #proxy_delete_shared_queue
22282217[ `proxy_on_queue_ready` ] : #proxy_on_queue_ready
22292218[ `proxy_define_metric` ] : #proxy_define_metric
22302219[ `proxy_record_metric` ] : #proxy_record_metric
0 commit comments