# Module cloudi_service_api_batch

- Description
- Data Types
- Function Index
- Function Details

### CloudI Service API Batch

A service that provides batch execution of CloudI services.

Copyright © 2019-2021 Michael Truog

Version: 2.0.3 Dec 3 2021 18:52:58 ------------------------------------------------------------------------

Behaviours: `cloudi_service`.

Authors: Michael Truog (`mjtruog at protonmail dot com`).

## Description

### CloudI Service API Batch

A service that provides batch execution of CloudI services.

## Data Types

### agent()

`agent() = cloudi:agent()`

### module_response()

`module_response(Result) = {{ok, Result}, NewAgent::agent()} | {{error, cloudi:error_reason()}, NewAgent::agent()}`

### service_configurations()

`service_configurations() = [cloudi_service_api:service_internal() | cloudi_service_api:service_external() | cloudi_service_api:service_proplist(), ...]`

### service_name()

`service_name() = cloudi:service_name()`

### timeout_milliseconds()

`timeout_milliseconds() = cloudi:timeout_milliseconds()`

## Function Index

cloudi_service_handle_info/3 |
cloudi_service_handle_request/11 |
cloudi_service_init/4 |
cloudi_service_terminate/3 |
queue_clear/3 |
queue_clear/4 |
services_add/4 |
services_add/5 |
services_remove/3 |
services_remove/4 |
services_restart/3 |
services_restart/4 |

## Function Details

### cloudi_service_handle_info/3

`cloudi_service_handle_info(X1, State, Dispatcher) -> any()`

### cloudi_service_handle_request/11

`cloudi_service_handle_request(RequestType, Name, Pattern, RequestInfo, Request, Timeout, Priority, TransId, Pid, State, Dispatcher) -> any()`

### cloudi_service_init/4

`cloudi_service_init(Args, Prefix, Timeout, Dispatcher) -> any()`

### cloudi_service_terminate/3

`cloudi_service_terminate(Reason, Timeout, State) -> any()`

### queue_clear/3

`queue_clear(Agent::agent(), Prefix::service_name(), QueueName::nonempty_string()) -> module_response(ok | {error, not_found})`

### queue_clear/4

`queue_clear(Agent::agent(), Prefix::service_name(), QueueName::nonempty_string(), Timeout::timeout_milliseconds()) -> module_response(ok | {error, not_found})`

### services_add/4

`services_add(Agent::agent(), Prefix::service_name(), QueueName::nonempty_string(), Configs::service_configurations()) -> module_response(CountQueued::non_neg_integer() | {error, purged})`

### services_add/5

`services_add(Agent::agent(), Prefix::service_name(), QueueName::nonempty_string(), Configs::service_configurations(), Timeout::timeout_milliseconds()) -> module_response(CountQueued::non_neg_integer() | {error, purged})`

### services_remove/3

`services_remove(Agent::agent(), Prefix::service_name(), QueueName::nonempty_string()) -> module_response(ok | {error, not_found})`

### services_remove/4

`services_remove(Agent::agent(), Prefix::service_name(), QueueName::nonempty_string(), Timeout::timeout_milliseconds()) -> module_response(ok | {error, not_found})`

### services_restart/3

`services_restart(Agent::agent(), Prefix::service_name(), QueueName::nonempty_string()) -> module_response(ok | {error, not_found | not_running})`

### services_restart/4

`services_restart(Agent::agent(), Prefix::service_name(), QueueName::nonempty_string(), Timeout::timeout_milliseconds()) -> module_response(ok | {error, not_found | not_running})`

Generated by EDoc