use Sereal::Encoder;
use Sereal::Decoder;
+use C4::Context;
use Koha::Cache::Object;
use Koha::Config;
my $subnamespace = $params->{subnamespace} // '';
- $ENV{DEBUG} && carp "Default caching system: $self->{'default_type'}";
-
$self->{'timeout'} ||= 0;
# Should we continue to support MEMCACHED ENV vars?
$self->{'namespace'} ||= $ENV{MEMCACHED_NAMESPACE};
my @servers = split /,/, $ENV{MEMCACHED_SERVERS} || '';
- unless ( $self->{namespace} and @servers ) {
- my $koha_config = Koha::Config->read_from_file( Koha::Config->guess_koha_conf() );
- $self->{namespace} ||= $koha_config->{config}{memcached_namespace} || 'koha';
- @servers = split /,/, $koha_config->{config}{memcached_servers} // ''
- unless @servers;
- }
+ $self->{namespace} ||= C4::Context->config('memcached_namespace') || 'koha';
+ @servers = split /,/, C4::Context->config('memcached_servers') // ''
+ unless @servers;
$self->{namespace} .= ":$subnamespace:";
if ( $self->{'default_type'} eq 'memcached'
$self->{'cache'} = $self->{'memcached_cache'};
}
- $ENV{DEBUG} && carp "Selected caching system: " . ($self->{'cache'} // 'none');
-
return
bless $self,
$class;
return unless @servers;
- $ENV{DEBUG}
- && carp "Memcached server settings: "
- . join( ', ', @servers )
- . " with "
- . $self->{'namespace'};
# Cache::Memcached::Fast::Safe doesn't allow a default expire time to be set
# so we force it on setting.
my $memcached = Cache::Memcached::Fast::Safe->new(
my $cache = $options->{cache} || 'cache';
croak "No key" unless $key;
- $ENV{DEBUG} && carp "set_in_cache for $key";
return unless ( $self->{$cache} && ref( $self->{$cache} ) =~ m/^Cache::/ );
my $expiry = $options->{expiry};
my $unsafe = $options->{unsafe} || 0;
$key =~ s/[\x00-\x20]/_/g;
croak "No key" unless $key;
- $ENV{DEBUG} && carp "get_from_cache for $key";
return unless ( $self->{$cache} && ref( $self->{$cache} ) =~ m/^Cache::/ );
# Return L1 cache value if exists