Current section

Files

Jump to
ca lib application.ex
Raw

lib/application.ex

defmodule CA do
@moduledoc """
The main CA module implements Elixir application functionality
that runs TCP and HTTP connections under Erlang/OTP supervision.
"""
use Application
def port(app) do
Application.fetch_env!(:ca, app)
end
def start(_type, _args) do
:logger.add_handlers(:ca)
Supervisor.start_link(
[
{Task.Supervisor, name: CA.TaskSupervisor},
{CA.CMP, port: port(:cmp)},
{CA.CMC, port: port(:cmc)},
{CA.OCSP, port: port(:ocsp)},
{CA.TSP, port: port(:tsp)},
# { CA.EUDI.Issuer, port: port(:issuer), plug: CA.EUDI.Issuer, scheme: :http, thousand_island_options: [num_acceptors: 1] },
# { CA.EUDI.Verifier, port: port(:verifier), plug: CA.EUDI.Verifier, scheme: :http, thousand_island_options: [num_acceptors: 1] },
# { CA.EUDI.Wallet, port: port(:wallet), plug: CA.EUDI.Wallet, scheme: :http, thousand_island_options: [num_acceptors: 1] },
{CA.EST, port: port(:est), plug: CA.EST, scheme: :http, thousand_island_options: [num_acceptors: 1]}
], strategy: :one_for_one, name: CA.Supervisor)
end
end