UNPKG

azure

Version:
346 lines (340 loc) 14.8 kB
/* * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for * license information. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is * regenerated. */ 'use strict'; const models = require('./index'); /** * The X12 agreement protocol settings. * */ class X12ProtocolSettings { /** * Create a X12ProtocolSettings. * @member {object} validationSettings The X12 validation settings. * @member {boolean} [validationSettings.validateCharacterSet] The value * indicating whether to validate character set in the message. * @member {boolean} * [validationSettings.checkDuplicateInterchangeControlNumber] The value * indicating whether to check for duplicate interchange control number. * @member {number} [validationSettings.interchangeControlNumberValidityDays] * The validity period of interchange control number. * @member {boolean} [validationSettings.checkDuplicateGroupControlNumber] * The value indicating whether to check for duplicate group control number. * @member {boolean} * [validationSettings.checkDuplicateTransactionSetControlNumber] The value * indicating whether to check for duplicate transaction set control number. * @member {boolean} [validationSettings.validateEdiTypes] The value * indicating whether to Whether to validate EDI types. * @member {boolean} [validationSettings.validateXsdTypes] The value * indicating whether to Whether to validate XSD types. * @member {boolean} * [validationSettings.allowLeadingAndTrailingSpacesAndZeroes] The value * indicating whether to allow leading and trailing spaces and zeroes. * @member {boolean} * [validationSettings.trimLeadingAndTrailingSpacesAndZeroes] The value * indicating whether to trim leading and trailing spaces and zeroes. * @member {string} [validationSettings.trailingSeparatorPolicy] The trailing * separator policy. Possible values include: 'NotSpecified', 'NotAllowed', * 'Optional', 'Mandatory' * @member {object} framingSettings The X12 framing settings. * @member {number} [framingSettings.dataElementSeparator] The data element * separator. * @member {number} [framingSettings.componentSeparator] The component * separator. * @member {boolean} [framingSettings.replaceSeparatorsInPayload] The value * indicating whether to replace separators in payload. * @member {number} [framingSettings.replaceCharacter] The replacement * character. * @member {number} [framingSettings.segmentTerminator] The segment * terminator. * @member {string} [framingSettings.characterSet] The X12 character set. * Possible values include: 'NotSpecified', 'Basic', 'Extended', 'UTF8' * @member {string} [framingSettings.segmentTerminatorSuffix] The segment * terminator suffix. Possible values include: 'NotSpecified', 'None', 'CR', * 'LF', 'CRLF' * @member {object} envelopeSettings The X12 envelope settings. * @member {number} [envelopeSettings.controlStandardsId] The controls * standards id. * @member {boolean} * [envelopeSettings.useControlStandardsIdAsRepetitionCharacter] The value * indicating whether to use control standards id as repetition character. * @member {string} [envelopeSettings.senderApplicationId] The sender * application id. * @member {string} [envelopeSettings.receiverApplicationId] The receiver * application id. * @member {string} [envelopeSettings.controlVersionNumber] The control * version number. * @member {number} [envelopeSettings.interchangeControlNumberLowerBound] The * interchange control number lower bound. * @member {number} [envelopeSettings.interchangeControlNumberUpperBound] The * interchange control number upper bound. * @member {boolean} [envelopeSettings.rolloverInterchangeControlNumber] The * value indicating whether to rollover interchange control number. * @member {boolean} [envelopeSettings.enableDefaultGroupHeaders] The value * indicating whether to enable default group headers. * @member {string} [envelopeSettings.functionalGroupId] The functional group * id. * @member {number} [envelopeSettings.groupControlNumberLowerBound] The group * control number lower bound. * @member {number} [envelopeSettings.groupControlNumberUpperBound] The group * control number upper bound. * @member {boolean} [envelopeSettings.rolloverGroupControlNumber] The value * indicating whether to rollover group control number. * @member {string} [envelopeSettings.groupHeaderAgencyCode] The group header * agency code. * @member {string} [envelopeSettings.groupHeaderVersion] The group header * version. * @member {number} [envelopeSettings.transactionSetControlNumberLowerBound] * The transaction set control number lower bound. * @member {number} [envelopeSettings.transactionSetControlNumberUpperBound] * The transaction set control number upper bound. * @member {boolean} [envelopeSettings.rolloverTransactionSetControlNumber] * The value indicating whether to rollover transaction set control number. * @member {string} [envelopeSettings.transactionSetControlNumberPrefix] The * transaction set control number prefix. * @member {string} [envelopeSettings.transactionSetControlNumberSuffix] The * transaction set control number suffix. * @member {boolean} * [envelopeSettings.overwriteExistingTransactionSetControlNumber] The value * indicating whether to overwrite existing transaction set control number. * @member {string} [envelopeSettings.groupHeaderDateFormat] The group header * date format. Possible values include: 'NotSpecified', 'CCYYMMDD', 'YYMMDD' * @member {string} [envelopeSettings.groupHeaderTimeFormat] The group header * time format. Possible values include: 'NotSpecified', 'HHMM', 'HHMMSS', * 'HHMMSSdd', 'HHMMSSd' * @member {string} [envelopeSettings.usageIndicator] The usage indicator. * Possible values include: 'NotSpecified', 'Test', 'Information', * 'Production' * @member {object} acknowledgementSettings The X12 acknowledgment settings. * @member {boolean} [acknowledgementSettings.needTechnicalAcknowledgement] * The value indicating whether technical acknowledgement is needed. * @member {boolean} [acknowledgementSettings.batchTechnicalAcknowledgements] * The value indicating whether to batch the technical acknowledgements. * @member {boolean} [acknowledgementSettings.needFunctionalAcknowledgement] * The value indicating whether functional acknowledgement is needed. * @member {string} * [acknowledgementSettings.functionalAcknowledgementVersion] The functional * acknowledgement version. * @member {boolean} * [acknowledgementSettings.batchFunctionalAcknowledgements] The value * indicating whether to batch functional acknowledgements. * @member {boolean} * [acknowledgementSettings.needImplementationAcknowledgement] The value * indicating whether implementation acknowledgement is needed. * @member {string} * [acknowledgementSettings.implementationAcknowledgementVersion] The * implementation acknowledgement version. * @member {boolean} * [acknowledgementSettings.batchImplementationAcknowledgements] The value * indicating whether to batch implementation acknowledgements. * @member {boolean} [acknowledgementSettings.needLoopForValidMessages] The * value indicating whether a loop is needed for valid messages. * @member {boolean} [acknowledgementSettings.sendSynchronousAcknowledgement] * The value indicating whether to send synchronous acknowledgement. * @member {string} * [acknowledgementSettings.acknowledgementControlNumberPrefix] The * acknowledgement control number prefix. * @member {string} * [acknowledgementSettings.acknowledgementControlNumberSuffix] The * acknowledgement control number suffix. * @member {number} * [acknowledgementSettings.acknowledgementControlNumberLowerBound] The * acknowledgement control number lower bound. * @member {number} * [acknowledgementSettings.acknowledgementControlNumberUpperBound] The * acknowledgement control number upper bound. * @member {boolean} * [acknowledgementSettings.rolloverAcknowledgementControlNumber] The value * indicating whether to rollover acknowledgement control number. * @member {object} messageFilter The X12 message filter. * @member {string} [messageFilter.messageFilterType] The message filter * type. Possible values include: 'NotSpecified', 'Include', 'Exclude' * @member {object} securitySettings The X12 security settings. * @member {string} [securitySettings.authorizationQualifier] The * authorization qualifier. * @member {string} [securitySettings.authorizationValue] The authorization * value. * @member {string} [securitySettings.securityQualifier] The security * qualifier. * @member {string} [securitySettings.passwordValue] The password value. * @member {object} processingSettings The X12 processing settings. * @member {boolean} [processingSettings.maskSecurityInfo] The value * indicating whether to mask security information. * @member {boolean} [processingSettings.convertImpliedDecimal] The value * indicating whether to convert numerical type to implied decimal. * @member {boolean} [processingSettings.preserveInterchange] The value * indicating whether to preserve interchange. * @member {boolean} [processingSettings.suspendInterchangeOnError] The value * indicating whether to suspend interchange on error. * @member {boolean} * [processingSettings.createEmptyXmlTagsForTrailingSeparators] The value * indicating whether to create empty xml tags for trailing separators. * @member {boolean} [processingSettings.useDotAsDecimalSeparator] The value * indicating whether to use dot as decimal separator. * @member {array} [envelopeOverrides] The X12 envelope override settings. * @member {array} [validationOverrides] The X12 validation override * settings. * @member {array} [messageFilterList] The X12 message filter list. * @member {array} schemaReferences The X12 schema references. * @member {array} [x12DelimiterOverrides] The X12 delimiter override * settings. */ constructor() { } /** * Defines the metadata of X12ProtocolSettings * * @returns {object} metadata of X12ProtocolSettings * */ mapper() { return { required: false, serializedName: 'X12ProtocolSettings', type: { name: 'Composite', className: 'X12ProtocolSettings', modelProperties: { validationSettings: { required: true, serializedName: 'validationSettings', type: { name: 'Composite', className: 'X12ValidationSettings' } }, framingSettings: { required: true, serializedName: 'framingSettings', type: { name: 'Composite', className: 'X12FramingSettings' } }, envelopeSettings: { required: true, serializedName: 'envelopeSettings', type: { name: 'Composite', className: 'X12EnvelopeSettings' } }, acknowledgementSettings: { required: true, serializedName: 'acknowledgementSettings', type: { name: 'Composite', className: 'X12AcknowledgementSettings' } }, messageFilter: { required: true, serializedName: 'messageFilter', type: { name: 'Composite', className: 'X12MessageFilter' } }, securitySettings: { required: true, serializedName: 'securitySettings', type: { name: 'Composite', className: 'X12SecuritySettings' } }, processingSettings: { required: true, serializedName: 'processingSettings', type: { name: 'Composite', className: 'X12ProcessingSettings' } }, envelopeOverrides: { required: false, serializedName: 'envelopeOverrides', type: { name: 'Sequence', element: { required: false, serializedName: 'X12EnvelopeOverrideElementType', type: { name: 'Composite', className: 'X12EnvelopeOverride' } } } }, validationOverrides: { required: false, serializedName: 'validationOverrides', type: { name: 'Sequence', element: { required: false, serializedName: 'X12ValidationOverrideElementType', type: { name: 'Composite', className: 'X12ValidationOverride' } } } }, messageFilterList: { required: false, serializedName: 'messageFilterList', type: { name: 'Sequence', element: { required: false, serializedName: 'X12MessageIdentifierElementType', type: { name: 'Composite', className: 'X12MessageIdentifier' } } } }, schemaReferences: { required: true, serializedName: 'schemaReferences', type: { name: 'Sequence', element: { required: false, serializedName: 'X12SchemaReferenceElementType', type: { name: 'Composite', className: 'X12SchemaReference' } } } }, x12DelimiterOverrides: { required: false, serializedName: 'x12DelimiterOverrides', type: { name: 'Sequence', element: { required: false, serializedName: 'X12DelimiterOverridesElementType', type: { name: 'Composite', className: 'X12DelimiterOverrides' } } } } } } }; } } module.exports = X12ProtocolSettings;