/[cvs]/nfo/perl/libs/Data/Rap/Property.pm
ViewVC logotype

Annotation of /nfo/perl/libs/Data/Rap/Property.pm

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.3 - (hide annotations)
Thu Mar 27 15:31:05 2003 UTC (21 years, 3 months ago) by joko
Branch: MAIN
CVS Tags: HEAD
Changes since 1.2: +7 -3 lines
fixes to modules regarding new namespace(s) below Data::Mungle::*

1 joko 1.1 ## ----------------------------------------------------------------------
2 joko 1.3 ## $Id: Property.pm,v 1.2 2003/02/20 20:15:45 joko Exp $
3 joko 1.1 ## ----------------------------------------------------------------------
4 joko 1.2 ## $Log: Property.pm,v $
5 joko 1.3 ## Revision 1.2 2003/02/20 20:15:45 joko
6     ## modified logging style
7     ## + property merging instead of dumb overriding
8     ##
9 joko 1.2 ## Revision 1.1 2003/02/18 15:36:20 joko
10     ## + initial commit
11     ##
12 joko 1.1 ## ----------------------------------------------------------------------
13    
14    
15     package Data::Rap::Property;
16    
17     use strict;
18     use warnings;
19    
20    
21     use Data::Dumper;
22     use Sys::Hostname;
23     use Data::Storage::Handler::File;
24    
25    
26     sub loadGlobalProperties {
27     my $self = shift;
28    
29     # determining hostname
30     my $hostname = lc hostname;
31     $self->log("determining hostname: $hostname", 'info');
32     $self->set_property({ name => 'global.hostname', value => $hostname });
33    
34     }
35    
36     sub _property {
37     my $self = shift;
38     my $args = shift;
39     $self->set_property($args);
40     }
41    
42    
43     sub loadFromPerlFile {
44     my $self = shift;
45     my $file = shift;
46     my $name = shift;
47     my $varnames = shift;
48    
49     # FIXME
50     $file = "../$file";
51    
52 joko 1.2 $self->log("Loading resource file '$file'.", 'info');
53 joko 1.1
54     my $storage = Data::Storage::Handler::File->new( filename => $file );
55     if (!$storage->exists()) {
56 joko 1.2 $self->log("Resource not found: File '$file' does not exist.", 'error');
57 joko 1.1 return;
58     }
59     my $content = $storage->toString();
60    
61 joko 1.3 $self->load("/Data/Mungle/Code/Scalar");
62 joko 1.1 my $properties = $self->eval($content, $varnames);
63 joko 1.2
64     #print Dumper($self);
65    
66     $self->merge_properties($name, $properties);
67 joko 1.1
68 joko 1.2 #print Dumper($self);
69 joko 1.1
70     }
71    
72     sub loadFromPerlModule {
73     my $self = shift;
74     my $module = shift;
75     my $name = shift;
76     my $varnames = shift;
77    
78 joko 1.2 $self->log("Loading Perl Module '$module'.", 'info');
79    
80 joko 1.3 $self->load("/Data/Mungle/Code/Module");
81 joko 1.1 my $properties = $self->eval_vars($module, $varnames);
82    
83     # trace
84     #print Dumper($properties);
85     #exit;
86    
87 joko 1.2 $self->merge_properties($name, $properties);
88 joko 1.1
89     }
90    
91    
92     1;
93     __END__

MailToCvsAdmin">MailToCvsAdmin
ViewVC Help
Powered by ViewVC 1.1.26 RSS 2.0 feed