UNPKG

5.45 kBJavaScriptView Raw
1// Copyright (c) 2022, 2024, Oracle and/or its affiliates.
2
3//-----------------------------------------------------------------------------
4//
5// This software is dual-licensed to you under the Universal Permissive License
6// (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl and Apache License
7// 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose
8// either license.
9//
10// If you elect to accept the software under the Apache License, Version 2.0,
11// the following applies:
12//
13// Licensed under the Apache License, Version 2.0 (the "License");
14// you may not use this file except in compliance with the License.
15// You may obtain a copy of the License at
16//
17// https://www.apache.org/licenses/LICENSE-2.0
18//
19// Unless required by applicable law or agreed to in writing, software
20// distributed under the License is distributed on an "AS IS" BASIS,
21// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22// See the License for the specific language governing permissions and
23// limitations under the License.
24//
25//-----------------------------------------------------------------------------
26
27// This file contains values for implementation and public constants.
28//
29// All public constants are later exposed to node-oracledb apps via the exports
30// of oracledb.js.
31
32'use strict';
33
34const version = require('./version.js');
35
36const VERSION_STRING =
37 version.VERSION_MAJOR + '.' +
38 version.VERSION_MINOR + '.' +
39 version.VERSION_PATCH +
40 version.VERSION_SUFFIX;
41
42module.exports = {
43
44 // version information
45 VERSION_MAJOR: version.VERSION_MAJOR,
46 VERSION_MINOR: version.VERSION_MINOR,
47 VERSION_PATCH: version.VERSION_PATCH,
48 VERSION_SUFFIX: version.VERSION_SUFFIX,
49 VERSION_STRING: VERSION_STRING,
50
51 // defaults for initOracleClient()
52 DEFAULT_DRIVER_NAME: "node-oracledb : " + VERSION_STRING,
53 DEFAULT_ERROR_URL: "https://node-oracledb.readthedocs.io/en/latest/user_guide/installation.html",
54
55 // default for maxSize for OUT and IN/OUT binds
56 DEFAULT_MAX_SIZE_FOR_OUT_BINDS: 200,
57
58 // character set forms (internal use)
59 CSFRM_IMPLICIT: 1,
60 CSFRM_NCHAR: 2,
61
62 // CQN operation codes
63 CQN_OPCODE_ALL_OPS: 0,
64 CQN_OPCODE_ALL_ROWS: 1,
65 CQN_OPCODE_ALTER: 16,
66 CQN_OPCODE_DELETE: 8,
67 CQN_OPCODE_DROP: 32,
68 CQN_OPCODE_INSERT: 2,
69 CQN_OPCODE_UPDATE: 4,
70
71 // fetchInfo type defaulting
72 DEFAULT: 0,
73
74 // statement types
75 STMT_TYPE_UNKNOWN: 0,
76 STMT_TYPE_SELECT: 1,
77 STMT_TYPE_UPDATE: 2,
78 STMT_TYPE_DELETE: 3,
79 STMT_TYPE_INSERT: 4,
80 STMT_TYPE_CREATE: 5,
81 STMT_TYPE_DROP: 6,
82 STMT_TYPE_ALTER: 7,
83 STMT_TYPE_BEGIN: 8,
84 STMT_TYPE_DECLARE: 9,
85 STMT_TYPE_CALL: 10,
86 STMT_TYPE_EXPLAIN_PLAN: 15,
87 STMT_TYPE_MERGE: 16,
88 STMT_TYPE_ROLLBACK: 17,
89 STMT_TYPE_COMMIT: 21,
90
91 // shutdown modes
92 SHUTDOWN_MODE_DEFAULT: 0,
93 SHUTDOWN_MODE_TRANSACTIONAL: 1,
94 SHUTDOWN_MODE_TRANSACTIONAL_LOCAL: 2,
95 SHUTDOWN_MODE_IMMEDIATE: 3,
96 SHUTDOWN_MODE_ABORT: 4,
97 SHUTDOWN_MODE_FINAL: 5,
98
99 // startup modes
100 STARTUP_MODE_DEFAULT: 0,
101 STARTUP_MODE_FORCE: 1,
102 STARTUP_MODE_RESTRICT: 2,
103
104 // subscription event types
105 SUBSCR_EVENT_TYPE_SHUTDOWN: 2,
106 SUBSCR_EVENT_TYPE_SHUTDOWN_ANY: 3,
107 SUBSCR_EVENT_TYPE_STARTUP: 1,
108 SUBSCR_EVENT_TYPE_DEREG: 5,
109 SUBSCR_EVENT_TYPE_OBJ_CHANGE: 6,
110 SUBSCR_EVENT_TYPE_QUERY_CHANGE: 7,
111 SUBSCR_EVENT_TYPE_AQ: 100,
112
113 // subscription grouping classes
114 SUBSCR_GROUPING_CLASS_TIME: 1,
115
116 // subscription grouping types
117 SUBSCR_GROUPING_TYPE_SUMMARY: 1,
118 SUBSCR_GROUPING_TYPE_LAST: 2,
119
120 // subscription namespaces
121 SUBSCR_NAMESPACE_AQ: 1,
122 SUBSCR_NAMESPACE_DBCHANGE: 2,
123
124 // subscription quality of service flags
125 SUBSCR_QOS_BEST_EFFORT: 0x10,
126 SUBSCR_QOS_DEREG_NFY: 0x02,
127 SUBSCR_QOS_QUERY: 0x08,
128 SUBSCR_QOS_RELIABLE: 0x01,
129 SUBSCR_QOS_ROWIDS: 0x04,
130
131 // privileges
132 SYSASM: 0x00008000,
133 SYSBACKUP: 0x00020000,
134 SYSDBA: 0x00000002,
135 SYSDG: 0x00040000,
136 SYSKM: 0x00080000,
137 SYSOPER: 0x00000004,
138 SYSPRELIM: 0x00000008,
139 SYSRAC: 0x00100000,
140
141 // bind directions
142 BIND_IN: 3001,
143 BIND_INOUT: 3002,
144 BIND_OUT: 3003,
145
146 // outFormat values
147 OUT_FORMAT_ARRAY: 4001,
148 OUT_FORMAT_OBJECT: 4002,
149
150 // SODA collection creation modes
151 SODA_COLL_MAP_MODE: 5001,
152
153 // pool statuses
154 POOL_STATUS_OPEN: 6000,
155 POOL_STATUS_DRAINING: 6001,
156 POOL_STATUS_CLOSED: 6002,
157 POOL_STATUS_RECONFIGURING: 6003,
158
159 // purity values
160 PURITY_DEFAULT: 0,
161 PURITY_NEW: 1,
162 PURITY_SELF: 2,
163
164 // AQ dequeue wait options
165 AQ_DEQ_NO_WAIT: 0,
166 AQ_DEQ_WAIT_FOREVER: 4294967295,
167
168 // AQ dequeue modes
169 AQ_DEQ_MODE_BROWSE: 1,
170 AQ_DEQ_MODE_LOCKED: 2,
171 AQ_DEQ_MODE_REMOVE: 3,
172 AQ_DEQ_MODE_REMOVE_NO_DATA: 4,
173
174 // AQ dequeue navigation flags
175 AQ_DEQ_NAV_FIRST_MSG: 1,
176 AQ_DEQ_NAV_NEXT_TRANSACTION: 2,
177 AQ_DEQ_NAV_NEXT_MSG: 3,
178
179 // AQ message delivery modes
180 AQ_MSG_DELIV_MODE_PERSISTENT: 1,
181 AQ_MSG_DELIV_MODE_BUFFERED: 2,
182 AQ_MSG_DELIV_MODE_PERSISTENT_OR_BUFFERED: 3,
183
184 // AQ message states
185 AQ_MSG_STATE_READY: 0,
186 AQ_MSG_STATE_WAITING: 1,
187 AQ_MSG_STATE_PROCESSED: 2,
188 AQ_MSG_STATE_EXPIRED: 3,
189
190 // AQ visibility flags
191 AQ_VISIBILITY_IMMEDIATE: 1,
192 AQ_VISIBILITY_ON_COMMIT: 2,
193
194 // TPC/XA begin flags Constants
195 TPC_BEGIN_JOIN: 0x00000002,
196 TPC_BEGIN_NEW: 0x00000001,
197 TPC_BEGIN_PROMOTE: 0x00000008,
198 TPC_BEGIN_RESUME: 0x00000004,
199
200 // TPC/XA two-phase commit flags
201 TPC_END_NORMAL: 0,
202 TPC_END_SUSPEND: 0x00100000,
203
204 // vector types
205 VECTOR_FORMAT_FLOAT32: 2,
206 VECTOR_FORMAT_FLOAT64: 3,
207 VECTOR_FORMAT_INT8: 4,
208
209};