@tblabs/storage 5.13.2 → 5.14.0
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/Datasets/DatasetBase.d.ts +2 -0
- package/Datasets/DatasetBase.js +8 -0
- package/Datasets/Text/RawTextDataset.js +3 -0
- package/Messages/GetMetadataQuery.d.ts +5 -0
- package/Messages/GetMetadataQuery.js +6 -0
- package/Models/DatasetMetadata.d.ts +5 -0
- package/Models/DatasetMetadata.js +1 -0
- package/Models/IStorageUserPrivileges.d.ts +1 -0
- package/index.d.ts +1 -0
- package/index.js +1 -0
- package/package.json +1 -1
- package/tblabs-storage-5.14.0.tgz +0 -0
- package/tblabs-storage-5.13.2.tgz +0 -0
|
@@ -2,6 +2,7 @@ import { IStorageUserPrivileges } from "../Models/IStorageUserPrivileges";
|
|
|
2
2
|
import { DatasetType } from "../Services/DatasetType";
|
|
3
3
|
import { OnlineStorage } from "../Services/OnlineStorage";
|
|
4
4
|
import { dir } from "../Types/dir";
|
|
5
|
+
import { DatasetMetadata } from "../Models/DatasetMetadata";
|
|
5
6
|
export declare abstract class DatasetBase {
|
|
6
7
|
protected _db: OnlineStorage;
|
|
7
8
|
protected dataset: dir;
|
|
@@ -13,6 +14,7 @@ export declare abstract class DatasetBase {
|
|
|
13
14
|
get Name(): string;
|
|
14
15
|
get Database(): OnlineStorage;
|
|
15
16
|
protected get DatasetPath(): string;
|
|
17
|
+
GetMetadata(): Promise<DatasetMetadata>;
|
|
16
18
|
CanUserDo(action: keyof IStorageUserPrivileges): boolean;
|
|
17
19
|
protected Log(message: string): void;
|
|
18
20
|
}
|
package/Datasets/DatasetBase.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { GetMetadataQuery } from "../Messages/GetMetadataQuery";
|
|
1
2
|
export class DatasetBase {
|
|
2
3
|
_db;
|
|
3
4
|
dataset;
|
|
@@ -14,6 +15,13 @@ export class DatasetBase {
|
|
|
14
15
|
get DatasetPath() {
|
|
15
16
|
return this._db.DatabaseDir + "/Datasets/" + this.dataset;
|
|
16
17
|
}
|
|
18
|
+
async GetMetadata() {
|
|
19
|
+
const response = await this._db.Send(new GetMetadataQuery(this._db.DatabaseDir, this.dataset));
|
|
20
|
+
if (!response.IsSuccess) {
|
|
21
|
+
throw new Error("Failed to get metadata: " + response.ErrorMessage);
|
|
22
|
+
}
|
|
23
|
+
return response.Result;
|
|
24
|
+
}
|
|
17
25
|
CanUserDo(action) {
|
|
18
26
|
if (!this._db.User.Privileges) {
|
|
19
27
|
return false;
|
|
@@ -18,6 +18,9 @@ export class RawTextDataset extends DatasetBase {
|
|
|
18
18
|
}
|
|
19
19
|
async Read(id, offset = 0, limit = 0) {
|
|
20
20
|
this.Log(`Reading "${id}" from "${this.DatasetPath}"...`);
|
|
21
|
+
if (limit < 0) {
|
|
22
|
+
throw new Error("Limit cannot be negative number. 0 = no limit.");
|
|
23
|
+
}
|
|
21
24
|
const queryResult = await this._db.Send(new ReadFileQuery(this._db.DatabaseDir, this.dataset, id, offset, limit));
|
|
22
25
|
if (!queryResult.IsSuccess) {
|
|
23
26
|
throw new Error("Failed to read: " + queryResult.ErrorMessage);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/index.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ export * from "./Models/IStorageUserPrivileges";
|
|
|
3
3
|
export * from "./Models/IEntitiesSet";
|
|
4
4
|
export * from "./Models/IStorageUser";
|
|
5
5
|
export * from "./Models/DatabaseInfo";
|
|
6
|
+
export * from "./Models/DatasetMetadata";
|
|
6
7
|
export * from "./Converters/IConverter";
|
|
7
8
|
export * from "./Converters/Converter";
|
|
8
9
|
export * from "./Converters/DummyConverter";
|
package/index.js
CHANGED
|
@@ -3,6 +3,7 @@ export * from "./Models/IStorageUserPrivileges";
|
|
|
3
3
|
export * from "./Models/IEntitiesSet";
|
|
4
4
|
export * from "./Models/IStorageUser";
|
|
5
5
|
export * from "./Models/DatabaseInfo";
|
|
6
|
+
export * from "./Models/DatasetMetadata";
|
|
6
7
|
export * from "./Converters/IConverter";
|
|
7
8
|
export * from "./Converters/Converter";
|
|
8
9
|
export * from "./Converters/DummyConverter";
|
package/package.json
CHANGED
|
Binary file
|
|
Binary file
|