in greengrass-opcua-adapter-nodejs/subscriber.js [145:194]
createSession() {
var userIdentity = null;
const self = this;
console.log("createSession: config.userIdentity: " + self._serverConfig.userIdentity);
if (self._serverConfig.userIdentity) {
console.log('self._serverConfig.userIdentity.userName:' + self._serverConfig.userIdentity.userName);
console.log('self._serverConfig.userIdentity.password:' + self._serverConfig.userIdentity.password);
if (self._serverConfig.userIdentity.userName &&
self._serverConfig.userIdentity.password) {
userIdentity = self._serverConfig.userIdentity;
}
} else {
console.log('self._serverConfig.userIdentity not exist');
}
self._client.createSession(userIdentity, (createSessionError, session) => {
if (!createSessionError) {
self._session = session;
console.log('Session created');
console.log('SessionId: ', session.sessionId.toString());
console.log('self._serverConfig.certExist: ', self._serverConfig.certExist);
// Feature to support non-certificate OPCUA Server.
if (!self._serverConfig.certExist) {
self.emit('session_create');
} else {
var result = ConfigAgent.compareWithTrustCert(session.serverCertificate);
console.log("cert compare result: " + result);
if (result === false) {
createSessionError = new Error("Server certificate not in our trust list ");
} else {
self.emit('session_create');
}
}
}
if (createSessionError) {
self._client.disconnect(function (err) {
if (err) {
console.log("OPCUAClient#withClientSession: client disconnect failed ?");
console.log('Got an error disconnecting from ', self._serverConfig.url, ' Err: ', err);
} else {
self.emit('disconnect');
}
});
console.log('Err: ', createSessionError);
}
});
}