$Session Close: Difference between revisions

From m204wiki
Jump to navigation Jump to search
(Automatically generated page update)
m (misc cleanup)
 
(16 intermediate revisions by 2 users not shown)
Line 2: Line 2:
<span class="pageSubtitle">Close an open session</span>
<span class="pageSubtitle">Close an open session</span>


<p class="warn"><b>Note: </b>Most Sirius $functions have been deprecated in favor of Object Oriented methods. The OO equivalent for the $Session_Close function is '''[[to be entered]]'''.</p>
<p class="warn"><b>Note: </b>Many $functions have been deprecated in favor of Object Oriented methods. There is no direct OO equivalent for the $Session_Close function.</p>


<var>$Session_Close</var> closes an open [[Sessions|session]], accepts three arguments and returns a zero, indicating success, or a number indicating the cause of error, if there is one.  
<var>$Session_Close</var> closes an open [[Sessions|session]], accepts three arguments and returns a zero, indicating success, or a number indicating the cause of error, if there is one.  


==Syntax==
==Syntax==
<p class="syntax"><span class="term">%rc</span> = <span class="literal">$Session_Close</span>(<span class="term">sesid</span>, <span class="term">owner</span>, <span class="term">timeout</span>)
<p class="syntax"><span class="term">%rc</span> = <span class="literal">$Session_Close</span>([<span class="term">sesid</span>], [<span class="term">owner</span>], [<span class="term">timeout</span>])
</p>
</p>


===Syntax terms===
===Syntax terms===
<table class="syntaxTable">
<table>
<tr><th>%rc</th>
<tr><th>%rc</th>
<td>A numeric value set to 0 or to an error indicator. See [[#Status codes|"Status codes"]].</td></tr>
<td>A numeric value set to 0 or to an error indicator. See [[#Status codes|Status codes]], below.</td></tr>


<tr><th>sesid</th>
<tr><th>sesid</th>
Line 22: Line 22:
<p>
<p>
This is an optional argument which if not specified leaves the session's owner unchanged. </p></td></tr>
This is an optional argument which if not specified leaves the session's owner unchanged. </p></td></tr>


<tr><th>timeout</th>
<tr><th>timeout</th>
Line 38: Line 37:
</p>
</p>


The status codes greater than 0 can only happen when one or more of the session attributes (<var class="term">sesid</var>, <var class="term">owner</var>, <var class="term">timeout</var>) is being changed.  
The status codes greater than 0 can only happen when one or more of the session attributes (<var class="term">sesid</var>, <var class="term">owner</var>, <var class="term">timeout</var>) is being changed.


==Usage notes==
==Usage notes==
<ul>
<ul>
<li>After a <var>$Session_Close</var>, any session $lists, longstrings and XMLDocs will no longer be accessible.  
<li>After a <var>$Session_Close</var>, any session $lists, longstrings and XMLDocs will no longer be accessible. </li>


<li>If a <var>[[$Session_Delete]]</var> had been done for the session before it was closed by the user who had the session open or someone else, the session is immediately deleted when the <var>$Session_Close</var> is done. A logout always does an implied <var>$Session_Close</var> so <var>$Session_Close</var> is only necessary if another session is to be open or to minimize the time window in which the session might be requested by another thread.  
<li>If a <var>[[$Session_Delete]]</var> had been done for the session before it was closed by the user who had the session open or someone else, the session is immediately deleted when the <var>$Session_Close</var> is done. A logout always does an implied <var>$Session_Close</var>, so <var>$Session_Close</var> is only necessary if another session is to be open or to minimize the time window in which the session might be requested by another thread.</li>
</ul>


==Example==
==Example==
Line 53: Line 53:
==Products authorizing {{PAGENAMEE}}==  
==Products authorizing {{PAGENAMEE}}==  
<ul class="smallAndTightList">
<ul class="smallAndTightList">
<li>[[Sirius functions]]</li>
<li>[[List of $functions|Sirius functions]]</li>
<li>[[Fast/Unload User Language Interface]]</li>
<li>[[Fast/Unload User Language Interface]]</li>
<li>[[Janus Open Client]]</li>
<li>[[Media:JoclrNew.pdf|Janus Open Client]]</li>
<li>[[Janus Open Server]]</li>
<li>[[Media:JosrvrNew.pdf|Janus Open Server]]</li>
<li>[[Janus Sockets]]</li>
<li>[[Janus Sockets]]</li>
<li>[[Janus Web Server]]</li>
<li>[[Janus Web Server]]</li>
<li>[[Japanese functions]]</li>
<li>Japanese functions</li>
<li>[[Sir2000 Field Migration Facility]]</li>
<li>[[Media:SirfieldNew.pdf|Sir2000 Field Migration Facility]]</li>
</ul>
</ul>


[[Category:$Functions|$Session_Close]]
[[Category:$Functions|$Session_Close]]

Latest revision as of 22:11, 6 October 2015

Close an open session

Note: Many $functions have been deprecated in favor of Object Oriented methods. There is no direct OO equivalent for the $Session_Close function.

$Session_Close closes an open session, accepts three arguments and returns a zero, indicating success, or a number indicating the cause of error, if there is one.

Syntax

%rc = $Session_Close([sesid], [owner], [timeout])

Syntax terms

%rc A numeric value set to 0 or to an error indicator. See Status codes, below.
sesid A new ID to be given to the session being closed. This is an optional argument which if not specified leaves the session's ID unchanged.
owner The userid that is to be set as the new owner of the session being closed. An owner value of * means that the session is public, that is available to all users. Only a system administrator can create a non-public session for a user other than itself.

This is an optional argument which if not specified leaves the session's owner unchanged.

timeout The new value to be used as the session timeout value, that is the time after which the session is considered timed-out, that is eligible for deletion. A value of -1 means to use the SRSDEFTO parameter value.

This is an optional argument; if it is not specified, there is no change to the session's timeout value.

Status codes

-1 — Session not open  0 — No errors  1 — Session id already exists for user  2 — Online session limit exceeded  3 — User session limit exceeded

The status codes greater than 0 can only happen when one or more of the session attributes (sesid, owner, timeout) is being changed.

Usage notes

  • After a $Session_Close, any session $lists, longstrings and XMLDocs will no longer be accessible.
  • If a $Session_Delete had been done for the session before it was closed by the user who had the session open or someone else, the session is immediately deleted when the $Session_Close is done. A logout always does an implied $Session_Close, so $Session_Close is only necessary if another session is to be open or to minimize the time window in which the session might be requested by another thread.

Example

The following example closes the current session, making it a public session in the process:

%rc = $Session_Close(, '*')

Products authorizing $Session_Close