0db517613f421497b863dc42d518b3d4492c6179
[dbsrgits/DBIx-Class.git] / lib / DBIx / Class / Serialize.pm
1 package DBIx::Class::Serialize;
2 use strict;
3 use Storable qw/freeze thaw/;
4
5 sub STORABLE_freeze {
6     my ($self,$cloning) = @_;
7     return if $cloning;
8     my $to_serialize = { %$self };
9     delete $to_serialize->{result_source};
10     return (freeze($to_serialize));
11 }
12
13 sub STORABLE_thaw {
14     my ($self,$cloning,$serialized) = @_;
15     %$self = %{ thaw($serialized) };
16     $self->result_source($self->result_source_instance);
17 #    no strict 'refs';
18 #    my $class = ${(ref $self) . '::ISA'}[0];
19 #    my $schema = $self->result_source_instance->schema;
20 #    $self->result_source($schema->source($class));
21 }
22
23 1;