DBIx-NoSQL
view release on metacpan or search on metacpan
lib/DBIx/NoSQL/ClassScaffold.pm view on Meta::CPAN
sub _build_version {
my $self = shift;
return sha1_hex( $self->sql );
}
sub deploy {
my $self = shift;
my $deployment_statements = $self->deployment_statements;
s/^\s*//, s/\s*$// for $deployment_statements;
my @deployment_statements = split m/;\n\s*/, $deployment_statements;
$self->store->storage->do( $_ ) for @deployment_statements;
}
package DBIx::NoSQL::ClassScaffold::ResultClass;
our $AUTHORITY = 'cpan:YANICK';
$DBIx::NoSQL::ClassScaffold::ResultClass::VERSION = '0.0021';
use strict;
use warnings;
lib/DBIx/NoSQL/Model/Index.pm view on Meta::CPAN
unless( $result_class->has_column( $field->name ) ) {
$field->install_index( $model, $result_class );
}
}
}
$schema->register_class( $name => $result_class );
my $table = $result_class->table;
my $deployment_statements = $schema->build_deployment_statements;
my @deployment_statements = split m/;\n/, $deployment_statements;
my ( $create ) = grep { m/(?:(?i)CREATE\s+TABLE\s+.*)$table/ } @deployment_statements;
my ( $drop ) = grep { m/(?:(?i)DROP\s+TABLE\s+.*)$table/ } @deployment_statements;
s/^\s*//, s/\s*$// for $create, $drop;
$self->create_statement( $create );
$self->drop_statement( $drop );
$self->schema_digest( sha1_hex $create );
}
( run in 0.721 second using v1.01-cache-2.11-cpan-71847e10f99 )