@simplysm/storage 14.0.42 → 14.0.44
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.
- package/dist/clients/ftp-storage-client.js +3 -3
- package/dist/clients/ftp-storage-client.js.map +1 -1
- package/dist/clients/sftp-storage-client.js +3 -3
- package/dist/clients/sftp-storage-client.js.map +1 -1
- package/package.json +2 -2
- package/src/clients/ftp-storage-client.ts +3 -3
- package/src/clients/sftp-storage-client.ts +3 -3
|
@@ -23,7 +23,7 @@ export class FtpStorageClient {
|
|
|
23
23
|
* - 자동 연결/종료 관리를 위해 {@link StorageFactory.connect} 사용을 권장합니다.
|
|
24
24
|
*/
|
|
25
25
|
async connect(config) {
|
|
26
|
-
if (this._client
|
|
26
|
+
if (this._client != null) {
|
|
27
27
|
throw new SdError("FTP 서버에 이미 연결되어 있습니다. 먼저 close()를 호출해 주세요.");
|
|
28
28
|
}
|
|
29
29
|
const client = new ftp.Client();
|
|
@@ -43,7 +43,7 @@ export class FtpStorageClient {
|
|
|
43
43
|
}
|
|
44
44
|
}
|
|
45
45
|
_requireClient() {
|
|
46
|
-
if (this._client
|
|
46
|
+
if (this._client == null) {
|
|
47
47
|
throw new SdError("FTP 서버에 연결되어 있지 않습니다.");
|
|
48
48
|
}
|
|
49
49
|
return this._client;
|
|
@@ -126,7 +126,7 @@ export class FtpStorageClient {
|
|
|
126
126
|
* 종료 후 동일 인스턴스에서 {@link connect}를 다시 호출하여 재연결할 수 있습니다.
|
|
127
127
|
*/
|
|
128
128
|
close() {
|
|
129
|
-
if (this._client
|
|
129
|
+
if (this._client == null) {
|
|
130
130
|
return Promise.resolve();
|
|
131
131
|
}
|
|
132
132
|
this._client.close();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ftp-storage-client.js","sourceRoot":"","sources":["../../src/clients/ftp-storage-client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,GAAG,MAAM,WAAW,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAI/C;;;;;;GAMG;AACH,MAAM,OAAO,gBAAgB;IAGE;IAFrB,OAAO,CAAyB;IAExC,YAA6B,UAAmB,KAAK;QAAxB,YAAO,GAAP,OAAO,CAAiB;IAAG,CAAC;IAEzD;;;;;;;OAOG;IACH,KAAK,CAAC,OAAO,CAAC,MAAyB;QACrC,IAAI,IAAI,CAAC,OAAO,
|
|
1
|
+
{"version":3,"file":"ftp-storage-client.js","sourceRoot":"","sources":["../../src/clients/ftp-storage-client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,GAAG,MAAM,WAAW,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAI/C;;;;;;GAMG;AACH,MAAM,OAAO,gBAAgB;IAGE;IAFrB,OAAO,CAAyB;IAExC,YAA6B,UAAmB,KAAK;QAAxB,YAAO,GAAP,OAAO,CAAiB;IAAG,CAAC;IAEzD;;;;;;;OAOG;IACH,KAAK,CAAC,OAAO,CAAC,MAAyB;QACrC,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC;YACzB,MAAM,IAAI,OAAO,CAAC,4CAA4C,CAAC,CAAC;QAClE,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;QAChC,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,MAAM,CAAC;gBAClB,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,MAAM,EAAE,IAAI,CAAC,OAAO;aACrB,CAAC,CAAC;YACH,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACxB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;IAEO,cAAc;QACpB,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC;YACzB,MAAM,IAAI,OAAO,CAAC,uBAAuB,CAAC,CAAC;QAC7C,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,0CAA0C;IAC1C,KAAK,CAAC,KAAK,CAAC,OAAe;QACzB,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,QAAgB,EAAE,MAAc;QAC3C,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,OAAe;QACxB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5D,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC7E,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,QAAgB;QAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QACrC,MAAM,MAAM,GAAY,EAAE,CAAC;QAC3B,MAAM,QAAQ,GAAG,IAAI,WAAW,EAAE,CAAC;QACnC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAiB,EAAE,EAAE;YACxC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;QACH,MAAM,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC5C,OAAO,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,MAAM,CAAC,QAAgB;QAC3B,IAAI,CAAC;YACH,gCAAgC;YAChC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC3C,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,MAAM,CAAC;YACP,sCAAsC;YACtC,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;gBAC5C,MAAM,OAAO,GAAG,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;gBACvE,MAAM,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;gBACnD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACvD,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;YACrD,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,QAAgB;QAC3B,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC/C,CAAC;IAED,0CAA0C;IAC1C,KAAK,CAAC,GAAG,CAAC,iBAAiC,EAAE,eAAuB;QAClE,IAAI,KAAwB,CAAC;QAC7B,IAAI,OAAO,iBAAiB,KAAK,QAAQ,EAAE,CAAC;YAC1C,KAAK,GAAG,iBAAiB,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC3C,CAAC;QACD,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;IACjE,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,QAAgB,EAAE,MAAc;QAC9C,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC9D,CAAC;IAED;;;;;;OAMG;IACH,KAAK;QACH,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC;YACzB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAC3B,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;QACzB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;CACF"}
|
|
@@ -20,7 +20,7 @@ export class SftpStorageClient {
|
|
|
20
20
|
* - 자동 연결/종료 관리를 위해 {@link StorageFactory.connect} 사용을 권장합니다.
|
|
21
21
|
*/
|
|
22
22
|
async connect(config) {
|
|
23
|
-
if (this._client
|
|
23
|
+
if (this._client != null) {
|
|
24
24
|
throw new SdError("SFTP 서버에 이미 연결되어 있습니다. 먼저 close()를 호출해 주세요.");
|
|
25
25
|
}
|
|
26
26
|
const client = new SftpClient();
|
|
@@ -61,7 +61,7 @@ export class SftpStorageClient {
|
|
|
61
61
|
}
|
|
62
62
|
}
|
|
63
63
|
_requireClient() {
|
|
64
|
-
if (this._client
|
|
64
|
+
if (this._client == null) {
|
|
65
65
|
throw new SdError("SFTP 서버에 연결되어 있지 않습니다.");
|
|
66
66
|
}
|
|
67
67
|
return this._client;
|
|
@@ -135,7 +135,7 @@ export class SftpStorageClient {
|
|
|
135
135
|
* 종료 후 동일 인스턴스에서 {@link connect}를 다시 호출하여 재연결할 수 있습니다.
|
|
136
136
|
*/
|
|
137
137
|
async close() {
|
|
138
|
-
if (this._client
|
|
138
|
+
if (this._client == null) {
|
|
139
139
|
return;
|
|
140
140
|
}
|
|
141
141
|
await this._client.end();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sftp-storage-client.js","sourceRoot":"","sources":["../../src/clients/sftp-storage-client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,UAAU,MAAM,kBAAkB,CAAC;AAC1C,OAAO,GAAG,MAAM,aAAa,CAAC;AAC9B,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,OAAO,MAAM,MAAM,CAAC;AAO3B;;;;;GAKG;AACH,MAAM,OAAO,iBAAiB;IACpB,OAAO,CAAyB;IAExC;;;;;;;OAOG;IACH,KAAK,CAAC,OAAO,CAAC,MAAyB;QACrC,IAAI,IAAI,CAAC,OAAO,
|
|
1
|
+
{"version":3,"file":"sftp-storage-client.js","sourceRoot":"","sources":["../../src/clients/sftp-storage-client.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@simplysm/storage",
|
|
3
|
-
"version": "14.0.
|
|
3
|
+
"version": "14.0.44",
|
|
4
4
|
"description": "심플리즘 패키지 - 저장소 (node)",
|
|
5
5
|
"author": "심플리즘",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"dependencies": {
|
|
21
21
|
"basic-ftp": "^5.2.2",
|
|
22
22
|
"ssh2-sftp-client": "^12.1.1",
|
|
23
|
-
"@simplysm/core-common": "14.0.
|
|
23
|
+
"@simplysm/core-common": "14.0.44"
|
|
24
24
|
},
|
|
25
25
|
"devDependencies": {
|
|
26
26
|
"@types/ssh2-sftp-client": "^9.0.6"
|
|
@@ -26,7 +26,7 @@ export class FtpStorageClient implements StorageClient {
|
|
|
26
26
|
* - 자동 연결/종료 관리를 위해 {@link StorageFactory.connect} 사용을 권장합니다.
|
|
27
27
|
*/
|
|
28
28
|
async connect(config: StorageConnConfig): Promise<void> {
|
|
29
|
-
if (this._client
|
|
29
|
+
if (this._client != null) {
|
|
30
30
|
throw new SdError("FTP 서버에 이미 연결되어 있습니다. 먼저 close()를 호출해 주세요.");
|
|
31
31
|
}
|
|
32
32
|
const client = new ftp.Client();
|
|
@@ -46,7 +46,7 @@ export class FtpStorageClient implements StorageClient {
|
|
|
46
46
|
}
|
|
47
47
|
|
|
48
48
|
private _requireClient(): ftp.Client {
|
|
49
|
-
if (this._client
|
|
49
|
+
if (this._client == null) {
|
|
50
50
|
throw new SdError("FTP 서버에 연결되어 있지 않습니다.");
|
|
51
51
|
}
|
|
52
52
|
return this._client;
|
|
@@ -135,7 +135,7 @@ export class FtpStorageClient implements StorageClient {
|
|
|
135
135
|
* 종료 후 동일 인스턴스에서 {@link connect}를 다시 호출하여 재연결할 수 있습니다.
|
|
136
136
|
*/
|
|
137
137
|
close(): Promise<void> {
|
|
138
|
-
if (this._client
|
|
138
|
+
if (this._client == null) {
|
|
139
139
|
return Promise.resolve();
|
|
140
140
|
}
|
|
141
141
|
|
|
@@ -28,7 +28,7 @@ export class SftpStorageClient implements StorageClient {
|
|
|
28
28
|
* - 자동 연결/종료 관리를 위해 {@link StorageFactory.connect} 사용을 권장합니다.
|
|
29
29
|
*/
|
|
30
30
|
async connect(config: StorageConnConfig): Promise<void> {
|
|
31
|
-
if (this._client
|
|
31
|
+
if (this._client != null) {
|
|
32
32
|
throw new SdError("SFTP 서버에 이미 연결되어 있습니다. 먼저 close()를 호출해 주세요.");
|
|
33
33
|
}
|
|
34
34
|
|
|
@@ -70,7 +70,7 @@ export class SftpStorageClient implements StorageClient {
|
|
|
70
70
|
}
|
|
71
71
|
|
|
72
72
|
private _requireClient(): SftpClient {
|
|
73
|
-
if (this._client
|
|
73
|
+
if (this._client == null) {
|
|
74
74
|
throw new SdError("SFTP 서버에 연결되어 있지 않습니다.");
|
|
75
75
|
}
|
|
76
76
|
return this._client;
|
|
@@ -151,7 +151,7 @@ export class SftpStorageClient implements StorageClient {
|
|
|
151
151
|
* 종료 후 동일 인스턴스에서 {@link connect}를 다시 호출하여 재연결할 수 있습니다.
|
|
152
152
|
*/
|
|
153
153
|
async close(): Promise<void> {
|
|
154
|
-
if (this._client
|
|
154
|
+
if (this._client == null) {
|
|
155
155
|
return;
|
|
156
156
|
}
|
|
157
157
|
await this._client.end();
|