$Session Open: Difference between revisions

From m204wiki
Jump to navigation Jump to search
mNo edit summary
m (misc cleanup)
 
(39 intermediate revisions by 3 users not shown)
Line 2: Line 2:
<span class="pageSubtitle">Open a session</span>
<span class="pageSubtitle">Open a session</span>


<p class="warning">Most Sirius $functions have been deprecated in favor of Object Oriented methods. The OO equivalent for the $Session_Open function is '''[[to be entered]]'''.</p>
<p class="warn"><b>Note:</b> Many $functions have been deprecated in favor of Object Oriented methods. The OO equivalent for the $Session_Open function is <var>[[GetSession (Object subroutine)|GetSession]]</var>.</p>


$Session_Open opens a previously created [[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_Open</var> opens a previously created [[Sessions|session]].  


The first argument is the id of the session to be opened. This is a required argument.  
==Syntax==
<p class="syntax"><span class="term">%rc</span> = <span class="literal">$Session_Open</span>(<span class="term">sesid</span>, [<span class="term">owner</span>], [<span class="term">timeout</span>])
</p>
 
<table>
<tr><th>%rc</th>
<td>A returned zero, indicating success, or a number indicating the cause of error, if there is one.</td></tr>


The second argument is the userid that owns the session to be opened. An '''owner''' of "*" means that the session is public, that is available to all users. This optional argument defaults to the creating user's userid.  
<tr><th>sesid</th>
<td>The ID of the session to be opened. This is a required argument.</td></tr>


The third argument is the time to wait for an in-use session to be closed before giving up. A value of -1 indicates to use the value of the SRSDEFOW parameter. This argument defaults to -1, that is the value of the SRSDEFOW parameter.
<tr><th>owner</th>
==Syntax==
<td>The userid that owns the session to be opened. An <var class="term">owner</var> value of asterisk (<tt>*</tt>) means that the session is public, that is available to all users.
<p class="syntax"><section begin="syntax" /> %RC = $Session_Open(sesid, owner, timeout)
<p>
<section end="syntax" /></p>
This optional argument defaults to the creating user's userid. </p></td></tr>
<p class="caption">$Session_Open function
 
</p>
<tr><th>timeout</th>
<p class="caption">%RC is set to 0 or to an error indicator.</p>
<td>The time to wait for an in-use session to be closed before giving up. A value of -1 indicates to use the value of the <var>[[SRSDEFTO parameter|SRSDEFTO]]</var> parameter. This argument defaults to -1, that is, the value of the <var>SRSDEFTO</var> parameter.</td></tr>
<p class="code">  
</table>
0 - No errors
 
1 - Session not found
===Return codes===
2 - Session in use
<p>
</p>
<var class="term">%rc</var> is set to 0 or to an error indicator.</p>
<p class="caption">$Session_Open return codes
<p class="code">0 - No errors
1 - Session not found
2 - Session in use
</p>
</p>


==Usage notes==
Use of a non-zero timeout for <var>$Session_Open</var> can be useful for single-threading multiple threads through a request or for dealing with timing problems where it's possible for a request for a session to come in before the previous one is completely done. This is quite possible in <var class="product">[[Janus Web Server]]</var> applications where one of these occurs:
<ul>
<li>A request resulting from a redirect comes in before the redirecting thread has closed the session</li>
<li>A user cancels a request and then resubmits it while the original request is still processing and so has the session open.</li>
</ul>


Use of a non-zero timeout for $Session_Open can be useful for single-threading multiple threads through a request or for dealing with timing problems where it's possible for a request for a session to come in before the previous one is completely done. This is quite possible in ''[[Janus Web Server]]'' applications where a request resulting from a redirect comes in before the redirecting thread has closed the session or where a user cancels a request and then resubmits it while the original request is still processing and so has the session open.
==Example==
The following retrieves a session id from a cookie and opens it:
The following retrieves a session ID from a cookie and opens it:
<p class="code"> %SESID = $WEB_GET_COOKIE('SESID')
<p class="code">%sesid = $Web_Get_Cookie('SESID')
%RC = $Session_Open(%SESID)
%rc = $Session_Open(%sesid)
</p>
</p>


 
==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>
<p class="caption">Products authorizing $Session_Delete
</p>


[[Category:$Functions|$Session_Open]]
[[Category:$Functions|$Session_Open]]

Latest revision as of 22:48, 6 October 2015

Open a session

Note: Many $functions have been deprecated in favor of Object Oriented methods. The OO equivalent for the $Session_Open function is GetSession.

$Session_Open opens a previously created session.

Syntax

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

%rc A returned zero, indicating success, or a number indicating the cause of error, if there is one.
sesid The ID of the session to be opened. This is a required argument.
owner The userid that owns the session to be opened. An owner value of asterisk (*) means that the session is public, that is available to all users.

This optional argument defaults to the creating user's userid.

timeout The time to wait for an in-use session to be closed before giving up. A value of -1 indicates to use the value of the SRSDEFTO parameter. This argument defaults to -1, that is, the value of the SRSDEFTO parameter.

Return codes

%rc is set to 0 or to an error indicator.

0 - No errors 1 - Session not found 2 - Session in use

Usage notes

Use of a non-zero timeout for $Session_Open can be useful for single-threading multiple threads through a request or for dealing with timing problems where it's possible for a request for a session to come in before the previous one is completely done. This is quite possible in Janus Web Server applications where one of these occurs:

  • A request resulting from a redirect comes in before the redirecting thread has closed the session
  • A user cancels a request and then resubmits it while the original request is still processing and so has the session open.

Example

The following retrieves a session ID from a cookie and opens it:

%sesid = $Web_Get_Cookie('SESID') %rc = $Session_Open(%sesid)

Products authorizing $Session_Open