Session
A session is a means for interacting with Projects in the Tygron Platform. A session has several stages:
- Project startup phase, in which the project is initiated into computer memory.
- A live phase, in which the user can interact with the project.
- A save phase, in which the project data is stored from memory to hard disk.
- A close phase, in which the session's processes are neatly terminated and the session's data is removed from memory.
A session can be interacted with by multiple users at the same time. A session will generally be shut down once all users have logged out of the session. However, when chosen, a session can also be kept alive for longer periods of time.
There are several reasons to keep a session alive:
- The user has to wait on a result of a long computation.
- The project acts as a web service, such as WFS or WMS and can be updated in the mean time.
Interaction with a session can be restricted in functionality, based on the chosen startup mode.
- Editor mode allows users to adjust the initial state of a project. Additionally, test-runs can be activated within this session to test future scenarios. A restriction with the session system is that only one Editor mode session can be active for a project at the same time. Other restrictions concerning test-runs in editor mode can be found here.
- Single and multi-user mode allows users to only adjust the future state of a project. The initial state will remain the same, and indicators and overlays can refer to this initial state to show the improvements and progress being made. These sessions can be saved, to continue with it at a later time.
Using a session to interact with project data has several advantages. Most importantly, it can speed up the calculation time of complicated indicators and overlays by re-using unchanged rasterization of its data. Secondly, the session can govern which actions on your project data are allowed and in which sequence they are handled and provide feedback on why they may have failed. It can also manage the automatic calculation of indicators, overlays and other results for each applied action individually.
Editor Test Runs
Editor test runs are a special mode within editor sessions of a project. An editor test run starts a multi-stakeholder session with the same functionality, with the exception that it is not able to save its actions and results. Stopping a editor test run with return the state of the project back to state it was when the test-run was started. Note that starting a test run does not mean the project initial state is also stored to the project data on harddisk; It is only stored within the session.