1 package App::Clifton::ConfigLoader;
3 use aliased 'App::Clifton::Config';
4 use aliased 'App::Clifton::UserConfig';
8 has _cs => (is => 'lazy', handles => { '_parse_file' => 'parse_file' });
14 sub _new_config { Config->new }
16 sub config_from_file {
17 my ($self, $file) = @_;
18 my $data = $self->_parse_file($file);
19 my $config = $self->_new_config;
20 foreach my $name (keys %{$data->{bridge}}) {
21 $config->bridges->add({
23 %{$data->{bridge}{$name}}
26 foreach my $name (keys %{$data->{user}}) {
29 %{$data->{user}{$name}}