[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[EP-tech] Re: Can_call for nested config
OK - it looks like the can_call works OK, but actually calling (with some data) it doesn't.
Doing this:
if ( $repository->can_call( 'ethos', $institution, 'thesis_type_match' ) ){
print "CAN CALL!\n";
print $repository->call( 'ethos', $institution, 'thesis_type_match', 'some data' );
}
Results in:
CAN CALL!
Undefined or invalid function: ethos
Any clues?
Cheers,
John
-----Original Message-----
From: eprints-tech-bounces at ecs.soton.ac.uk [mailto:eprints-tech-bounces at ecs.soton.ac.uk] On Behalf Of Sebastien Francois
Sent: 15 June 2012 16:03
To: eprints-tech at ecs.soton.ac.uk
Subject: [EP-tech] Re: Can_call for nested config
Hi,
I've copied / pasted your example which just works on my local 3.3.9
install.
Try debugging perl_lib/Repository.pm::can_call and see where it fails.
Seb.
On 15/06/12 15:44, John Salter wrote:
> I'm trying to do things the *right* way, using can_call
>
> I have a config file that includes something like:
> my $ethos = {};
> $c->{ethos} = $ethos;
>
> $ethos->{'leeds'}->{'thesis_type_match'} = sub
> {
> #stuff
> };
>
> $ethos->{'sheffield'}->{'thesis_type_match'} = sub
> {
> #other stuff
> };
>
> In my code, I'm trying to do something like:
> $institution= 'leeds';
> if ( $repository->can_call( 'ethos', $institution, 'thesis_type_match' ) ){
> #stuff
> };
> But it isn't working.
>
> Should I be able to do this?
> If I just use:
> $c->{'thesis_type_match'} = sub
> {
> #stuff
> }
> It works - but that would mean config wasn't contained in 'ethos'..?
*** Options: http://mailman.ecs.soton.ac.uk/mailman/listinfo/eprints-tech
*** Archive: http://www.eprints.org/tech.php/
*** EPrints community wiki: http://wiki.eprints.org/