---
name: "Embperl::Session"
section: "3pm"
platform: "linux"
package: "libembperl-perl"
version: "2.5.0-17"
release: "Debian 12 (Bookworm)"
platforms: ["linux"]
url: "https://new.carta.tech/Embperl::Session"
---

# Embperl::Session(3pm)

adaptation of Apache::Session to work with HTML::Embperl

## NAME

HTML::Embperl::Session - adaptation of Apache::Session to work with HTML::Embperl

## DESCRIPTION

An adaptation of Apache::Session to work with HTML::Embperl

## SYNOPSIS

### Addtional Attributes for TIE

- lazy

  By Specifyng this attribute, you tell Apache::Session to not do any access to the object store, until the first read or write access to the tied hash. Otherwise the **tie** function will make sure the hash exist or creates a new one.

- create\_unknown

  Setting this to one causes Apache::Session to create a new session with the given id (or a new id, depending on `"recreate_id"`) when the specified session id does not exists. Otherwise it will die.

- recreate\_id

  Setting this to one causes Apache::Session to create a new session id when the specified session id does not exists.

- object\_store

  Specify the class for the object store. (The Apache::Session:: prefix is optional) Only for Apache::Session 1.00.

- lock\_manager

  Specify the class for the lock manager. (The Apache::Session:: prefix is optional) Only for Apache::Session 1.00.

- Store

  Specify the class for the object store. (The Apache::Session::Store prefix is optional) Only for Apache::Session 1.5x.

- Lock

  Specify the class for the lock manager. (The Apache::Session::Lock prefix is optional) Only for Apache::Session 1.5x.

- Generate

  Specify the class for the id generator. (The Apache::Session::Generate prefix is optional) Only for Apache::Session 1.5x.

- Serialize

  Specify the class for the data serializer. (The Apache::Session::Serialize prefix is optional) Only for Apache::Session 1.5x.

Example using attrubtes to specfiy store and object classes instead of a derived class:

```
 use HTML::Embperl::Session;
 tie %session, 'HTML::Embperl::Session', undef,
    {
    object_store => 'DBIStore',
    lock_manager => 'SysVSemaphoreLocker',
    DataSource => 'dbi:Oracle:db'
    };
```

NOTE: HTML::Embperl::Session will require the necessary additional perl modules for you.

### Addtional Methods

- setid

  Set the session id for further accesses.

- getid

  Get the session id. The difference to using `$session`{\_session\_id} is, that in lazy mode, getid will **not** create a new session id, if it doesn't exists.

- cleanup

  Writes any pending data, releases all locks and deletes all data from memory.

## AUTHORS

Gerald Richter \<richter at embperl dot org\> is the current maintainer.

This class was written by Jeffrey Baker (jeffrey@kathyandjeffrey.net) but it is taken wholesale from a patch that Gerald Richter (richter@ecos.de) sent me against Apache::Session.
