Config-XMLPerl

 view release on metacpan or  search on metacpan

lib/Config/XMLPerl.pm  view on Meta::CPAN

100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
###############
# CONFIG_LOAD #
###############
 
sub config_load {
 
  if ( my $doc = $CACHE{$_[0]} ) {
      
    if ( (time-$CACHE_SLEEP) > $CACHE_DELAY ) {
      my @stats = stat($_[0]) ;
      if ( $doc->{s} != $stats[7] || $doc->{t} != $stats[9] ) {
        $doc = undef ;
        delete $CACHE{$_[0]} ;
      }
    }
    return $doc->{x} if $doc ;
  }
 
  my ($data , $file) = read_data($_[0]) ;
  

lib/Config/XMLPerl.pm  view on Meta::CPAN

122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
    
  my $xml = XML::Smart->new($data , 'html' ,
  lowtag => 1 ,
  lowarg => 1 ,
  on_char => \&on_char ,
  ) ;
   
  $xml = $xml->cut_root ;
 
  if ( $file ) {
    my @stats = stat($file) ;
    $CACHE{$file}{x} = $xml ;
    $CACHE{$file}{s} = $stats[7] ;
    $CACHE{$file}{t} = $stats[9] ;
  }
   
  return $xml ;
}
 
###########
# ON_CHAR #



( run in 0.969 second using v1.01-cache-2.11-cpan-49f99fa48dc )