CatalystX-ASP
view release on metacpan or search on metacpan
lib/CatalystX/ASP/GlobalASA.pm view on Meta::CPAN
$Application->{$Session->SessionID()} = started;
}
Sessions are easy to understand. When visiting a page in a web application, each
user has one unique C<$Session>. This session expires, after which the user will
have a new C<$Session> upon revisiting.
A web application starts when the user visits a page in that application, and
has a new C<$Session> created. Right before the first C<$Session> is created,
the C<$Application> is created. When the last user C<$Session> expires, that
C<$Application> expires also. For some web applications that are always busy,
the C<Application_OnEnd> event may never occur.
=cut
has 'filename' => (
is => 'ro',
isa => Path,
default => sub { shift->asp->Global->child( 'global.asa' ) },
);
lib/CatalystX/ASP/GlobalASA.pm view on Meta::CPAN
=item Session_OnEnd
Triggered by a user session ending, C<Session_OnEnd> can be useful for cleaning
up and analyzing user data accumulated during a session.
Sessions end when the session timeout expires, and the C<StateManager> performs
session cleanup. The timing of the C<Session_OnEnd> does not occur immediately
after the session times out, but when the first script runs after the session
expires, and the C<StateManager> allows for that session to be cleaned up.
So on a busy site with default C<SessionTimeout> (20 minutes) and
C<StateManager> (10 times) settings, the C<Session_OnEnd> for a particular
session should be run near 22 minutes past the last activity that Session saw.
A site infrequently visited will only have the C<Session_OnEnd> run when a
subsequent visit occurs, and theoretically the last session of an application
ever run will never have its C<Session_OnEnd> run.
Thus I would not put anything mission-critical in the C<Session_OnEnd>, just
stuff that would be nice to run whenever it gets run.
=cut
lib/CatalystX/ASP/Response.pm view on Meta::CPAN
);
=item $Response->{IsClientConnected}
1 if web client is connected, C<0> if not. This value starts set to 1, and will
be updated whenever a C<< $Response->Flush() >> is called.
As of Apache::ASP version 2.23 this value is updated correctly before
F<global.asa> C<Script_OnStart> is called, so global script termination may be
correctly handled during that event, which one might want to do with excessive
user STOP/RELOADS when the web server is very busy.
An API extension C<< $Response->IsClientConnected >> may be called for refreshed
connection status without calling first a C<< $Response->Flush >>
=cut
# This attribute has no effect
has 'IsClientConnected' => (
is => 'rw',
isa => 'Bool',
( run in 0.300 second using v1.01-cache-2.11-cpan-87723dcf8b7 )