All files / ua factory.js

87.04% Statements 47/54
84.62% Branches 33/39
100% Functions 3/3
92% Lines 46/50

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78  56x 56x           56x 896x   56x 56x 56x 56x 56x 56x 56x 56x 56x 56x 56x 56x 56x 56x 56x 56x 56x 56x 56x   154x   71x   83x   29x   2x   15x   10x   4x   2x   2x   4x   4x   1x   1x   1x   1x   1x   1x   1x   2x   1x   1x     56x  
"use strict";
var __importStar = (this && this.__importStar) || function (mod) {
    Eif (mod && mod.__esModule) return mod;
    var result = {};
    if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
    result["default"] = mod;
    return result;
};
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const generated = __importStar(require("./generated"));
const Variant_1 = __importDefault(require("./Variant"));
const DiagnosticInfo_1 = __importDefault(require("./DiagnosticInfo"));
const ExpandedNodeId_1 = __importDefault(require("./ExpandedNodeId"));
const ExtensionObject_1 = __importDefault(require("./ExtensionObject"));
const LocalizedText_1 = __importDefault(require("./LocalizedText"));
const Guid_1 = __importDefault(require("./Guid"));
const NodeId_1 = __importDefault(require("./NodeId"));
const ConnectionProtocolMessageHeader_1 = __importDefault(require("../uacp/ConnectionProtocolMessageHeader"));
const AcknowledgeMessage_1 = __importDefault(require("../uacp/AcknowledgeMessage"));
const HelloMessage_1 = __importDefault(require("../uacp/HelloMessage"));
const SequenceHeader_1 = __importDefault(require("../uasc/SequenceHeader"));
const SymmetricSecurityHeader_1 = __importDefault(require("../uasc/SymmetricSecurityHeader"));
const AsymmetricSecurityHeader_1 = __importDefault(require("../uasc/AsymmetricSecurityHeader"));
const SecureConversationMessageHeader_1 = __importDefault(require("../uasc/SecureConversationMessageHeader"));
const QualifiedName_1 = __importDefault(require("./QualifiedName"));
const DataValue_1 = __importDefault(require("./DataValue"));
const factory = (name) => {
    // eslint-disable-next-line @typescript-eslint/no-explicit-any
    if (generated[name]) {
        // eslint-disable-next-line @typescript-eslint/no-explicit-any
        return new generated[name]();
    }
    switch (name) {
        case 'string':
            return String();
        case 'uint32':
            return Number();
        case 'Variant':
            return new Variant_1.default();
        case 'DiagnosticInfo':
            return new DiagnosticInfo_1.default();
        case 'ExpandedNodeId':
            return new ExpandedNodeId_1.default();
        case 'ExtensionObject':
            return new ExtensionObject_1.default();
        case 'Guid':
            return new Guid_1.default();
        case 'LocalizedText':
            return new LocalizedText_1.default();
        case 'NodeId':
            return new NodeId_1.default();
        case 'ConnectionProtocolMessageHeader':
            return new ConnectionProtocolMessageHeader_1.default();
        case 'AcknowledgeMessage':
            return new AcknowledgeMessage_1.default();
        case 'HelloMessage':
            return new HelloMessage_1.default();
        case 'SequenceHeader':
            return new SequenceHeader_1.default();
        case 'SymmetricSecurityHeader':
            return new SymmetricSecurityHeader_1.default();
        case 'AsymmetricSecurityHeader':
            return new AsymmetricSecurityHeader_1.default();
        case 'SecureConversationMessageHeader':
            return new SecureConversationMessageHeader_1.default();
        case 'QualifiedName':
            return new QualifiedName_1.default();
        case 'DataValue':
            return new DataValue_1.default();
        default:
            throw new Error(`unsupported class name: ${name}`);
    }
};
exports.default = factory;