Current section

Files

Jump to
natsex lib server_info.ex
Raw

lib/server_info.ex

defmodule Natsex.ServerInfo do
@moduledoc """
Connection string parser
"""
@spec parse(String.t) :: {String.t, pos_integer()|nil, String.t|nil, String.t|nil, String.t|nil}
def parse(line) do
u = URI.parse(line)
{user, pass, token} =
if u.userinfo =~ ":" do
[user, pwd] = String.split(u.userinfo, ":", parts: 2)
{user, pwd, nil}
else
{nil, nil, u.userinfo}
end
{u.host, u.port, user, pass, token}
end
end