|
Lines 276-287
capabilities & custom_capability and their callers.
Link Here
|
| 276 |
sub _backend_capability { |
276 |
sub _backend_capability { |
| 277 |
my ( $self, $name, $args ) = @_; |
277 |
my ( $self, $name, $args ) = @_; |
| 278 |
my $capability = 0; |
278 |
my $capability = 0; |
|
|
279 |
# See if capability is defined in backend |
| 279 |
try { |
280 |
try { |
| 280 |
$capability = $self->_backend->capabilities($name); |
281 |
$capability = $self->_backend->capabilities($name); |
| 281 |
} catch { |
282 |
} catch { |
| 282 |
return 0; |
283 |
return 0; |
| 283 |
}; |
284 |
}; |
| 284 |
if ( $capability ) { |
285 |
# Try to invoke it |
|
|
286 |
if ( $capability && ref($capability) eq 'CODE' ) { |
| 285 |
return &{$capability}($args); |
287 |
return &{$capability}($args); |
| 286 |
} else { |
288 |
} else { |
| 287 |
return 0; |
289 |
return 0; |
|
Lines 742-747
sub backend_create {
Link Here
|
| 742 |
# ...Updating status! |
744 |
# ...Updating status! |
| 743 |
$self->status('QUEUED')->store unless ( $permitted ); |
745 |
$self->status('QUEUED')->store unless ( $permitted ); |
| 744 |
|
746 |
|
|
|
747 |
## Handle Unmediated ILLs |
| 748 |
|
| 749 |
# For the unmediated workflow we only need to delegate to our backend. If |
| 750 |
# that backend supports unmediateld_ill, it will do its thing and return a |
| 751 |
# proper response. If it doesn't then _backend_capability returns 0, so |
| 752 |
# we keep the current result. |
| 753 |
if ( C4::Context->preference("ILLModuleUnmediated") && $permitted ) { |
| 754 |
my $unmediated_result = $self->_backend_capability( |
| 755 |
'unmediated_ill', |
| 756 |
$args |
| 757 |
); |
| 758 |
$result = $unmediated_result if $unmediated_result; |
| 759 |
} |
| 760 |
|
| 745 |
return $self->expandTemplate($result); |
761 |
return $self->expandTemplate($result); |
| 746 |
} |
762 |
} |
| 747 |
|
763 |
|
| 748 |
- |
|
|