The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
package Data::All::IO;


use strict;

use base qw( Class::Factory );

our $VERSION = 0.10;

#   NOTE: I need to be given factory type before I am useful
#   i.e. Data::All::IO->register_factory_type( pkg => 'Data::All::IO::Pkg' );

sub new()
{
     my ( $pkg, $type ) = ( shift, shift );
     my $class = $pkg->get_factory_class( $type );
     
     #  Use the base's new 
     return $class->new(@_);
}

1;