[Handel] [ANNOUNCE] Handel 0.99_02 Released
tom.kirkpatrick at virusbtn.com
tom.kirkpatrick at virusbtn.com
Tue Jun 6 14:56:36 CEST 2006
> Define "all injection code".... everything in
> _configure_schema_instance(), or just the calls to load_components?
>
My copt of Storage.pm now looks like this and it runs a hell of a lot
faster:
sub _configure_schema_instance {
my ($self) = @_;
my $schema_instance = $self->schema_instance;
my $schema_source = $self->schema_source;
my $iterator_class = $self->iterator_class;
my $item_class = $self->item_class;
my $item_relationship = $self->item_relationship;
my $source_class = $schema_instance->class($schema_source);
my $item_source_class;
if ($item_class) {
eval "require $item_class";
$item_source_class =
$schema_instance->class($item_class->schema_source);
};
my $source = $schema_instance->source($schema_source);
$source->resultset_class($iterator_class);
if ($item_class) {
if ($source->has_relationship($item_relationship)) {
$source->related_source($item_relationship)->resultset_class($iterator_class);
} else {
throw Handel::Exception(-text =>
translate('The source [_1] has no relationship named
[_2].', $schema_source, $item_relationship)
);
};
};
$schema_instance->storage->dbh->{HandleError} =
$self->can('process_error');
## load class and item class validation
#if (my $profie = $self->validation_profile) {
# $source_class->load_components('+Handel::Components::Validation');
# $source_class->validation_profile($profie);
#};
#if ($item_class && $item_class->validation_profile) {
#
$item_source_class->load_components('+Handel::Components::Validation');
#
$item_source_class->validation_profile($item_class->validation_profile);
#};
## load class and item class constraints
#if (my $constraints = $self->constraints) {
# $source_class->load_components('+Handel::Components::Constraints');
# $source_class->constraints($constraints);
#};
#if ($item_class && $item_class->constraints) {
#
$item_source_class->load_components('+Handel::Components::Constraints');
# $item_source_class->constraints($item_class->constraints);
#};
## load class and item class default values
#if (my $defaults = $self->default_values) {
#
$source_class->load_components('+Handel::Components::DefaultValues');
# $source_class->default_values($defaults);
#};
#if ($item_class && $item_class->default_values) {
#
$item_source_class->load_components('+Handel::Components::DefaultValues');
# $item_source_class->default_values($item_class->default_values);
#};
};
--
Tom Kirkpatrick
Web Developer - Virus Bulletin
More information about the Handel
mailing list