1# $Id$
2
3package Ingredient2Recipe;
4use strict;
5use base qw( Data::ObjectDriver::BaseObject );
6use DodTestUtil;
7
8use Data::ObjectDriver::Driver::DBI;
9use Data::ObjectDriver::Driver::Multiplexer;
10
11my $global1_driver = Data::ObjectDriver::Driver::DBI->new(
12    dsn => DodTestUtil::dsn('global1'),
13);
14
15my $global2_driver = Data::ObjectDriver::Driver::DBI->new(
16    dsn => DodTestUtil::dsn('global2'),
17);
18
19__PACKAGE__->install_properties({
20    columns     => [ 'recipe_id', 'ingredient_id', "value1" ],
21    datasource  => 'ingredient2recipe',
22    primary_key => 'recipe_id', ## should match lookup XXX could we auto generate it ?
23    driver      => Data::ObjectDriver::Driver::Multiplexer->new(
24
25        ## Send searches by recipe_id to $global1_driver, and
26        ## searches by ingredient_id to $global2_driver.
27        on_search => {
28            recipe_id       => $global1_driver,
29            ingredient_id   => $global2_driver,
30        },
31        on_lookup => $global1_driver,
32
33        drivers => [ $global1_driver, $global2_driver ],
34    ),
35});
36
371;
38