# (c) 2007 by Ralf Ertzinger # licensed under GNU GPL v2 package GrabberBase; use Base; @ISA = qw(Base); use strict; sub new { my $class = shift; my $self = $class->SUPER::new(); $self = {%{$self}, NAME => 'FlashGrab', TYPE => 'grabber', PATTERNS => [], }; return bless($self, $class); } sub get($$) { my $self = shift; my $url = shift; my $pattern; return undef unless $self->_getval('enabled'); foreach $pattern (@{$self->{'PATTERNS'}}) { $self->debug("Matching %s against %s", $pattern, $url); if ($url =~ m|$pattern|) { $self->debug("Match"); return wantarray?($self->_parse($url, $pattern), $pattern):$self->_parse($url, $pattern); } } return undef; } sub enable { my $self = shift; $self->debug('Enabling %s grabber', $self->{'NAME'}); $self->setval('enabled', '1'); } sub disable { my $self = shift; $self->debug('Disabling %s grabber', $self->{'NAME'}); $self->setval('enabled', '0'); } sub _parse { my $self = shift; my $url = shift; return undef; } 1;