inets — inets v9.3.1

Search documentation of inets

# View Source inets (inets v9.3.1)

The Inets services API.

This module provides the most basic API to the clients and servers that are part of the `Inets` application, such as start and stop.

### Data types

Type definitions that are used more than once in this module:

`service() = httpc | httpd`

`property() = atom()`

### See also

`httpc`, `httpd`

# Summary

## Types

inets_service()
service_info()

## Functions

service_names()

Returns a list of available service names.

services()

Returns a list of currently running services.

services_info()

Returns a list of currently running services where each service is described by an `[{Option, Value}]` list. The information in the list is specific for each service and each service has probably its own info function that gives more details about the service. If specific service info returns `{error, Reason}`, Info will contain Reason term.

start()

Equivalent to `start/1`.

start(Type)

Starts the `Inets` application. Default type is `temporary`. See also `application`.

start(Service, ServiceConfig)

Equivalent to `start/3`.

start(Service, ServiceConfig, How)

Dynamically starts an `Inets` service after the `Inets` application has been started.

stop()

Stops the `Inets` application. See also `application`.

stop(Service, Reference)

Stops a started service of the `Inets` application or takes down a `stand_alone`-service gracefully. When option `stand_alone` is used in start, only the pid is a valid argument to stop.

# Types

Link to this type

# inets_service()

View Source (not exported)

    -type inets_service() :: httpd | httpc.

Link to this type

# service_info()

View Source (not exported)

    -type service_info() ::
              {inets_service(), pid(), [{profile, atom()}] | no_such_service | service_not_available}.

# Functions

Link to this function

# service_names()

View Source

    -spec service_names() -> [inets_service()].

Returns a list of available service names.

Link to this function

# services()

View Source

    -spec services() -> [{inets_service(), pid()}] | {error, inets_not_started}.

Returns a list of currently running services.

> #### Note

> Services started as `stand_alone` are not listed.

Link to this function

# services_info()

View Source

    -spec services_info() -> [service_info()] | {error, inets_not_started}.

Returns a list of currently running services where each service is described by an `[{Option, Value}]` list. The information in the list is specific for each service and each service has probably its own info function that gives more details about the service. If specific service info returns `{error, Reason}`, Info will contain Reason term.

Link to this function

# start()

View Source

    -spec start() -> ok | {error, Reason} when Reason :: term().

Equivalent to `start/1`.

Link to this function

# start(Type)

View Source

    -spec start(Type) -> ok | {error, Reason} when Type :: application:restart_type(), Reason :: term().

Starts the `Inets` application. Default type is `temporary`. See also `application`.

Link to this function

# start(Service, ServiceConfig)

View Source

    -spec start(Service, ServiceConfig) -> Result
                   when
                       Service :: inets_service(),
                       ServiceConfig :: ConfPropList | ConfFile,
                       ConfPropList :: [{Property, Value}],
                       ConfFile :: string(),
                       Property :: term(),
                       Value :: term(),
                       Result :: {ok, pid()} | {error, term()}.

Equivalent to `start/3`.

Link to this function

# start(Service, ServiceConfig, How)

View Source

    -spec start(Service, ServiceConfig, How) -> Result
                   when
                       Service :: inets_service(),
                       ServiceConfig :: ConfPropList | ConfFile,
                       How :: inets | stand_alone,
                       ConfPropList :: [{Property, Value}],
                       ConfFile :: string(),
                       Property :: term(),
                       Value :: term(),
                       Result :: {ok, pid()} | {error, term()}.

Dynamically starts an `Inets` service after the `Inets` application has been started.

> #### Note

> Dynamically started services are not handled by application takeover and failover behavior when `Inets` is run as a distributed application. Nor are they automatically restarted when the `Inets` application is restarted. As long as the `Inets` application is operational, they are supervised and can be soft code upgraded.

> A service started as `stand_alone`, that is, the service is not started as part of the `Inets` application, lose all OTP application benefits, such as soft upgrade. The `stand_alone`-service is linked to the process that started it. Usually some supervision functionality is still in place and in some sense the calling process becomes the top supervisor.

> #### Warning

> The stand_alone option is considered deprecated.

Link to this function

# stop()

View Source

    -spec stop() -> ok.

Stops the `Inets` application. See also `application`.

Link to this function

# stop(Service, Reference)

View Source

    -spec stop(Service, Reference) -> ok | {error, Reason}
                  when
                      Service :: inets_service() | stand_alone,
                      Reference :: pid() | term(),
                      Reason :: term().

Stops a started service of the `Inets` application or takes down a `stand_alone`-service gracefully. When option `stand_alone` is used in start, only the pid is a valid argument to stop.