Packages
ndc_ex_sdk
0.2.26
0.2.30
0.2.29
0.2.27
0.2.26
0.2.25
0.2.24
0.2.23
0.2.22
0.2.21
0.2.20
0.2.19
0.2.18
0.2.17
0.2.16
0.2.15
0.2.14
0.2.13
0.2.12
0.2.11
0.2.10
0.2.9
0.2.8
0.2.7
0.2.6
0.2.4
0.2.3
0.2.2
0.2.1
0.2.0
0.1.9
0.1.8
0.1.7
0.1.6
0.1.5
0.1.4
0.1.3
0.1.2
0.1.1
0.1.0
0.0.10
0.0.9
0.0.8
0.0.7
0.0.6
0.0.5
0.0.4
0.0.3
0.0.2
0.0.1
This is an Elixir package that wrapps any NDC-compliant API. It's host-agnostic and quite flexible-through-configuration so that it can reach NDC hosts with a certain flexibility
Current section
Files
Jump to
Current section
Files
lib/message/ndc_merge.ex
defmodule NDCMerge do
def build_body do
end
def get_method_headers(generic_h, method_h) when is_nil(method_h), do: generic_h
def get_method_headers(generic_h, method_h), do: generic_h ++ method_h
def get_headers(headers, method) do
Enum.map(headers, fn ({key, value}) ->
{key, String.replace(value, "{{NDC-method}}", Atom.to_string(method))}
end)
end
def get_headers_consumer(headers, consumer) when is_nil(consumer), do: headers
def get_headers_consumer(headers, consumer), do: headers ++ consumer
def getData(data, credentials) when is_nil(credentials), do: data
def getData(data, credentials), do: data ++ credentials
def is_ssl(config, path) when config == nil or path == nil, do: [timeout: 60000, recv_timeout: 60000]
def is_ssl(ssl_config, path) when ssl_config != nil do
path = "#{path}keys/"
[
hackney: [ # :hackney options
ssl_options: [ # :ssl options
cacertfile: path <> ssl_config[:cacertfile], # CA certificate used to validate server cert; path(), "string" is ok
certfile: path <> ssl_config[:certfile], # client certificate, signed by CA; path(), "string" is ok
keyfile: path <> ssl_config[:keyfile], # private key for client.crt; path(). "string" is ok
password: ssl_config[:password] # password for keyfile; string(), "string" not ok, use 'char list'
]
],
timeout: 60000, recv_timeout: 60000
]
end
end