Skip to content

Commit 36d9334

Browse files
committed
Fix the charset constants and remove duplicate constants
1 parent bf8ed3a commit 36d9334

File tree

8 files changed

+24
-26
lines changed

8 files changed

+24
-26
lines changed

lib/thin/dbObject.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -362,10 +362,10 @@ class ThinDbObjectImpl extends DbObjectImpl {
362362
return buf.readBinaryInteger();
363363
case types.DB_TYPE_VARCHAR:
364364
case types.DB_TYPE_CHAR:
365-
return buf.readStr(constants.TNS_CS_IMPLICIT);
365+
return buf.readStr(constants.CSFRM_IMPLICIT);
366366
case types.DB_TYPE_NVARCHAR:
367367
case types.DB_TYPE_NCHAR:
368-
return buf.readStr(constants.TNS_CS_NCHAR);
368+
return buf.readStr(constants.CSFRM_NCHAR);
369369
case types.DB_TYPE_RAW:
370370
return Buffer.from(buf.readBytesWithLength());
371371
case types.DB_TYPE_BINARY_DOUBLE:

lib/thin/lob.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -121,10 +121,10 @@ class ThinLobImpl extends LobImpl {
121121
}
122122

123123
getCsfrm() {
124-
if (this.dbType._csfrm !== constants.TNS_CS_NCHAR) {
124+
if (this.dbType._csfrm !== constants.CSFRM_NCHAR) {
125125
if (this._locator[constants.TNS_LOB_LOC_OFFSET_FLAG_3] &
126126
constants.TNS_LOB_LOC_FLAGS_VAR_LENGTH_CHARSET) {
127-
return constants.TNS_CS_NCHAR;
127+
return constants.CSFRM_NCHAR;
128128
}
129129
}
130130
return this.dbType._csfrm;

lib/thin/protocol/buffer.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -465,7 +465,7 @@ class BaseBuffer {
465465
if (!buf) {
466466
return null;
467467
}
468-
if (csfrm === constants.TNS_CS_IMPLICIT)
468+
if (csfrm === constants.CSFRM_IMPLICIT)
469469
return buf.toString();
470470

471471
// need a copy of the buffer since swap16() changes the buffer in place and

lib/thin/protocol/constants.js

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,8 @@ module.exports = {
4040
constants.VERSION_MAJOR << 24 |
4141
constants.VERSION_MINOR << 20 |
4242
constants.VERSION_PATCH << 12,
43+
CSFRM_IMPLICIT: constants.CSFRM_IMPLICIT,
44+
CSFRM_NCHAR: constants.CSFRM_NCHAR,
4345
DRIVER_NAME: constants.DEFAULT_DRIVER_NAME + ' thn',
4446
PURITY_DEFAULT: constants.PURITY_DEFAULT,
4547
PURITY_NEW: constants.PURITY_NEW,
@@ -91,10 +93,6 @@ module.exports = {
9193
TNS_MARKER_TYPE_BREAK: 1,
9294
TNS_MARKER_TYPE_RESET: 2,
9395

94-
// charset forms
95-
TNS_CS_IMPLICIT: 1,
96-
TNS_CS_NCHAR: 2,
97-
9896
// data types
9997
TNS_DATA_TYPE_DEFAULT: 0,
10098
TNS_DATA_TYPE_VARCHAR: 1,

lib/thin/protocol/messages/auth.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -302,11 +302,11 @@ class AuthMessage extends Message {
302302
let numParams = buf.readUB2();
303303
for (let i = 0; i < numParams;i++) {
304304
buf.skipUB4();
305-
let key = buf.readStr(constants.TNS_CS_IMPLICIT);
305+
let key = buf.readStr(constants.CSFRM_IMPLICIT);
306306
let value = "";
307307
let numBytes = buf.readUB4();
308308
if (numBytes > 0) {
309-
value = buf.readStr(constants.TNS_CS_IMPLICIT);
309+
value = buf.readStr(constants.CSFRM_IMPLICIT);
310310
}
311311
let flag = buf.readUB4();
312312
if (key === "AUTH_VFR_DATA") {

lib/thin/protocol/messages/base.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,7 @@ class Message {
149149
for (let i = 0; i < numEntries; i++) {
150150
buf.skipUB2(); // skip chunk length
151151

152-
this.errorInfo.batchErrors[i].message = buf.readStr(constants.TNS_CS_IMPLICIT);
152+
this.errorInfo.batchErrors[i].message = buf.readStr(constants.CSFRM_IMPLICIT);
153153
buf.skipBytes(2); // ignore end marker
154154
}
155155
}
@@ -158,7 +158,7 @@ class Message {
158158
this.errorInfo.rowCount = buf.readUB8(); // row number (extended)
159159
if (this.errorInfo.num !== 0) {
160160
this.errorOccurred = true;
161-
this.errorInfo.message = buf.readStr(constants.TNS_CS_IMPLICIT);
161+
this.errorInfo.message = buf.readStr(constants.CSFRM_IMPLICIT);
162162
/*
163163
* Remove ending newline from ORA error message
164164
*/
@@ -175,7 +175,7 @@ class Message {
175175
let numBytes = buf.readUB2(); // length of error message
176176
buf.skipUB2(); // flags
177177
if (this.errorInfo.num != 0 && numBytes > 0) {
178-
this.errorInfo.message = buf.readStr(constants.TNS_CS_IMPLICIT);
178+
this.errorInfo.message = buf.readStr(constants.CSFRM_IMPLICIT);
179179
}
180180
this.errorInfo.isWarning = true;
181181
}

lib/thin/protocol/messages/lobOp.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ class LobOpMessage extends Message {
116116
buf.writeBytes(this.destLobImpl._locator);
117117
}
118118
if (this.operation === constants.TNS_LOB_OP_CREATE_TEMP) {
119-
if (this.sourceLobImpl.dbType._csfrm === constants.TNS_CS_NCHAR) {
119+
if (this.sourceLobImpl.dbType._csfrm === constants.CSFRM_NCHAR) {
120120
buf.caps.checkNCharsetId();
121121
buf.writeUB4(constants.TNS_CHARSET_UTF16);
122122
} else {
@@ -128,7 +128,7 @@ class LobOpMessage extends Message {
128128
buf.writeUInt8(constants.TNS_MSG_TYPE_LOB_DATA);
129129
if (this.sourceLobImpl.dbType._oraTypeNum === constants.TNS_DATA_TYPE_BLOB) {
130130
data = this.data;
131-
} else if (this.sourceLobImpl.getCsfrm() === constants.TNS_CS_NCHAR) {
131+
} else if (this.sourceLobImpl.getCsfrm() === constants.CSFRM_NCHAR) {
132132
data = this.data;
133133
// TODO: avoid conversion back to string, if possible
134134
// this is since bind data is converted to buffer automatically, but if
@@ -154,7 +154,7 @@ class LobOpMessage extends Message {
154154
if (data !== null) {
155155
if (oraTypeNum === constants.TNS_DATA_TYPE_BLOB) {
156156
data = Buffer.from(data);
157-
} else if (this.sourceLobImpl.getCsfrm() === constants.TNS_CS_NCHAR) {
157+
} else if (this.sourceLobImpl.getCsfrm() === constants.CSFRM_NCHAR) {
158158
data = Buffer.from(data).swap16().toString('utf16le');
159159
} else {
160160
data = data.toString();

lib/thin/protocol/messages/withData.js

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -190,17 +190,17 @@ class MessageWithData extends Message {
190190
let name;
191191
numBytes = buf.readUB4();
192192
if (numBytes > 0) {
193-
name = buf.readStr(constants.TNS_CS_IMPLICIT);
193+
name = buf.readStr(constants.CSFRM_IMPLICIT);
194194
}
195195
let schema;
196196
numBytes = buf.readUB4();
197197
if (numBytes > 0) {
198-
schema = buf.readStr(constants.TNS_CS_IMPLICIT);
198+
schema = buf.readStr(constants.CSFRM_IMPLICIT);
199199
}
200200
numBytes = buf.readUB4();
201201
let typeName;
202202
if (numBytes > 0) {
203-
typeName = buf.readStr(constants.TNS_CS_IMPLICIT);
203+
typeName = buf.readStr(constants.CSFRM_IMPLICIT);
204204
}
205205
buf.skipUB2(); // column position
206206
buf.skipUB4(); // uds flag
@@ -356,7 +356,7 @@ class MessageWithData extends Message {
356356
oraTypeNum === constants.TNS_DATA_TYPE_CHAR ||
357357
oraTypeNum === constants.TNS_DATA_TYPE_LONG
358358
) {
359-
if (csfrm === constants.TNS_CS_NCHAR) {
359+
if (csfrm === constants.CSFRM_NCHAR) {
360360
buf.caps.checkNCharsetId();
361361
}
362362
colValue = buf.readStr(csfrm);
@@ -381,7 +381,7 @@ class MessageWithData extends Message {
381381
colValue = buf.readOracleDate(useLocalTime);
382382
} else if (oraTypeNum === constants.TNS_DATA_TYPE_ROWID) {
383383
if (!this.inFetch) {
384-
colValue = buf.readStr(constants.TNS_CS_IMPLICIT);
384+
colValue = buf.readStr(constants.CSFRM_IMPLICIT);
385385
} else {
386386
let numBytes = buf.readUInt8();
387387
if (isNullLength(numBytes)) {
@@ -393,7 +393,7 @@ class MessageWithData extends Message {
393393
}
394394
} else if (oraTypeNum === constants.TNS_DATA_TYPE_UROWID) {
395395
if (!this.inFetch) {
396-
colValue = buf.readStr(constants.TNS_CS_IMPLICIT);
396+
colValue = buf.readStr(constants.CSFRM_IMPLICIT);
397397
} else {
398398
colValue = buf.readURowID();
399399
}
@@ -479,7 +479,7 @@ class MessageWithData extends Message {
479479
for (let i = 0; i < numParams; i++) {
480480
numBytes = buf.readUB2(); // key
481481
if (numBytes > 0) {
482-
keyTextValue = buf.readStr(constants.TNS_CS_IMPLICIT);
482+
keyTextValue = buf.readStr(constants.CSFRM_IMPLICIT);
483483
}
484484
numBytes = buf.readUB2(); // value
485485
if (numBytes > 0) {
@@ -608,7 +608,7 @@ class MessageWithData extends Message {
608608
// NCHAR, NVARCHAR reports ORA-01460: unimplemented or unreasonable
609609
// conversion requested if maxSize is not multiplied by the
610610
// bufferSizeFactor
611-
if (variable.type._csfrm === constants.TNS_CS_NCHAR) {
611+
if (variable.type._csfrm === constants.CSFRM_NCHAR) {
612612
maxSize *= variable.type._bufferSizeFactor;
613613
}
614614
if ([constants.TNS_DATA_TYPE_ROWID, constants.TNS_DATA_TYPE_UROWID].includes(oraTypeNum)) {
@@ -732,7 +732,7 @@ class MessageWithData extends Message {
732732
oraTypeNum === constants.TNS_DATA_TYPE_LONG ||
733733
oraTypeNum === constants.TNS_DATA_TYPE_RAW ||
734734
oraTypeNum === constants.TNS_DATA_TYPE_LONG_RAW) {
735-
if (variable.type._csfrm === constants.TNS_CS_NCHAR) {
735+
if (variable.type._csfrm === constants.CSFRM_NCHAR) {
736736
buf.caps.checkNCharsetId();
737737
value = Buffer.from(value, constants.TNS_ENCODING_UTF16).swap16();
738738
} else {

0 commit comments

Comments
 (0)