Ark

 view release on metacpan or  search on metacpan

lib/Ark/Plugin/Session/State/Cookie.pm  view on Meta::CPAN

package Ark::Plugin::Session::State::Cookie;
use strict;
use warnings;
use Ark::Plugin 'Session';

has cookie_name => (
    is      => 'rw',
    isa     => 'Str',
    lazy    => 1,
    default => sub {
        my $self = shift;
        $self->class_config->{cookie_name} || lc(ref $self->app) . '_session';
    },
);

has cookie_domain => (
    is      => 'rw',
    isa     => 'Maybe[Str]',
    lazy    => 1,
    default => sub {
        my $self = shift;
        $self->class_config->{cookie_domain};
    },
);

has cookie_path => (
    is      => 'rw',
    isa     => 'Maybe[Str]',
    lazy    => 1,
    default => sub {
        my $self = shift;
        $self->class_config->{cookie_path};
    },
);


has cookie_expires => (
    is      => 'rw',
    lazy    => 1,
    default => sub {
        my $self = shift;
        exists $self->class_config->{cookie_expires}
             ? $self->class_config->{cookie_expires}
      : exists $self->app->config->{'Plugin::Session'}->{expires}
             ? $self->app->config->{'Plugin::Session'}->{expires}
      :        '+1d';    # 1day
    },
);

has cookie_secure => (
    is      => 'rw',
    isa     => 'Bool',
    lazy    => 1,
    default => sub {
        my $self = shift;
        $self->class_config->{cookie_secure} || 0;
    },
);

has cookie_httponly => (
    is      => 'rw',



( run in 1.886 second using v1.01-cache-2.11-cpan-6aa56a78535 )