diff options
author | Alexey Shchepin <alexey@process-one.net> | 2003-01-16 20:24:53 +0000 |
---|---|---|
committer | Alexey Shchepin <alexey@process-one.net> | 2003-01-16 20:24:53 +0000 |
commit | 23e1914e9466197aeb62bec5440cb3942aab7910 (patch) | |
tree | 8865a59d25ebbdc7cf92153e1dfe1a3ee7154b15 /src/ejabberd_config.erl | |
parent | *** empty log message *** (diff) |
*** empty log message ***
SVN Revision: 41
Diffstat (limited to 'src/ejabberd_config.erl')
-rw-r--r-- | src/ejabberd_config.erl | 23 |
1 files changed, 8 insertions, 15 deletions
diff --git a/src/ejabberd_config.erl b/src/ejabberd_config.erl index 5fb03ad2..0c147090 100644 --- a/src/ejabberd_config.erl +++ b/src/ejabberd_config.erl @@ -20,23 +20,16 @@ start() -> load_file(File) -> - {ok, Bin} = file:read_file(File), - Content = binary_to_list(Bin), - parse(Content). - - -parse(String) -> - case erl_scan:tokens([], String, 0) of - {done, Result, Left} -> - {ok, Tokens, _} = Result, - {ok, Term} = erl_parse:parse_term(Tokens), - {Opt, Val} = Term, - ets:insert(ejabberd_config, {Opt, Val}), - parse(Left); - _ -> - ok + case file:consult(File) of + {ok, Terms} -> + lists:foreach(fun({Opt, Val}) -> + ets:insert(ejabberd_config, {Opt, Val}) + end, Terms); + {error, Reason} -> + exit(file:format_error(Reason)) end. + get_option(Opt) -> case ets:lookup(ejabberd_config, Opt) of [{_, Val}] -> |