Skip to content

Commit a2a4cda

Browse files
committed
Make code, test and documentation updates for 6.10 based on test inputs
1 parent 0cb3b28 commit a2a4cda

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

51 files changed

+2535
-1830
lines changed

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
# node-oracledb version 6.10.0-dev <img src="https://img.shields.io/npm/v/oracledb.svg" alt="oracledb"/> <img src="https://img.shields.io/npm/dm/oracledb.svg" alt="oracledb"/>
1+
# node-oracledb version 6.10.0 <img src="https://img.shields.io/npm/v/oracledb.svg" alt="oracledb"/> <img src="https://img.shields.io/npm/dm/oracledb.svg" alt="oracledb"/>
22

33
The node-oracledb add-on for Node.js powers high performance Oracle Database
44
applications. Applications can be written in TypeScript, or directly in
55
JavaScript.
66

7-
Use node-oracledb 6.10.0-dev to connect Node.js 14.17, or later, to Oracle
7+
Use node-oracledb 6.10.0 to connect Node.js 14.17, or later, to Oracle
88
Database. Older versions of node-oracledb may work with older versions of
99
Node.js.
1010

doc/README.md

Lines changed: 25 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,38 @@
1-
Sphinx is used to generate the HTML for the node-oracledb documentation.
1+
# node-oracledb Documentation Source
22

3-
The generated node-oracledb documentation is at
4-
https://node-oracledb.readthedocs.io/
3+
This directory contains the node-oracledb documentation source. It is written
4+
using reST (re-Structured Text). The source files are processed using
5+
[Sphinx](http://www.sphinx-doc.org) and can be turned into HTML, PDF or ePub
6+
documentation.
57

6-
This directory contains the documentation source. It is written using reST
7-
(re-Structured Text). The source files are processed using Sphinx and can be
8-
turned into HTML, PDF or ePub documentation.
8+
**Visit https://node-oracledb.readthedocs.io/ for pre-built production and
9+
development node-oracledb documentation**
910

10-
If you wish to build documentation yourself, install Sphinx and the Read the
11-
Docs theme. Sphinx is available on many Linux distributions as a pre-built
12-
package. You can also install Sphinx and the Read the Docs theme using the
13-
Python package manager "pip", for example::
11+
## Building Documentation Locally
1412

15-
python -m pip install -r requirements.txt
13+
To build the documentation locally:
1614

17-
For more information on Sphinx, please visit this page:
15+
1. Install Sphinx and the Read the Docs theme using the Python package manager
16+
``pip``, for example:
1817

19-
http://www.sphinx-doc.org
18+
python -m pip install --upgrade -r requirements.txt
2019

21-
Once Sphinx is installed, the supplied Makefile can be used to build the
22-
different targets, for example to build the HTML documentation, run::
20+
You can alternatively install these from pre-built packages for your
21+
operating system, if available.
2322

24-
make
23+
2. Once Sphinx is installed, use the Makefile to build your desired
24+
documentation format.
2525

26-
To make ePub documentation, run::
26+
To build the HTML documentation:
2727

28-
make epub
28+
make
2929

30-
To make PDF documentation, run::
30+
To make ePub documentation:
3131

32-
make pdf
32+
make epub
3333

34-
The program ``latexmk`` may be required by Sphinx to generate PDF output.
34+
To make PDF documentation:
35+
36+
make pdf
37+
38+
The program ``latexmk`` may be required by Sphinx to generate PDF output.

doc/src/api_manual/aq.rst

Lines changed: 41 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -9,15 +9,14 @@ An AqQueue object is created by
99
dequeuing Oracle Advanced Queuing messages. Each AqQueue can be used for
1010
enqueuing, dequeuing, or for both.
1111

12-
.. note::
13-
14-
In this release, Oracle Advanced Queuing (AQ) is only supported in the
15-
node-oracledb Thick mode. See :ref:`enablingthick`.
16-
1712
See :ref:`Oracle Advanced Queuing (AQ) <aq>` for usage.
1813

1914
.. versionadded:: 4.0
2015

16+
.. versionchanged:: 6.10
17+
18+
Support for AQ was added in node-oracledb Thin mode.
19+
2120
.. _aqqueueproperties:
2221

2322
AqQueue Properties
@@ -43,47 +42,56 @@ AqQueue Properties
4342

4443
.. _aqdeqoptionsclass:
4544

46-
.. list-table-with-summary:: AqDeqOptions Class Attributes
45+
.. list-table-with-summary:: AqDeqOptions Class Properties
4746
:header-rows: 1
4847
:class: wy-table-responsive
4948
:align: center
5049
:widths: 10 10 30
51-
:summary: The first column displays the attribute name. The second
52-
column displays the data type of the attribute. The third column
53-
displays the description of the attribute.
50+
:summary: The first column displays the property name. The second
51+
column displays the data type of the property. The third column
52+
displays the description of the property.
5453

55-
* - Attribute Name
54+
* - Property Name
5655
- Data Type
5756
- Description
5857
* - ``condition``
5958
- String
60-
- The condition that must be satisfied in order for a message to be dequeued. The condition is a boolean expression similar to the WHERE clause of a SQL query. The boolean expression can include conditions on message properties, user data properties, and PL/SQL or SQL functions.
59+
- This read/write property is the condition that must be satisfied in order for a message to be dequeued. The condition is a boolean expression similar to the WHERE clause of a SQL query. The boolean expression can include conditions on message properties, user data properties, and PL/SQL or SQL functions.
6160
* - ``consumerName``
6261
- String
63-
- The name of the consumer that is dequeuing messages. Only messages matching the consumer name will be accessed. If the queue is not set up for multiple consumers, then this attribute should not be set.
62+
- This read/write property is the name of the consumer that is dequeuing messages. Only messages matching the consumer name will be accessed. If the queue is not set up for multiple consumers, then this attribute should not be set.
6463
* - ``correlation``
6564
- String
66-
- The correlation to use when dequeuing. Special pattern-matching characters, such as the percent sign (%) and the underscore (_), can be used. If multiple messages satisfy the pattern, the order of dequeuing is indeterminate.
65+
- This read/write property is the correlation to use when dequeuing. Special pattern-matching characters, such as the percent sign (%) and the underscore (_), can be used. If multiple messages satisfy the pattern, the order of dequeuing is indeterminate.
66+
* - ``deliveryMode``
67+
- Integer
68+
- This write-only property is the delivery mode when dequeuing messages. It can be one of the following constants: :ref:`oracledb.AQ_MSG_DELIV_MODE_PERSISTENT <oracledbconstantsaq>`, :ref:`oracledb.AQ_MSG_DELIV_MODE_BUFFERED <oracledbconstantsaq>`, or :ref:`oracledb.AQ_MSG_DELIV_MODE_PERSISTENT_OR_BUFFERED <oracledbconstantsaq>`.
69+
70+
Note that :ref:`oracledb.AQ_MSG_DELIV_MODE_BUFFERED <oracledbconstantsaq>` is not supported with JSON payloads.
71+
72+
.. versionadded:: 6.10
6773
* - ``mode``
6874
- Integer
69-
- The mode to use for dequeuing messages. It can be one of the following constants: :ref:`oracledb.AQ_DEQ_MODE_BROWSE <oracledbconstantsaq>`, :ref:`oracledb.AQ_DEQ_MODE_LOCKED <oracledbconstantsaq>`, :ref:`oracledb.AQ_DEQ_MODE_REMOVE <oracledbconstantsaq>`, :ref:`oracledb.AQ_DEQ_MODE_REMOVE_NO_DATA <oracledbconstantsaq>`.
75+
- This read/write property is the mode to use for dequeuing messages. It can be one of the following constants: :ref:`oracledb.AQ_DEQ_MODE_BROWSE <oracledbconstantsaq>`, :ref:`oracledb.AQ_DEQ_MODE_LOCKED <oracledbconstantsaq>`, :ref:`oracledb.AQ_DEQ_MODE_REMOVE <oracledbconstantsaq>`, :ref:`oracledb.AQ_DEQ_MODE_REMOVE_NO_DATA <oracledbconstantsaq>`.
7076
* - ``msgId``
7177
- Buffer
72-
- A unique identifier specifying the message to be dequeued.
78+
- This read/write property is a unique identifier specifying the message to be dequeued.
7379
* - ``navigation``
7480
- Integer
75-
- The position in the queue of the message that is to be dequeued. It can be one of the following constants: :ref:`oracledb.AQ_DEQ_NAV_FIRST_MSG <oracledbconstantsaq>`, :ref:`oracledb.AQ_DEQ_NAV_NEXT_TRANSACTION <oracledbconstantsaq>`, :ref:`oracledb.AQ_DEQ_NAV_NEXT_MSG <oracledbconstantsaq>`.
81+
- This read/write property is the position in the queue of the message that is to be dequeued. It can be one of the following constants: :ref:`oracledb.AQ_DEQ_NAV_FIRST_MSG <oracledbconstantsaq>`, :ref:`oracledb.AQ_DEQ_NAV_NEXT_TRANSACTION <oracledbconstantsaq>`, :ref:`oracledb.AQ_DEQ_NAV_NEXT_MSG <oracledbconstantsaq>`.
7682
* - ``transformation``
7783
- String
78-
- The transformation that will take place on messages when they are dequeued. The transformation must be created using dbms_transform.
84+
- This read/write property is the transformation that will take place on messages when they are dequeued. The transformation must be created using dbms_transform.
7985

80-
This attribute is not supported in Transactional Event Queues (TxEventQ).
86+
This attribute is only supported in node-oracledb :ref:`Thick mode <enablingthick>` and is not supported in Transactional Event Queues (TxEventQ).
8187
* - ``visibility``
8288
- Integer
83-
- Defines whether the dequeue occurs in the current transaction or as a separate transaction. It can be one of the following constants: :ref:`oracledb.AQ_VISIBILITY_IMMEDIATE <oracledbconstantsaq>`, :ref:`oracledb.AQ_VISIBILITY_ON_COMMIT <oracledbconstantsaq>`.
89+
- This read/write property defines whether the dequeue occurs in the current transaction or as a separate transaction. It can be one of the following constants: :ref:`oracledb.AQ_VISIBILITY_IMMEDIATE <oracledbconstantsaq>`, :ref:`oracledb.AQ_VISIBILITY_ON_COMMIT <oracledbconstantsaq>`.
90+
91+
Constant :ref:`oracledb.AQ_VISIBILITY_IMMEDIATE <oracledbconstantsaq>` can only be specified in :meth:`aqQueue.deqMany()` when using node-oracledb :ref:`Thick mode <enablingthick>`.
8492
* - ``wait``
8593
- Integer
86-
- The number of seconds to wait for a message matching the search criteria to become available. It can alternatively be one of the following constants: :ref:`oracledb.AQ_DEQ_NO_WAIT <oracledbconstantsaq>`, :ref:`oracledb.AQ_DEQ_WAIT_FOREVER <oracledbconstantsaq>`.
94+
- This read/write property is the number of seconds to wait for a message matching the search criteria to become available. It can alternatively be one of the following constants: :ref:`oracledb.AQ_DEQ_NO_WAIT <oracledbconstantsaq>`, :ref:`oracledb.AQ_DEQ_WAIT_FOREVER <oracledbconstantsaq>`.
8795

8896
See `Oracle Advanced Queuing Documentation <https://www.oracle.com/pls
8997
/topic/lookup?ctx=dblatest&id=ADQUE>`__ for more information about
@@ -104,29 +112,33 @@ AqQueue Properties
104112

105113
.. _aqenqoptionsclass:
106114

107-
.. list-table-with-summary:: AqEnqOptions Class Attributes
115+
.. list-table-with-summary:: AqEnqOptions Class Properties
108116
:header-rows: 1
109117
:class: wy-table-responsive
110118
:align: center
111119
:widths: 10 10 30
112-
:summary: The first column displays the attribute name. The second
113-
column displays the data type of the attribute. The third column
114-
displays the description of the attribute.
120+
:summary: The first column displays the property name. The second
121+
column displays the data type of the property. The third column
122+
displays the description of the property.
115123

116-
* - Attribute Name
124+
* - Property Name
117125
- Data Type
118126
- Description
119127
* - ``deliveryMode``
120128
- Integer
121-
- The delivery mode when enqueuing messages. It can be one of the following constants: :ref:`oracledb.AQ_MSG_DELIV_MODE_PERSISTENT <oracledbconstantsaq>`, :ref:`oracledb.AQ_MSG_DELIV_MODE_BUFFERED <oracledbconstantsaq>`, :ref:`oracledb.AQ_MSG_DELIV_MODE_PERSISTENT_OR_BUFFERED <oracledbconstantsaq>`.
129+
- This read/write property is the delivery mode when enqueuing messages. It can be one of the following constants: :ref:`oracledb.AQ_MSG_DELIV_MODE_PERSISTENT <oracledbconstantsaq>`, :ref:`oracledb.AQ_MSG_DELIV_MODE_BUFFERED <oracledbconstantsaq>`, :ref:`oracledb.AQ_MSG_DELIV_MODE_PERSISTENT_OR_BUFFERED <oracledbconstantsaq>`.
130+
131+
Note that :ref:`oracledb.AQ_MSG_DELIV_MODE_BUFFERED <oracledbconstantsaq>` is not supported with JSON payloads.
122132
* - ``transformation``
123133
- String
124-
- The transformation that will take place when messages are enqueued. The transformation must be created using dbms_transform.
134+
- This read/write property is the transformation that will take place when messages are enqueued. The transformation must be created using dbms_transform.
125135

126-
This attribute is not supported in Transactional Event Queues (TxEventQ).
136+
This attribute is only supported in node-oracledb :ref:`Thick mode <enablingthick>` and is not supported in Transactional Event Queues (TxEventQ).
127137
* - ``visibility``
128138
- Integer
129-
- Defines whether the enqueue occurs in the current transaction or as a separate transaction. It can be one of the following constants: :ref:`oracledb.AQ_VISIBILITY_IMMEDIATE <oracledbconstantsaq>`, :ref:`oracledb.AQ_VISIBILITY_ON_COMMIT <oracledbconstantsaq>`.
139+
- This read/write property defines whether the enqueue occurs in the current transaction or as a separate transaction. It can be one of the following constants: :ref:`oracledb.AQ_VISIBILITY_IMMEDIATE <oracledbconstantsaq>`, :ref:`oracledb.AQ_VISIBILITY_ON_COMMIT <oracledbconstantsaq>`.
140+
141+
Constant :ref:`oracledb.AQ_VISIBILITY_IMMEDIATE <oracledbconstantsaq>` can only be specified in :meth:`aqQueue.enqMany()` when using node-oracledb :ref:`Thick mode <enablingthick>`.
130142

131143
See `Oracle Advanced Queuing Documentation <https://www.oracle.com/pls/
132144
topic/lookup?ctx=dblatest&id=ADQUE>`__ for more information about

0 commit comments

Comments
 (0)