Commit | Line | Data |
e03587a8 |
1 | #!/usr/bin/perl -w |
2 | |
3 | package FlashTestApp; |
4 | use Catalyst qw/Session Session::Store::File Session::State::Cookie/; |
5 | |
6 | use strict; |
7 | use warnings; |
8 | |
9 | sub default : Private { |
10 | my ($self, $c) = @_; |
11 | $c->session; |
12 | } |
13 | |
14 | |
15 | sub first : Global { |
16 | my ( $self, $c ) = @_; |
17 | if ( ! $c->flash->{is_set}) { |
18 | $c->stash->{message} = "flash is not set"; |
19 | $c->stash->{is_set} = 1; |
20 | } |
21 | } |
22 | |
23 | sub second : Global { |
24 | my ( $self, $c ) = @_; |
25 | if ($c->flash->{is_set} == 1){ |
26 | $c->stash->{message} = "flash set first time"; |
27 | $c->flash->{is_set}++; |
28 | } |
29 | } |
30 | |
31 | sub third : Global { |
32 | my ( $self, $c ) = @_; |
33 | if ($c->flash->{is_set} == 2) { |
34 | $c->stash->{message} = "flash set second time"; |
35 | $c->flash->{is_set} = 2; |
36 | } |
37 | } |
38 | |
39 | sub fourth : Global { |
40 | my ( $self, $c ) = @_; |
41 | if ($c->flash->{is_set} == 2) { |
42 | $c->stash->{message} = "flash set 3rd time, same val as prev." |
43 | } |
44 | } |
45 | |
46 | sub fifth : Global { |
47 | my ( $self, $c ) = @_; |
48 | $c->forward('/first'); |
49 | } |
50 | |
51 | sub end : Local { |
52 | my ($self, $c) = @_; |
53 | $c->res->output($c->stash->{message}); |
54 | } |
55 | |
56 | |
57 | __PACKAGE__->setup; |
58 | |
59 | __PACKAGE__; |
60 | |