/[webpac2]/trunk/lib/WebPAC/Config.pm
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /trunk/lib/WebPAC/Config.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 683 by dpavlin, Sun Sep 24 15:53:49 2006 UTC revision 685 by dpavlin, Sun Sep 24 17:24:59 2006 UTC
# Line 30  FIXME Line 30  FIXME
30    
31  Create new configuration object.  Create new configuration object.
32    
33      my $config = new WebPAC::Config(
34            path => '/optional/path/to/config.yml'
35      );
36    
37  =cut  =cut
38    
39  sub new {  sub new {
# Line 61  sub new { Line 65  sub new {
65    
66  =head2 databases  =head2 databases
67    
68    Return all databases in config
69    
70    my $config_databases_hash = $config->databases;    my $config_databases_hash = $config->databases;
71    my @config_databases_names = $config->databases;    my @config_databases_names = $config->databases;
72    
# Line 78  sub databases { Line 84  sub databases {
84    
85  =head2 use_indexer  =head2 use_indexer
86    
87    Which indexer are we using?
88    
89    $config->use_indexer;    $config->use_indexer;
90    
91  =cut  =cut
# Line 125  sub webpac { Line 133  sub webpac {
133    
134  }  }
135    
136    =head2 iterate_inputs
137    
138      $config->iterate_inputs( sub {
139            my $input = shift;
140            # ... do something with input config hash
141      } );
142    
143    =cut
144    
145    sub iterate_inputs {
146            my $self = shift;
147    
148            my $log = $self->_get_logger();
149    
150            my $code_ref = shift;
151            $log->logdie("called with CODE") unless ( ref($code_ref) eq 'CODE' );
152    
153            while (my ($database, $db_config) = each %{ $self->{config}->{databases} }) {
154                    my @inputs;
155                    if (ref($db_config->{input}) eq 'ARRAY') {
156                            @inputs = @{ $db_config->{input} };
157                    } elsif ($db_config->{input}) {
158                            push @inputs, $db_config->{input};
159                    } else {
160                            $log->info("database $database doesn't have inputs defined");
161                    }
162    
163                    foreach my $input (@inputs) {
164                            $log->debug("iterating over input ", dump($input));
165                            $code_ref->($input);
166                    }
167            }
168    
169    }
170    
171    
172  =head1 AUTHOR  =head1 AUTHOR
173    
174  Dobrica Pavlinusic, C<< <dpavlin@rot13.org> >>  Dobrica Pavlinusic, C<< <dpavlin@rot13.org> >>

Legend:
Removed from v.683  
changed lines
  Added in v.685

  ViewVC Help
Powered by ViewVC 1.1.26