alwaysai
Version:
The alwaysAI command-line interface (CLI)
121 lines • 6.02 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.REMOTE_CERT_AND_KEY_DIR_LINUX = exports.REMOTE_DEVICE_CREDENTIALS_DIR = exports.DEVICE_CERTIFICATE_FILE_PATH = exports.DEVICE_PRIVATE_KEY_FILE_PATH = exports.LOCAL_CERT_AND_KEY_DIR = exports.LOCAL_DEVICE_CREDENTIALS_DIR = exports.LocalDeviceCertificates = exports.LocalLegacyDeviceCertificates = exports.RemoteDeviceCertificates = exports.RemoteLegacyDeviceCertificates = exports.DeviceCertificates = exports.DEVICE_ROOT_CERT_FILE_NAME = exports.DEVICE_PUBLIC_KEY_FILE_NAME = exports.DEVICE_CERTIFICATE_ID_FILE_NAME = exports.DEVICE_CERTIFICATE_FILE_NAME = exports.DEVICE_PRIVATE_KEY_FILE_NAME = exports.DEVICE_CERTIFICATES_DIRECTORY_NAME = void 0;
const path_1 = require("path");
const paths_1 = require("../paths");
const device_paths_1 = require("./device-paths");
exports.DEVICE_CERTIFICATES_DIRECTORY_NAME = 'certificates';
/*===================================================================
Device Certificates
===================================================================*/
exports.DEVICE_PRIVATE_KEY_FILE_NAME = 'aai-device-private-key.pem.key';
exports.DEVICE_CERTIFICATE_FILE_NAME = 'aai-device-cert.pem.crt';
exports.DEVICE_CERTIFICATE_ID_FILE_NAME = 'aai-device-cert-id.txt';
exports.DEVICE_PUBLIC_KEY_FILE_NAME = 'alwaysai.public.pem.key';
exports.DEVICE_ROOT_CERT_FILE_NAME = 'AmazonRootCA1.pem';
/*===================================================================
Certificate Path Factory
===================================================================*/
class DeviceCertificates {
constructor(baseDir) {
this.certificateDirectoryName = exports.DEVICE_CERTIFICATES_DIRECTORY_NAME;
this.certificateFileName = exports.DEVICE_CERTIFICATE_FILE_NAME;
this.privateKeyFileName = exports.DEVICE_PRIVATE_KEY_FILE_NAME;
this.publicKeyFileName = exports.DEVICE_PUBLIC_KEY_FILE_NAME;
this.certificateIdFileName = exports.DEVICE_CERTIFICATE_ID_FILE_NAME;
this.rootCertificateFileName = exports.DEVICE_ROOT_CERT_FILE_NAME;
this.baseDir = baseDir;
}
/**
* Returns the upper level (home) directory where all
* certificates are stored
*/
getBaseCertificateDirectoryPath() {
return this.baseDir;
}
/**
* Returns the name of the folder where the certificates are
* stored inside the base certificate directory
*/
getCertificateDirectoryName() {
return this.certificateDirectoryName;
}
/**
* Returns the full path to the folder where the certificates
* are directly stored. This is the file you would write to
* on device init, or remove on device clean.
*/
getCertificateDirectoryPath() {
return (0, path_1.join)(this.baseDir, this.certificateDirectoryName);
}
getPrivateKeyFileName() {
return this.privateKeyFileName;
}
getPrivateKeyFilePath() {
return (0, path_1.join)(this.getCertificateDirectoryPath(), this.privateKeyFileName);
}
getCertificateFileName() {
return this.certificateFileName;
}
getCertificateFilePath() {
return (0, path_1.join)(this.getCertificateDirectoryPath(), this.certificateFileName);
}
getCertificateIdFileName() {
return this.certificateIdFileName;
}
getCertificateIdFilePath() {
return (0, path_1.join)(this.getCertificateDirectoryPath(), this.certificateIdFileName);
}
getPublicKeyFileName() {
return this.publicKeyFileName;
}
getPublicKeyFilePath() {
return (0, path_1.join)(this.getCertificateDirectoryPath(), this.publicKeyFileName);
}
getRootCertificateFileName() {
return this.rootCertificateFileName;
}
getRootCertificateFilePath() {
return (0, path_1.join)(this.getCertificateDirectoryPath(), this.rootCertificateFileName);
}
}
exports.DeviceCertificates = DeviceCertificates;
class RemoteLegacyDeviceCertificates extends DeviceCertificates {
constructor(baseDir = paths_1.REMOTE_AAI_CFG_DIR_LINUX) {
super(baseDir);
}
}
exports.RemoteLegacyDeviceCertificates = RemoteLegacyDeviceCertificates;
class RemoteDeviceCertificates extends DeviceCertificates {
constructor(baseDir = (0, device_paths_1.getRemoteDeviceConfigDirectoryPath)()) {
super(baseDir);
}
}
exports.RemoteDeviceCertificates = RemoteDeviceCertificates;
class LocalLegacyDeviceCertificates extends DeviceCertificates {
constructor(baseDir = paths_1.LOCAL_AAI_CFG_DIR) {
super(baseDir);
}
}
exports.LocalLegacyDeviceCertificates = LocalLegacyDeviceCertificates;
class LocalDeviceCertificates extends DeviceCertificates {
constructor(baseDir = (0, device_paths_1.getLocalDeviceConfigDirectoryPath)()) {
super(baseDir);
}
}
exports.LocalDeviceCertificates = LocalDeviceCertificates;
/*===================================================================
local certificate file setup
===================================================================*/
const localDeviceCertificates = new LocalDeviceCertificates();
exports.LOCAL_DEVICE_CREDENTIALS_DIR = localDeviceCertificates.getBaseCertificateDirectoryPath();
exports.LOCAL_CERT_AND_KEY_DIR = localDeviceCertificates.getCertificateDirectoryPath();
exports.DEVICE_PRIVATE_KEY_FILE_PATH = localDeviceCertificates.getPrivateKeyFilePath();
exports.DEVICE_CERTIFICATE_FILE_PATH = localDeviceCertificates.getCertificateFilePath();
/*===================================================================
remote certificate file setup
===================================================================*/
const remoteDeviceCertificates = new RemoteDeviceCertificates();
exports.REMOTE_DEVICE_CREDENTIALS_DIR = remoteDeviceCertificates.getBaseCertificateDirectoryPath();
exports.REMOTE_CERT_AND_KEY_DIR_LINUX = remoteDeviceCertificates.getCertificateDirectoryPath();
//# sourceMappingURL=certificate-paths.js.map