]> git.evergreen-ils.org Git - Evergreen.git/blob - Open-ILS/src/perlmods/OpenILS/Application/Storage/CDBI/biblio.pm
EETS ALIVE!!!!!!!
[Evergreen.git] / Open-ILS / src / perlmods / OpenILS / Application / Storage / CDBI / biblio.pm
1 package OpenILS::Application::Storage::CDBI::biblio;
2 our $VERSION = 1;
3
4 #-------------------------------------------------------------------------------
5 package biblio;
6 use base qw/OpenILS::Application::Storage::CDBI/;
7 #-------------------------------------------------------------------------------
8 package biblio::record_entry;
9 use base qw/biblio/;
10 #use OpenILS::Application::Storage::CDBI::asset;
11
12 biblio::record_entry->table( 'biblio_record_entry' );
13 biblio::record_entry->columns( All => qw/id tcn_source tcn_value metarecord
14                                          creator editor create_date edit_date
15                                          source active deleted source/ );
16
17 #-------------------------------------------------------------------------------
18 package biblio::record_node::subnode;
19 sub _load {
20         my $intra_doc_id = shift;
21         my $owner_doc = shift()->owner_doc;
22         return (biblio::record_node->search(
23                         owner_doc       => $owner_doc,
24                         intra_doc_id    => $intra_doc_id
25                 )
26         )[0];
27 }
28
29 package biblio::record_node;
30 use base qw/biblio/;
31
32 biblio::record_node->table( 'biblio_record_data' );
33 biblio::record_node->columns( All => qw/id owner_doc intra_doc_id
34                                         parent_node node_type
35                                         namespace_uri name value/ );
36
37 biblio::record_node->has_a(
38         parent_node     => 'biblio::record_node::subnode',
39         inflate         => sub {
40                                 return biblio::record_node::subnode::_load(@_)
41                         },
42 );
43
44
45 #-------------------------------------------------------------------------------
46 package biblio::record_note;
47 use base qw/biblio/;
48
49 biblio::record_note->table( 'biblio_record_note' );
50 biblio::record_note->columns( All => qw/id record value creator
51                                         editor create_date edit_date/ );
52 biblio::record_note->columns( Stringify => qw/value/ );
53
54 #-------------------------------------------------------------------------------
55
56 1;
57