Factory class

package Chair;
use base qw( Class::Factory );

/* Register known types */
__PACKAGE__->register_factory_type( office   => 'Chair::Office' );
__PACKAGE__->register_factory_type( dining   => 'Chair::Dining' );
__PACKAGE__->register_factory_type( lazy_boy => 'Chair::LazyBoy' );

1;