@sap/async-xsjs 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (178) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/LICENSE +37 -0
  3. package/README.md +445 -0
  4. package/differences.md +162 -0
  5. package/docs/$.Application.html +262 -0
  6. package/docs/$.Session.html +674 -0
  7. package/docs/$.db.CallableStatement.html +2524 -0
  8. package/docs/$.db.Connection.html +511 -0
  9. package/docs/$.db.ParameterMetaData.html +805 -0
  10. package/docs/$.db.PreparedStatement.html +1796 -0
  11. package/docs/$.db.ResultSet.html +1308 -0
  12. package/docs/$.db.ResultSetMetaData.html +800 -0
  13. package/docs/$.db.SQLException.html +259 -0
  14. package/docs/$.db.html +773 -0
  15. package/docs/$.hdb.ColumnMetadata.html +438 -0
  16. package/docs/$.hdb.Connection.html +663 -0
  17. package/docs/$.hdb.ProcedureResult.html +280 -0
  18. package/docs/$.hdb.ResultSet.html +324 -0
  19. package/docs/$.hdb.ResultSetIterator.html +315 -0
  20. package/docs/$.hdb.ResultSetMetaData.html +259 -0
  21. package/docs/$.hdb.SQLException.html +259 -0
  22. package/docs/$.hdb.html +557 -0
  23. package/docs/$.html +471 -0
  24. package/docs/$.jobs.Job.html +783 -0
  25. package/docs/$.jobs.JobLog.html +380 -0
  26. package/docs/$.jobs.JobSchedules.html +852 -0
  27. package/docs/$.jobs.html +238 -0
  28. package/docs/$.net.Destination.html +304 -0
  29. package/docs/$.net.Mail.Part.html +510 -0
  30. package/docs/$.net.Mail.html +504 -0
  31. package/docs/$.net.SMTPConnection.html +347 -0
  32. package/docs/$.net.html +749 -0
  33. package/docs/$.net.http.Client.html +562 -0
  34. package/docs/$.net.http.Destination.html +237 -0
  35. package/docs/$.net.http.Request.html +567 -0
  36. package/docs/$.net.http.html +292 -0
  37. package/docs/$.security.AntiVirus.html +361 -0
  38. package/docs/$.security.Store.html +636 -0
  39. package/docs/$.security.crypto.html +414 -0
  40. package/docs/$.security.html +247 -0
  41. package/docs/$.security.x509.html +373 -0
  42. package/docs/$.text.analysis.Session.html +983 -0
  43. package/docs/$.text.analysis.html +242 -0
  44. package/docs/$.text.html +246 -0
  45. package/docs/$.text.mining.Session.html +2018 -0
  46. package/docs/$.text.mining.html +242 -0
  47. package/docs/$.trace.html +525 -0
  48. package/docs/$.util.SAXParser.html +955 -0
  49. package/docs/$.util.Zip.html +474 -0
  50. package/docs/$.util.codec.html +414 -0
  51. package/docs/$.util.compression.html +357 -0
  52. package/docs/$.util.html +325 -0
  53. package/docs/$.util.sql.html +290 -0
  54. package/docs/$.web.Body.html +333 -0
  55. package/docs/$.web.EntityList.html +296 -0
  56. package/docs/$.web.TupelList.html +496 -0
  57. package/docs/$.web.WebEntityRequest.html +393 -0
  58. package/docs/$.web.WebEntityResponse.html +392 -0
  59. package/docs/$.web.WebRequest.html +560 -0
  60. package/docs/$.web.WebResponse.html +609 -0
  61. package/docs/$.web.html +246 -0
  62. package/docs/Copyright-SAP.html +39 -0
  63. package/docs/Disclaimer-SAP.html +55 -0
  64. package/docs/index.html +232 -0
  65. package/docs/styles/jsdoc-default.css +382 -0
  66. package/lib/AppConfig.js +36 -0
  67. package/lib/AuditLogger.js +41 -0
  68. package/lib/cacert.js +26 -0
  69. package/lib/ctypes.js +153 -0
  70. package/lib/destinations/dest-provider.js +57 -0
  71. package/lib/index.js +235 -0
  72. package/lib/jobs/Action.js +40 -0
  73. package/lib/jobs/Job.js +100 -0
  74. package/lib/jobs/JobManager.js +150 -0
  75. package/lib/jobs/JobsRuntime.js +133 -0
  76. package/lib/jobs/SqlScriptJobRunner.js +36 -0
  77. package/lib/jobs/XsjsJobRunner.js +78 -0
  78. package/lib/jobs/index.js +11 -0
  79. package/lib/logging.js +16 -0
  80. package/lib/middleware.js +125 -0
  81. package/lib/odata/ODataService.js +125 -0
  82. package/lib/odata/index.js +7 -0
  83. package/lib/odata/service-factory.js +26 -0
  84. package/lib/passport-noauth.js +17 -0
  85. package/lib/routes.js +115 -0
  86. package/lib/runtime.js +740 -0
  87. package/lib/sandbox.js +40 -0
  88. package/lib/utils/XsJsFunctionRunner.js +57 -0
  89. package/lib/utils/XsJsLibFunctionRunner.js +57 -0
  90. package/lib/utils/buffer-utils.js +77 -0
  91. package/lib/utils/compression-utils.js +14 -0
  92. package/lib/utils/date-utils.js +104 -0
  93. package/lib/utils/errors/HttpError.js +20 -0
  94. package/lib/utils/errors/wrap-app-error.js +18 -0
  95. package/lib/utils/index.js +17 -0
  96. package/lib/utils/xs-function-runner.js +51 -0
  97. package/lib/utils/xs-types.js +21 -0
  98. package/lib/utils/xspath.js +36 -0
  99. package/lib/utils/xsstack.js +28 -0
  100. package/lib/views/error.html +28 -0
  101. package/lib/xsjs/Application.js +28 -0
  102. package/lib/xsjs/Locale.js +53 -0
  103. package/lib/xsjs/Session.js +31 -0
  104. package/lib/xsjs/constants.js +71 -0
  105. package/lib/xsjs/db/common/DbBase.js +85 -0
  106. package/lib/xsjs/db/common/DbOptions.js +163 -0
  107. package/lib/xsjs/db/common/arguments-validation.js +102 -0
  108. package/lib/xsjs/db/common/connection.js +12 -0
  109. package/lib/xsjs/db/common/enums.js +93 -0
  110. package/lib/xsjs/db/common/execute-batch.js +38 -0
  111. package/lib/xsjs/db/common/parse-time.js +139 -0
  112. package/lib/xsjs/db/dbapi/CallableStatement.js +192 -0
  113. package/lib/xsjs/db/dbapi/Connection.js +78 -0
  114. package/lib/xsjs/db/dbapi/DB.js +39 -0
  115. package/lib/xsjs/db/dbapi/ParameterMetaData.js +118 -0
  116. package/lib/xsjs/db/dbapi/PreparedStatement.js +78 -0
  117. package/lib/xsjs/db/dbapi/ResultSet.js +220 -0
  118. package/lib/xsjs/db/dbapi/ResultSetMetaData.js +116 -0
  119. package/lib/xsjs/db/dbapi/Statement.js +514 -0
  120. package/lib/xsjs/db/dbapi/conversions.js +113 -0
  121. package/lib/xsjs/db/dbapi/fetch-rows.js +32 -0
  122. package/lib/xsjs/db/hdbapi/Connection.js +525 -0
  123. package/lib/xsjs/db/hdbapi/HDB.js +32 -0
  124. package/lib/xsjs/db/hdbapi/ResultSetIterator.js +40 -0
  125. package/lib/xsjs/db/hdbapi/convert.js +77 -0
  126. package/lib/xsjs/db/hdbapi/table-string-parser.js +52 -0
  127. package/lib/xsjs/db/index.js +4 -0
  128. package/lib/xsjs/index.js +13 -0
  129. package/lib/xsjs/jobs/Job.js +228 -0
  130. package/lib/xsjs/jobs/Jobs.js +11 -0
  131. package/lib/xsjs/jobs/Logs.js +127 -0
  132. package/lib/xsjs/jobs/Schedule.js +110 -0
  133. package/lib/xsjs/jobs/Schedules.js +108 -0
  134. package/lib/xsjs/net/Destination.js +43 -0
  135. package/lib/xsjs/net/http/Client.js +220 -0
  136. package/lib/xsjs/net/http/HTTP.js +72 -0
  137. package/lib/xsjs/net/index.js +5 -0
  138. package/lib/xsjs/net/smtp/Mail.js +38 -0
  139. package/lib/xsjs/net/smtp/Part.js +30 -0
  140. package/lib/xsjs/net/smtp/SMTPConnection.js +39 -0
  141. package/lib/xsjs/net/smtp/index.js +18 -0
  142. package/lib/xsjs/net/smtp/nodemailer-util.js +77 -0
  143. package/lib/xsjs/require.js +39 -0
  144. package/lib/xsjs/security/AntiVirus.js +31 -0
  145. package/lib/xsjs/security/Store.js +119 -0
  146. package/lib/xsjs/security/crypto.js +23 -0
  147. package/lib/xsjs/security/index.js +5 -0
  148. package/lib/xsjs/security/x509.js +12 -0
  149. package/lib/xsjs/text/analysis/Session.js +128 -0
  150. package/lib/xsjs/text/index.js +30 -0
  151. package/lib/xsjs/text/mining/Session.js +82 -0
  152. package/lib/xsjs/trace/trace.js +41 -0
  153. package/lib/xsjs/util/SAXParser.js +174 -0
  154. package/lib/xsjs/util/Zip.js +220 -0
  155. package/lib/xsjs/util/codec.js +33 -0
  156. package/lib/xsjs/util/compression.js +24 -0
  157. package/lib/xsjs/util/index.js +22 -0
  158. package/lib/xsjs/web/BasicWebEntity.js +41 -0
  159. package/lib/xsjs/web/EntityList.js +11 -0
  160. package/lib/xsjs/web/TupelLists/CookiesTupelList.js +47 -0
  161. package/lib/xsjs/web/TupelLists/HeadersTupelList.js +55 -0
  162. package/lib/xsjs/web/TupelLists/ParametersTupelList.js +83 -0
  163. package/lib/xsjs/web/TupelLists/TupelListBase.js +45 -0
  164. package/lib/xsjs/web/WebBody.js +135 -0
  165. package/lib/xsjs/web/WebEntityRequest.js +40 -0
  166. package/lib/xsjs/web/WebEntityResponse.js +26 -0
  167. package/lib/xsjs/web/WebRequest.js +209 -0
  168. package/lib/xsjs/web/WebResponse.js +183 -0
  169. package/lib/xsjs/web/index.js +4 -0
  170. package/lib/xsjs/web/utils/HeadersParser.js +53 -0
  171. package/lib/xsjs/web/utils/HttpRequestParser.js +93 -0
  172. package/lib/xsjs/web/utils/MultipartParser.js +163 -0
  173. package/lib/xsjs/web/utils/MultipartResponseBuilder.js +73 -0
  174. package/lib/xsjs/web/utils/SetCookieParser.js +32 -0
  175. package/lib/xsjslib/TextBundleWrapper.js +46 -0
  176. package/lib/xsjslib/index.js +11 -0
  177. package/npm-shrinkwrap.json +11540 -0
  178. package/package.json +84 -0
@@ -0,0 +1,674 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+
4
+ <head>
5
+ <meta charset="utf-8">
6
+ <title>JSDoc: Class: Session</title>
7
+ <script src="scripts/prettify/prettify.js"></script>
8
+ <script src="scripts/prettify/lang-css.js"></script>
9
+ <link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css">
10
+
11
+
12
+ <script src="scripts/launch-8b3c5ca29b9e.min.js"></script>
13
+ <script src="scripts/highlight.js"></script>
14
+ <link rel="canonical" href="$.Session.html">
15
+ </head>
16
+ <body>
17
+ <div id="main">
18
+ <h1 class="page-title">Class: Session</h1>
19
+ <section>
20
+ <header>
21
+ <h2>
22
+ <span class="ancestors"><a href="$.html">$</a>.</span>
23
+ Session
24
+ </h2>
25
+ </header>
26
+ <article>
27
+ <div class="container-overview">
28
+ <dt>
29
+ <h4 class="name" id="Session"><span class="type-signature"></span>new Session<span
30
+ class="signature">()</span><span class="type-signature"></span></h4>
31
+ </dt>
32
+ <dd>
33
+ <div class="description">
34
+ Represents an SAP HANA XS session.
35
+ </div>
36
+ <dl class="details">
37
+ </dl>
38
+ </dd>
39
+ </div>
40
+ <h3 class="subsection-title">Members</h3>
41
+ <dl>
42
+ <dt>
43
+ <h4 class="name" id="authType"><span class="type-signature">&lt;readonly> </span>authType<span
44
+ class="type-signature"> :string|null</span></h4>
45
+ </dt>
46
+ <dd>
47
+ <div class="description">
48
+ Authentication method that was used for the current session.
49
+ For authenticated sessions, authType contains one of the strings "Basic", "Form", "Logon
50
+ Ticket", "SAML", "SPNEGO", and "X.509".
51
+ If the current session is not authenticated (when using public apps), authType is null.
52
+ If the authentication type cannot be determined, authType contains the string "unknown".
53
+ </div>
54
+ <h5>Type:</h5>
55
+ <ul>
56
+ <li>
57
+ <span class="param-type">string</span>
58
+ |
59
+ <span class="param-type">null</span>
60
+ </li>
61
+ </ul>
62
+ <dl class="details">
63
+ </dl>
64
+ </dd>
65
+ <dt>
66
+ <h4 class="name" id="language"><span class="type-signature">&lt;readonly> </span>language<span
67
+ class="type-signature"> :string</span></h4>
68
+ </dt>
69
+ <dd>
70
+ <div class="description">
71
+ Language of the session in IETF (BCP 47) format.
72
+ This property contains the language that is used in the session.
73
+ The value is a string in the format specified by the IETF (BCP 47)
74
+ standard.
75
+ <p>
76
+ Contains an empty string unless a language is explicitly set by the XS session layer.
77
+ </div>
78
+ <h5>Type:</h5>
79
+ <ul>
80
+ <li>
81
+ <span class="param-type">string</span>
82
+ </li>
83
+ </ul>
84
+ <dl class="details">
85
+ </dl>
86
+ </dd>
87
+ <dt>
88
+ <h4 class="name" id="samlAttribute"><span class="type-signature"></span>samlAttribute<span
89
+ class="type-signature"> :Array.&lt;<a href="$.Session.html#SamlAttributeObject">$.Session~SamlAttributeObject</a>></span>
90
+ </h4>
91
+ </dt>
92
+ <dd>
93
+ <div class="description">
94
+ Provides the detailed content of the AttributeStatement tag which can be part of a SAML
95
+ assertion.
96
+ In contrary to the samlUserInfo object samlAttribute can contain a list of multiple values
97
+ belonging
98
+ to the same attribute.
99
+ The samlAttribute object contains name/value pairs where name is the content of "Attribute
100
+ Name='aName'"
101
+ and value is the content of AttributeValue.
102
+ This object is only available when the authentication method SAML is used.
103
+ </div>
104
+ <h5>Type:</h5>
105
+ <ul>
106
+ <li>
107
+ <span class="param-type">Array.&lt;<a href="$.Session.html#SamlAttributeObject">$.Session~SamlAttributeObject</a>></span>
108
+ </li>
109
+ </ul>
110
+ <dl class="details">
111
+ </dl>
112
+ <h5>Example</h5>
113
+ <pre class="prettyprint"><code>// this is an extract from the SAML assertion
114
+ &lt;Attribute Name="groups"&gt;
115
+ &lt;AttributeValue xmlns:xs="http://www.w3.org/2001/XMLSchema"
116
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xs:string"&gt;Manager&lt;/AttributeValue&gt;
117
+ &lt;AttributeValue xmlns:xs="http://www.w3.org/2001/XMLSchema"
118
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xs:string"&gt;Admin&lt;/AttributeValue&gt;
119
+ &lt;AttributeValue xmlns:xs="http://www.w3.org/2001/XMLSchema"
120
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xs:string"&gt;Developer&lt;/AttributeValue&gt;
121
+ &lt;/Attribute&gt;
122
+
123
+ //this can be used like this
124
+ var group = $.session.samlAttribute.groups[0].value; // value will be "Manager"</code></pre>
125
+ </dd>
126
+ <dt>
127
+ <h4 class="name" id="samlUserInfo"><span class="type-signature"></span>samlUserInfo<span
128
+ class="type-signature"> :object</span></h4>
129
+ </dt>
130
+ <dd>
131
+ <div class="description">
132
+ Provides the materialized content of the AttributeStatement tag which can be part of a SAML
133
+ assertion.
134
+ It is an object of name/value pairs where name is the content of "Attribute Name='aName'"
135
+ and value is the content of AttributeValue.
136
+ This object is only available when the authentication method SAML is used.
137
+ <br/><b>Remark:</b> samlUserInfo does not support a list of values. Please refer to
138
+ samlAttribute for a complete implementation
139
+ </div>
140
+ <h5>Type:</h5>
141
+ <ul>
142
+ <li>
143
+ <span class="param-type">object</span>
144
+ </li>
145
+ </ul>
146
+ <dl class="details">
147
+ <dt class="important tag-deprecated">Deprecated:</dt>
148
+ <dd>
149
+ <ul class="dummy">
150
+ <li>since HANA SP 11</li>
151
+ <ul>
152
+ </dd>
153
+ </dl>
154
+ <h5>Example</h5>
155
+ <pre class="prettyprint"><code>var emailAdress = $.session.samlUserInfo.mail;</code></pre>
156
+ </dd>
157
+ </dl>
158
+ <h3 class="subsection-title">Methods</h3>
159
+ <dl>
160
+ <dt>
161
+ <h4 class="name" id="assertAppPrivilege"><span class="type-signature"></span>assertAppPrivilege<span
162
+ class="signature">(privilegeName)</span><span class="type-signature"></span></h4>
163
+ </dt>
164
+ <dd>
165
+ <div class="description">
166
+ Asserts that the logged-on user has a specified application privilege
167
+ The specified privilege is checked and, if the user does not have the privilege, an exception is
168
+ thrown.
169
+ The exception contains an attribute 'privilege' which contains the name of the privilege.
170
+ </div>
171
+ <h5>Parameters:</h5>
172
+ <table class="params">
173
+ <thead>
174
+ <tr>
175
+ <th>Name</th>
176
+ <th>Type</th>
177
+ <th class="last">Description</th>
178
+ </tr>
179
+ </thead>
180
+ <tbody>
181
+ <tr>
182
+ <td class="name"><code>privilegeName</code></td>
183
+ <td class="type">
184
+ <span class="param-type">string</span>
185
+ </td>
186
+ <td class="description last">The fully qualified name of the application privilege to test
187
+ </td>
188
+ </tr>
189
+ </tbody>
190
+ </table>
191
+ <dl class="details">
192
+ </dl>
193
+ <h5>Throws:</h5>
194
+ <div class="param-desc">
195
+ Throws an error containing a privilege property naming the missing privilege.
196
+ </div>
197
+ <h5>Example</h5>
198
+ <pre class="prettyprint"><code>try {
199
+ $.session.assertAppPrivilege("sap.xse.test::Execute");
200
+ }
201
+ catch(ex) {
202
+ $.response.setBody(ex.privilege);
203
+ $.response.status = $.net.http.INTERNAL_SERVER_ERROR;
204
+ }</code></pre>
205
+ </dd>
206
+ <dt>
207
+ <h4 class="name" id="assertSystemPrivilege"><span class="type-signature"></span>assertSystemPrivilege<span
208
+ class="signature">(privilegeName)</span><span class="type-signature"></span></h4>
209
+ </dt>
210
+ <dd>
211
+ <div class="description">
212
+ Asserts that the logged-on user has a specified system privilege
213
+ The specified privilege is checked and, if the user does not have the privilege, an exception is
214
+ thrown.
215
+ The exception contains an attribute 'privilege' which contains the name of the privilege.
216
+ </div>
217
+ <h5>Parameters:</h5>
218
+ <table class="params">
219
+ <thead>
220
+ <tr>
221
+ <th>Name</th>
222
+ <th>Type</th>
223
+ <th class="last">Description</th>
224
+ </tr>
225
+ </thead>
226
+ <tbody>
227
+ <tr>
228
+ <td class="name"><code>privilegeName</code></td>
229
+ <td class="type">
230
+ <span class="param-type">string</span>
231
+ </td>
232
+ <td class="description last">The fully qualified name of the system privilege to test</td>
233
+ </tr>
234
+ </tbody>
235
+ </table>
236
+ <dl class="details">
237
+ </dl>
238
+ <h5>Throws:</h5>
239
+ <div class="param-desc">
240
+ Throws an error containing a privilege property naming the missing privilege.
241
+ </div>
242
+ </dd>
243
+ <dt>
244
+ <h4 class="name" id="getInvocationCount"><span class="type-signature"></span>getInvocationCount<span
245
+ class="signature">()</span><span class="type-signature"> &rarr; {Number}</span></h4>
246
+ </dt>
247
+ <dd>
248
+ <div class="description">
249
+ Returns the number of requests sent to the current session
250
+ </div>
251
+ <dl class="details">
252
+ </dl>
253
+ <h5>Returns:</h5>
254
+ <div class="param-desc">
255
+ The number of requests sent to the current session
256
+ </div>
257
+ <dl>
258
+ <dt>
259
+ Type
260
+ </dt>
261
+ <dd>
262
+ <span class="param-type">Number</span>
263
+ </dd>
264
+ </dl>
265
+ </dd>
266
+ <dt>
267
+ <h4 class="name" id="getSecurityToken"><span class="type-signature"></span>getSecurityToken<span
268
+ class="signature">()</span><span class="type-signature"> &rarr; {string}</span></h4>
269
+ </dt>
270
+ <dd>
271
+ <div class="description">
272
+ Returns unique session-specific token that could be used for XSRF prevention
273
+ </div>
274
+ <dl class="details">
275
+ </dl>
276
+ <h5>Returns:</h5>
277
+ <div class="param-desc">
278
+ The security token
279
+ </div>
280
+ <dl>
281
+ <dt>
282
+ Type
283
+ </dt>
284
+ <dd>
285
+ <span class="param-type">string</span>
286
+ </dd>
287
+ </dl>
288
+ </dd>
289
+ <dt>
290
+ <h4 class="name" id="getTimeout"><span class="type-signature"></span>getTimeout<span
291
+ class="signature">()</span><span class="type-signature"> &rarr; {integer}</span></h4>
292
+ </dt>
293
+ <dd>
294
+ <dl class="details">
295
+ </dl>
296
+ <h5>Returns:</h5>
297
+ <div class="param-desc">
298
+ The timeout of the XS session in seconds.
299
+ </div>
300
+ <dl>
301
+ <dt>
302
+ Type
303
+ </dt>
304
+ <dd>
305
+ <span class="param-type">integer</span>
306
+ </dd>
307
+ </dl>
308
+ <h5>Example</h5>
309
+ <pre class="prettyprint"><code>var timeout = $.session.getTimeout();</code></pre>
310
+ </dd>
311
+ <dt>
312
+ <h4 class="name" id="getUsername"><span class="type-signature"></span>getUsername<span
313
+ class="signature">()</span><span class="type-signature"> &rarr; {string}</span></h4>
314
+ </dt>
315
+ <dd>
316
+ <div class="description">
317
+ Returns the username of the logged-on database user.
318
+ </div>
319
+ <dl class="details">
320
+ </dl>
321
+ <h5>Returns:</h5>
322
+ <div class="param-desc">
323
+ The username of the logged-on database user.
324
+ </div>
325
+ <dl>
326
+ <dt>
327
+ Type
328
+ </dt>
329
+ <dd>
330
+ <span class="param-type">string</span>
331
+ </dd>
332
+ </dl>
333
+ </dd>
334
+ <dt>
335
+ <h4 class="name" id="hasAppPrivilege"><span class="type-signature"></span>hasAppPrivilege<span
336
+ class="signature">(privilegeName)</span><span
337
+ class="type-signature"> &rarr; {boolean}</span></h4>
338
+ </dt>
339
+ <dd>
340
+ <div class="description">
341
+ Checks whether the logged-on user has a specified application privilege
342
+ The specified privilege is checked, and the method returns true if the user has the privilege.
343
+ If the user does not have the specified privilege, the method returns false.
344
+ </div>
345
+ <h5>Parameters:</h5>
346
+ <table class="params">
347
+ <thead>
348
+ <tr>
349
+ <th>Name</th>
350
+ <th>Type</th>
351
+ <th class="last">Description</th>
352
+ </tr>
353
+ </thead>
354
+ <tbody>
355
+ <tr>
356
+ <td class="name"><code>privilegeName</code></td>
357
+ <td class="type">
358
+ <span class="param-type">string</span>
359
+ </td>
360
+ <td class="description last">The fully qualified name of the application privilege to test
361
+ </td>
362
+ </tr>
363
+ </tbody>
364
+ </table>
365
+ <dl class="details">
366
+ </dl>
367
+ <h5>Returns:</h5>
368
+ <div class="param-desc">
369
+ Returns true if the user does have the specified privilege and false if the user does not
370
+ </div>
371
+ <dl>
372
+ <dt>
373
+ Type
374
+ </dt>
375
+ <dd>
376
+ <span class="param-type">boolean</span>
377
+ </dd>
378
+ </dl>
379
+ <h5>Example</h5>
380
+ <pre class="prettyprint"><code>if (!$.session.hasAppPrivilege("sap.xse.test::Execute")) {
381
+ $.response.setBody("Privilege sap.xse.test::Execute is missing");
382
+ $.response.status = $.net.http.INTERNAL_SERVER_ERROR;
383
+ }</code></pre>
384
+ </dd>
385
+ <dt>
386
+ <h4 class="name" id="hasSystemPrivilege"><span class="type-signature"></span>hasSystemPrivilege<span
387
+ class="signature">(privilegeName)</span><span
388
+ class="type-signature"> &rarr; {boolean}</span></h4>
389
+ </dt>
390
+ <dd>
391
+ <div class="description">
392
+ Checks whether the logged-on user has a specified system privilege
393
+ The specified privilege is checked, and the method returns true if the user has the privilege.
394
+ If the user does not have the specified privilege, the method returns false.
395
+ </div>
396
+ <h5>Parameters:</h5>
397
+ <table class="params">
398
+ <thead>
399
+ <tr>
400
+ <th>Name</th>
401
+ <th>Type</th>
402
+ <th class="last">Description</th>
403
+ </tr>
404
+ </thead>
405
+ <tbody>
406
+ <tr>
407
+ <td class="name"><code>privilegeName</code></td>
408
+ <td class="type">
409
+ <span class="param-type">string</span>
410
+ </td>
411
+ <td class="description last">The fully qualified name of the system privilege to test</td>
412
+ </tr>
413
+ </tbody>
414
+ </table>
415
+ <dl class="details">
416
+ </dl>
417
+ <h5>Returns:</h5>
418
+ <div class="param-desc">
419
+ Returns true if the user does have the specified privilege and false if the user does not
420
+ </div>
421
+ <dl>
422
+ <dt>
423
+ Type
424
+ </dt>
425
+ <dd>
426
+ <span class="param-type">boolean</span>
427
+ </dd>
428
+ </dl>
429
+ </dd>
430
+ </dl>
431
+ <h3 class="subsection-title">Type Definitions</h3>
432
+ <dl>
433
+ <dt>
434
+ <h4 class="name" id="SamlAttributeObject">SamlAttributeObject</h4>
435
+ </dt>
436
+ <dd>
437
+ <h5>Type:</h5>
438
+ <ul>
439
+ <li>
440
+ <span class="param-type">object</span>
441
+ </li>
442
+ </ul>
443
+ <dl class="details">
444
+ <h5 class="subsection-title">Properties:</h5>
445
+ <dl>
446
+ <table class="props">
447
+ <thead>
448
+ <tr>
449
+ <th>Name</th>
450
+ <th>Type</th>
451
+ <th class="last">Description</th>
452
+ </tr>
453
+ </thead>
454
+ <tbody>
455
+ <tr>
456
+ <td class="name"><code>type</code></td>
457
+ <td class="type">
458
+ <span class="param-type">String</span>
459
+ </td>
460
+ <td class="description last">xsi:type of the AttributeValue.</td>
461
+ </tr>
462
+ <tr>
463
+ <td class="name"><code>value</code></td>
464
+ <td class="type">
465
+ <span class="param-type">String</span>
466
+ </td>
467
+ <td class="description last">the actual value of the AttributeValue. Please note
468
+ that nested structures (by using private xsi:type) are not supported and will be
469
+ handled as a plain string.
470
+ </td>
471
+ </tr>
472
+ </tbody>
473
+ </table>
474
+ </dl>
475
+ </dl>
476
+ </dd>
477
+ </dl>
478
+ </article>
479
+ </section>
480
+ </div>
481
+ <nav>
482
+ <h2><a href="index.html">Index</a></h2>
483
+ <h3>Classes</h3>
484
+ <table>
485
+ <tr>
486
+ <td><a href="$.security.AntiVirus.html">AntiVirus</a></td>
487
+ <td class="oblique">$.security</td>
488
+ </tr>
489
+ <tr>
490
+ <td><a href="$.Application.html">Application</a></td>
491
+ <td class="oblique">$</td>
492
+ </tr>
493
+ <tr>
494
+ <td><a href="$.web.Body.html">Body</a></td>
495
+ <td class="oblique">$.web</td>
496
+ </tr>
497
+ <tr>
498
+ <td><a href="$.db.CallableStatement.html">CallableStatement</a></td>
499
+ <td class="oblique">$.db</td>
500
+ </tr>
501
+ <tr>
502
+ <td><a href="$.net.http.Client.html">Client</a></td>
503
+ <td class="oblique">$.net.http</td>
504
+ </tr>
505
+ <tr>
506
+ <td><a href="$.hdb.ColumnMetadata.html">ColumnMetadata</a></td>
507
+ <td class="oblique">$.hdb</td>
508
+ </tr>
509
+ <tr>
510
+ <td><a href="$.db.Connection.html">Connection</a></td>
511
+ <td class="oblique">$.db</td>
512
+ </tr>
513
+ <tr>
514
+ <td><a href="$.hdb.Connection.html">Connection</a></td>
515
+ <td class="oblique">$.hdb</td>
516
+ </tr>
517
+ <tr>
518
+ <td><a href="$.net.Destination.html">Destination</a></td>
519
+ <td class="oblique">$.net</td>
520
+ </tr>
521
+ <tr>
522
+ <td><a href="$.net.http.Destination.html">Destination</a></td>
523
+ <td class="oblique">$.net.http</td>
524
+ </tr>
525
+ <tr>
526
+ <td><a href="$.web.EntityList.html">EntityList</a></td>
527
+ <td class="oblique">$.web</td>
528
+ </tr>
529
+ <tr>
530
+ <td><a href="$.jobs.Job.html">Job</a></td>
531
+ <td class="oblique">$.jobs</td>
532
+ </tr>
533
+ <tr>
534
+ <td><a href="$.jobs.JobLog.html">JobLog</a></td>
535
+ <td class="oblique">$.jobs</td>
536
+ </tr>
537
+ <tr>
538
+ <td><a href="$.jobs.JobSchedules.html">JobSchedules</a></td>
539
+ <td class="oblique">$.jobs</td>
540
+ </tr>
541
+ <tr>
542
+ <td><a href="$.net.Mail.html">Mail</a></td>
543
+ <td class="oblique">$.net</td>
544
+ </tr>
545
+ <tr>
546
+ <td><a href="$.db.ParameterMetaData.html">ParameterMetaData</a></td>
547
+ <td class="oblique">$.db</td>
548
+ </tr>
549
+ <tr>
550
+ <td><a href="$.net.Mail.Part.html">Part</a></td>
551
+ <td class="oblique">$.net.Mail</td>
552
+ </tr>
553
+ <tr>
554
+ <td><a href="$.db.PreparedStatement.html">PreparedStatement</a></td>
555
+ <td class="oblique">$.db</td>
556
+ </tr>
557
+ <tr>
558
+ <td><a href="$.hdb.ProcedureResult.html">ProcedureResult</a></td>
559
+ <td class="oblique">$.hdb</td>
560
+ </tr>
561
+ <tr>
562
+ <td><a href="$.net.http.Request.html">Request</a></td>
563
+ <td class="oblique">$.net.http</td>
564
+ </tr>
565
+ <tr>
566
+ <td><a href="$.db.ResultSet.html">ResultSet</a></td>
567
+ <td class="oblique">$.db</td>
568
+ </tr>
569
+ <tr>
570
+ <td><a href="$.hdb.ResultSet.html">ResultSet</a></td>
571
+ <td class="oblique">$.hdb</td>
572
+ </tr>
573
+ <tr>
574
+ <td><a href="$.hdb.ResultSetIterator.html">ResultSetIterator</a></td>
575
+ <td class="oblique">$.hdb</td>
576
+ </tr>
577
+ <tr>
578
+ <td><a href="$.db.ResultSetMetaData.html">ResultSetMetaData</a></td>
579
+ <td class="oblique">$.db</td>
580
+ </tr>
581
+ <tr>
582
+ <td><a href="$.hdb.ResultSetMetaData.html">ResultSetMetaData</a></td>
583
+ <td class="oblique">$.hdb</td>
584
+ </tr>
585
+ <tr>
586
+ <td><a href="$.util.SAXParser.html">SAXParser</a></td>
587
+ <td class="oblique">$.util</td>
588
+ </tr>
589
+ <tr>
590
+ <td><a href="$.Session.html">Session</a></td>
591
+ <td class="oblique">$</td>
592
+ </tr>
593
+ <tr>
594
+ <td><a href="$.text.analysis.Session.html">Session</a></td>
595
+ <td class="oblique">$.text.analysis</td>
596
+ </tr>
597
+ <tr>
598
+ <td><a href="$.text.mining.Session.html">Session</a></td>
599
+ <td class="oblique">$.text.mining</td>
600
+ </tr>
601
+ <tr>
602
+ <td><a href="$.net.SMTPConnection.html">SMTPConnection</a></td>
603
+ <td class="oblique">$.net</td>
604
+ </tr>
605
+ <tr>
606
+ <td><a href="$.db.SQLException.html">SQLException</a></td>
607
+ <td class="oblique">$.db</td>
608
+ </tr>
609
+ <tr>
610
+ <td><a href="$.hdb.SQLException.html">SQLException</a></td>
611
+ <td class="oblique">$.hdb</td>
612
+ </tr>
613
+ <tr>
614
+ <td><a href="$.security.Store.html">Store</a></td>
615
+ <td class="oblique">$.security</td>
616
+ </tr>
617
+ <tr>
618
+ <td><a href="$.web.TupelList.html">TupelList</a></td>
619
+ <td class="oblique">$.web</td>
620
+ </tr>
621
+ <tr>
622
+ <td><a href="$.web.WebEntityRequest.html">WebEntityRequest</a></td>
623
+ <td class="oblique">$.web</td>
624
+ </tr>
625
+ <tr>
626
+ <td><a href="$.web.WebEntityResponse.html">WebEntityResponse</a></td>
627
+ <td class="oblique">$.web</td>
628
+ </tr>
629
+ <tr>
630
+ <td><a href="$.web.WebRequest.html">WebRequest</a></td>
631
+ <td class="oblique">$.web</td>
632
+ </tr>
633
+ <tr>
634
+ <td><a href="$.web.WebResponse.html">WebResponse</a></td>
635
+ <td class="oblique">$.web</td>
636
+ </tr>
637
+ <tr>
638
+ <td><a href="$.util.Zip.html">Zip</a></td>
639
+ <td class="oblique">$.util</td>
640
+ </tr>
641
+ </table>
642
+ <h3>Namespaces</h3>
643
+ <ul>
644
+ <li><a href="$.html"><span class="oblique"></span>$</a></li>
645
+ <li><a href="$.db.html"><span class="oblique">$.</span>db</a></li>
646
+ <li><a href="$.hdb.html"><span class="oblique">$.</span>hdb</a></li>
647
+ <li><a href="$.jobs.html"><span class="oblique">$.</span>jobs</a></li>
648
+ <li><a href="$.net.html"><span class="oblique">$.</span>net</a></li>
649
+ <li><a href="$.net.http.html"><span class="oblique">$.net.</span>http</a></li>
650
+ <li><a href="$.security.html"><span class="oblique">$.</span>security</a></li>
651
+ <li><a href="$.security.crypto.html"><span class="oblique">$.security.</span>crypto</a></li>
652
+ <li><a href="$.security.x509.html"><span class="oblique">$.security.</span>x509</a></li>
653
+ <li><a href="$.text.html"><span class="oblique">$.</span>text</a></li>
654
+ <li><a href="$.text.analysis.html"><span class="oblique">$.text.</span>analysis</a></li>
655
+ <li><a href="$.text.mining.html"><span class="oblique">$.text.</span>mining</a></li>
656
+ <li><a href="$.trace.html"><span class="oblique">$.</span>trace</a></li>
657
+ <li><a href="$.util.html"><span class="oblique">$.</span>util</a></li>
658
+ <li><a href="$.util.codec.html"><span class="oblique">$.util.</span>codec</a></li>
659
+ <li><a href="$.util.compression.html"><span class="oblique">$.util.</span>compression</a></li>
660
+ <li><a href="$.util.sql.html"><span class="oblique">$.util.</span>sql</a></li>
661
+ <li><a href="$.web.html"><span class="oblique">$.</span>web</a></li>
662
+ </ul>
663
+ </nav>
664
+ <br clear="both">
665
+ <footer>
666
+ <a href="Copyright-SAP.html">Copyright</a>
667
+ &
668
+ <a href="Disclaimer-SAP.html">Disclaimer</a>
669
+ </footer>
670
+ <script>prettyPrint();</script>
671
+ <script src="scripts/linenumber.js"></script>
672
+ </body>
673
+
674
+ </html>