##
#
# Copyright 2005-2006, Brian Szymanski
#
# This file is part of Cache::Static
#
# Cache::Static is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# For more information about Cache::Static, point a web browser at
# http://chronicle.allafrica.com/scache/ or read the
# documentation included with the Cache::Static distribution in the
# doc/ directory
#
##
package Cache::Static::XML_Comma_Util;
use strict;
use warnings;
require Cache::Static;
sub _get_timestamp_file {
my ($type, $spec) = @_;
Cache::Static::_log(4, "XML_Comma_Util: in get_timestamp_file for $type $spec");
return $Cache::Static::ROOT.'/timestamps/'.
Cache::Static::md5_path("XML::Comma|$type|$spec").'.ts';
}
sub modtime {
my $file = _get_timestamp_file(@_);
my @t = stat($file);
die "XML_Comma_Util couldn't get modtime for $file (@_): $!" unless(@t);
return @t ? $t[9] : 0;
}
#bummer, this takes 0.02 seconds... too slow...
# we could cache the spec lookup...
sub get_extra_deps {
my ($type, $spec) = @_;
my @t = split(/\|/, $spec, 1);
my $def_spec = $t[0];
my $def = XML::Comma::Def->$def_spec;
my $ff = $def->{_from_file};
print "extra dep for XML::Comma|$type : $ff\n";
return ( "file|$ff" );
}
1;