package html::Greeting;
use strict;
use warnings;
use base qw(Local::Seamstress::Base); # not HTML::Seamstress!
# we need an intermediate base class
# with the comp_root() method so that
# we can get an absolute path to the
# HTML file... remember this is an
# example where the LOOM is in a
# different directory to the the HTML
# file it operates on.
sub new {
my $comp_root = __PACKAGE__->comp_root();
my $html_file = "$comp_root/greeting.html";
warn "html_file: $html_file";
my $tree = __PACKAGE__->new_from_file($html_file);
$tree;
}
sub process {
my $tree = shift;
my %replace = (
name => 'Slow Clean Greeting Machine',
lucky_number => 737
);
$tree->look_down(id => $_)->replace_content($replace{$_})
for (keys %replace) ;
}
1;