Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
self.performMessageTransaction(request, function (err, response) {
/* istanbul ignore next */
if (err) {
return callback(err, response);
}
if (response.responseHeader.serviceResult.isNot(StatusCodes.Good)) {
return callback(new Error(response.responseHeader.serviceResult.toString()));
}
assert(response instanceof write_service.WriteResponse);
assert(nodesToWrite.length === response.results.length);
callback(null, isArray ? response.results : response.results[0]);
});
};
ClientSession.prototype.write = function (nodesToWrite, callback) {
const self = this;
const isArray = _.isArray(nodesToWrite);
if (!isArray) {
nodesToWrite = [nodesToWrite];
}
assert(_.isFunction(callback));
assert(_.isArray(nodesToWrite), "nodesToWrite must be an array");
const request = new write_service.WriteRequest({nodesToWrite: nodesToWrite});
self.performMessageTransaction(request, function (err, response) {
/* istanbul ignore next */
if (err) {
return callback(err, response);
}
if (response.responseHeader.serviceResult.isNot(StatusCodes.Good)) {
return callback(new Error(response.responseHeader.serviceResult.toString()));
}
assert(response instanceof write_service.WriteResponse);
assert(nodesToWrite.length === response.results.length);
callback(null, isArray ? response.results : response.results[0]);
});
};
public writeAttribute(
context: SessionContext,
writeValueOptions: WriteValueOptions | WriteValue,
callback?: (err: Error | null, statusCode?: StatusCode) => void
): any {
if (!callback) {
throw new Error("Internal error");
}
const writeValue: WriteValue = writeValueOptions instanceof WriteValue
? writeValueOptions as WriteValue
: new WriteValue(writeValueOptions);
assert(context instanceof SessionContext);
assert(writeValue instanceof WriteValue);
assert(writeValue.value instanceof DataValue);
assert(writeValue.value!.value instanceof Variant);
assert(_.isFunction(callback));
// Spec 1.0.2 Part 4 page 58
// If the SourceTimestamp or the ServerTimestamp is specified, the Server shall
// use these values.
// xx _apply_default_timestamps(writeValue.value);
switch (writeValue.attributeId) {
case AttributeIds.Value:
this.writeValue(context, writeValue.value!, writeValue.indexRange!, callback);
const ModifyMonitoredItemsRequest = subscription_service.ModifyMonitoredItemsRequest;
const ModifyMonitoredItemsResponse = subscription_service.ModifyMonitoredItemsResponse;
const MonitoredItemModifyResult = subscription_service.MonitoredItemModifyResult;
const MonitoredItemCreateResult = subscription_service.MonitoredItemCreateResult;
const SetPublishingModeRequest = subscription_service.SetPublishingModeRequest;
const SetPublishingModeResponse = subscription_service.SetPublishingModeResponse;
const CallRequest = call_service.CallRequest;
const CallResponse = call_service.CallResponse;
const ReadRequest = read_service.ReadRequest;
const ReadResponse = read_service.ReadResponse;
const WriteRequest = write_service.WriteRequest;
const WriteResponse = write_service.WriteResponse;
const ReadValueId = read_service.ReadValueId;
const HistoryReadRequest = historizing_service.HistoryReadRequest;
const HistoryReadResponse = historizing_service.HistoryReadResponse;
const BrowseRequest = browse_service.BrowseRequest;
const BrowseResponse = browse_service.BrowseResponse;
const BrowseNextRequest = browse_service.BrowseNextRequest;
const BrowseNextResponse = browse_service.BrowseNextResponse;
const RegisterNodesRequest = register_node_service.RegisterNodesRequest;
const RegisterNodesResponse = register_node_service.RegisterNodesResponse;
const UnregisterNodesRequest = register_node_service.UnregisterNodesRequest;
const UnregisterNodesResponse = register_node_service.UnregisterNodesResponse;