CREATE SERVICE mysession
TYPE 'RAW'
AUTHORIZATION OFF
USER DBA
AS CALL mysession_proc();
CREATE PROCEDURE mysession_proc()
BEGIN
DECLARE body LONG VARCHAR;
DECLARE hostname LONG VARCHAR;
DECLARE svcname LONG VARCHAR;
DECLARE sesid LONG VARCHAR;
CALL sa_set_http_header ( 'Content-Type', 'text/html' );
SELECT CONNECTION_PROPERTY('SessionID') INTO sesid;
SELECT CONNECTION_PROPERTY('HttpServiceName') INTO svcname;
SELECT HTTP_HEADER( 'Host' ) INTO hostname;
IF HTTP_VARIABLE('delete') IS NOT NULL THEN
CALL sa_set_http_option( 'SessionID', NULL );
SET body = '
Deleted ' || sesid|| 'Start Again';
SELECT body;
END IF;
IF sesid = '' THEN
SET sesid = set_session_url();
CREATE VARIABLE request_count INT;
SET request_count = 0;
SET body = '
Created session ID ' || sesid|| ' Enter into Session';
ELSE
SELECT CONNECTION_PROPERTY('SessionID') INTO sesid;
SET request_count = request_count +1;
SET body = '
Session ' || sesid || ''|| 'created ' || CONNECTION_PROPERTY('SessionCreateTime') || ''
|| 'last access ' || CONNECTION_PROPERTY('SessionLastTime') || ''
|| 'connection ID ' || CONNECTION_PROPERTY('Number') || ''
|| '
REQUEST COUNT is '|| request_count || '
'
|| 'Enter into Session'
|| 'Delete Session';
END IF;
SELECT body;
END;