@configurator/ravendb
Version:
RavenDB client for Node.js
131 lines • 5.43 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.GetOngoingTaskInfoOperation = void 0;
const TypeUtil_1 = require("../../Utility/TypeUtil");
const RavenCommand_1 = require("../../Http/RavenCommand");
const Exceptions_1 = require("../../Exceptions");
const RavenEtlConfiguration_1 = require("./Etl/RavenEtlConfiguration");
const SqlEtlConfiguration_1 = require("./Etl/Sql/SqlEtlConfiguration");
const OlapEtlConfiguration_1 = require("./Etl/Olap/OlapEtlConfiguration");
const ElasticSearchEtlConfiguration_1 = require("./Etl/ElasticSearch/ElasticSearchEtlConfiguration");
const QueueEtlConfiguration_1 = require("./Etl/Queue/QueueEtlConfiguration");
const Transformation_1 = require("./Etl/Transformation");
class GetOngoingTaskInfoOperation {
constructor(taskIdOrName, type) {
if (TypeUtil_1.TypeUtil.isString(taskIdOrName)) {
this._taskName = taskIdOrName;
}
else {
this._taskId = taskIdOrName;
}
this._type = type;
if (type === "PullReplicationAsHub") {
(0, Exceptions_1.throwError)("InvalidArgumentException", "PullReplicationAsHub type is not supported. " +
"Please use GetPullReplicationTasksInfoOperation instead.");
}
}
get resultType() {
return "CommandResult";
}
getCommand(conventions) {
return new GetOngoingTaskInfoCommand(this._taskName || this._taskId, this._type, conventions);
}
}
exports.GetOngoingTaskInfoOperation = GetOngoingTaskInfoOperation;
class GetOngoingTaskInfoCommand extends RavenCommand_1.RavenCommand {
constructor(taskIdOrName, type, documentConventions) {
super();
if (TypeUtil_1.TypeUtil.isString(taskIdOrName)) {
this._taskName = taskIdOrName;
}
else {
this._taskId = taskIdOrName;
}
this._type = type;
this._conventions = documentConventions;
}
createRequest(node) {
const uri = this._taskName
? node.url + "/databases/" + node.database + "/task?taskName=" + encodeURIComponent(this._taskName) + "&type=" + this._type
: node.url + "/databases/" + node.database + "/task?key=" + this._taskId + "&type=" + this._type;
return {
uri,
method: "GET"
};
}
async setResponseAsync(bodyStream, fromCache) {
let body = null;
const results = await this._defaultPipeline(_ => body = _)
.process(bodyStream);
let nestedTypes = {};
switch (this._type) {
case "Replication":
break;
case "RavenEtl":
nestedTypes = {
configuration: "RavenEtlConfiguration",
"configuration.transforms": "Transformation"
};
break;
case "SqlEtl":
nestedTypes = {
configuration: "SqlEtlConfiguration",
"configuration.transforms": "Transformation"
};
break;
case "Subscription":
nestedTypes = {
lastBatchAckTime: "date",
lastClientConnectionTime: "date"
};
break;
case "OlapEtl":
nestedTypes = {
configuration: "OlapEtlConfiguration",
"configuration.transforms": "Transformation"
};
break;
case "ElasticSearchEtl":
nestedTypes = {
configuration: "ElasticSearchEtlConfiguration",
"configuration.transforms": "Transformation"
};
break;
case "QueueEtl":
nestedTypes = {
configuration: "QueueEtlConfiguration",
"configuration.transforms": "Transformation"
};
break;
case "PullReplicationAsSink":
break;
case "Backup":
nestedTypes = {
lastFullBackup: "date",
delayUntil: "date",
originalBackupTime: "date",
lastIncrementalBackup: "date",
"onGoingBackup.startTime": "date",
"nextBackup.dateTime": "date",
"nextBackup.originalBackupTime": "date",
};
break;
}
this.result = this._reviveResultTypes(results, this._conventions, {
nestedTypes
}, knownTypes);
return body;
}
get isReadRequest() {
return false;
}
}
const knownTypes = new Map([
[RavenEtlConfiguration_1.RavenEtlConfiguration.name, RavenEtlConfiguration_1.RavenEtlConfiguration],
[SqlEtlConfiguration_1.SqlEtlConfiguration.name, SqlEtlConfiguration_1.SqlEtlConfiguration],
[OlapEtlConfiguration_1.OlapEtlConfiguration.name, OlapEtlConfiguration_1.OlapEtlConfiguration],
[ElasticSearchEtlConfiguration_1.ElasticSearchEtlConfiguration.name, ElasticSearchEtlConfiguration_1.ElasticSearchEtlConfiguration],
[QueueEtlConfiguration_1.QueueEtlConfiguration.name, QueueEtlConfiguration_1.QueueEtlConfiguration],
[Transformation_1.Transformation.name, Transformation_1.Transformation]
]);
//# sourceMappingURL=GetOngoingTaskInfoOperation.js.map