You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@plc4x.apache.org by cd...@apache.org on 2023/01/26 17:49:18 UTC
[plc4x] branch develop updated: feat(code-gen): typeSwitches in typeSwitches now allowed.
This is an automated email from the ASF dual-hosted git repository.
cdutz pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/plc4x.git
The following commit(s) were added to refs/heads/develop by this push:
new 514391705c feat(code-gen): typeSwitches in typeSwitches now allowed.
514391705c is described below
commit 514391705cb4fa697df550dcd9fccd0447c97205
Author: Christofer Dutz <ch...@c-ware.de>
AuthorDate: Thu Jan 26 18:48:56 2023 +0100
feat(code-gen): typeSwitches in typeSwitches now allowed.
---
.../BaseFreemarkerLanguageTemplateHelper.java | 12 +-
.../templates/java/complex-type-template.java.ftlh | 66 +-
code-generation/pom.xml | 9 +-
.../DefaultDiscriminatedComplexTypeDefinition.java | 4 +-
.../mspec/parser/MessageFormatListener.java | 70 +-
.../src/main/resources/protocols/test/test.mspec | 65 +
code-generation/{ => tests}/pom.xml | 17 +-
code-generation/tests/protocol-test-java/pom.xml | 158 ++
.../java/test/readwrite/AbstractTypeTest.java | 79 +-
.../test/readwrite/AbstractTypeTestSubType.java | 261 +++
.../plc4x/java/test/readwrite/ArrayTypeTest.java | 248 +++
.../java/test/readwrite/CheckSumTypeTest.java | 83 +-
.../test/readwrite/ComplexOfComplexUsageA.java | 75 +-
.../test/readwrite/ComplexOfComplexUsageB.java | 104 +-
.../test/readwrite/ComplexOfComplexUsageC.java | 79 +-
.../test/readwrite/ComplexOfComplexUsageD.java | 71 +-
.../plc4x/java/test/readwrite/ConstTypeTest.java | 196 ++
.../plc4x/java/test/readwrite/DataIOType.java | 110 ++
.../java/test/readwrite/EnumDiscriminatedType.java | 76 +-
.../test/readwrite/EnumDiscriminatedTypeA.java | 68 +-
.../test/readwrite/EnumDiscriminatedTypeB.java | 68 +-
.../test/readwrite/EnumDiscriminatedTypeC.java | 68 +-
.../readwrite/EnumDiscriminatedTypeMultiple.java | 116 +-
.../readwrite/EnumDiscriminatedTypeMultipleA.java | 83 +-
.../readwrite/EnumDiscriminatedTypeMultipleB.java | 83 +-
.../readwrite/EnumDiscriminatedTypeMultipleC.java | 83 +-
.../readwrite/EnumDiscriminatedTypeParameter.java | 77 +-
.../readwrite/EnumDiscriminatedTypeParameterA.java | 80 +-
.../readwrite/EnumDiscriminatedTypeParameterB.java | 80 +-
.../readwrite/EnumDiscriminatedTypeParameterC.java | 71 +-
.../EnumDiscriminatedTypeParameterMultiple.java | 110 +-
.../EnumDiscriminatedTypeParameterMultipleA.java | 90 +-
.../EnumDiscriminatedTypeParameterMultipleB.java | 85 +-
.../EnumDiscriminatedTypeParameterMultipleC.java | 85 +-
.../apache/plc4x/java/test/readwrite/EnumType.java | 57 +
.../plc4x/java/test/readwrite/EnumTypeBit.java | 55 +
.../plc4x/java/test/readwrite/EnumTypeInt.java | 56 +
.../java/test/readwrite/EnumTypeParameters.java | 188 ++
.../plc4x/java/test/readwrite/EnumTypeTest.java | 90 +-
.../plc4x/java/test/readwrite/FieldTypeTest.java | 325 ++++
.../readwrite/FieldTypeTestWithUnknownField.java | 225 +++
.../readwrite/ImplicitPascalStringTypeTest.java | 80 +-
.../java/test/readwrite/ImplicitTypeTest.java | 187 ++
.../plc4x/java/test/readwrite/IntTypeTest.java | 217 +++
.../plc4x/java/test/readwrite/LengthLoopTest.java | 87 +-
.../java/test/readwrite/OptionalTypeTest.java | 92 +-
.../plc4x/java/test/readwrite/PaddingTypeTest.java | 87 +-
.../java/test/readwrite/PascalStringTypeTest.java | 85 +-
.../java/test/readwrite/ReservedTypeTest.java | 73 +-
.../java/test/readwrite/ReservedTypeTestChild.java | 61 +-
.../test/readwrite/ReservedTypeTestParent.java | 86 +-
.../java/test/readwrite/SimpleBitTypeTest.java | 71 +-
.../test/readwrite/SimpleDiscriminatedType.java | 62 +-
.../test/readwrite/SimpleDiscriminatedTypeA.java | 71 +-
.../test/readwrite/SimpleDiscriminatedTypeB.java | 71 +-
.../test/readwrite/SimpleDiscriminatedTypeC.java | 70 +-
.../plc4x/java/test/readwrite/SimpleTypeTest.java | 234 +++
.../TypeSwitchInTypeSwitchParentType.java | 93 +-
.../TypeSwitchInTypeSwitchParentTypeChild0.java | 192 ++
...eSwitchInTypeSwitchParentTypeChild0Infant0.java | 194 ++
...SwitchParentTypeChild0Infant0InfantsChild0.java | 160 ++
...SwitchParentTypeChild0Infant0InfantsChild1.java | 160 ++
...eSwitchInTypeSwitchParentTypeChild0Infant1.java | 151 ++
...eSwitchInTypeSwitchParentTypeChild0Infant2.java | 151 ++
.../TypeSwitchInTypeSwitchParentTypeChild1.java | 192 ++
...eSwitchInTypeSwitchParentTypeChild1Infant3.java | 88 +-
...eSwitchInTypeSwitchParentTypeChild1Infant4.java | 91 +-
...eSwitchInTypeSwitchParentTypeChild1Infant5.java | 88 +-
.../TypeSwitchInTypeSwitchParentTypeChild2.java | 198 +++
...eSwitchInTypeSwitchParentTypeChild2Infant6.java | 151 ++
...eSwitchInTypeSwitchParentTypeChild2Infant7.java | 91 +-
...eSwitchInTypeSwitchParentTypeChild2Infant8.java | 151 ++
.../plc4x/java/test/readwrite/UIntTypeTest.java | 219 +++
.../java/test/readwrite/VirtualFieldTest.java | 194 ++
.../java/test/readwrite/utils/StaticHelper.java | 90 +
.../CIPEncapsulationConnectionRequest.java | 10 +-
.../CIPEncapsulationConnectionResponse.java | 10 +-
.../abeth/readwrite/CIPEncapsulationPacket.java | 14 +-
.../readwrite/CIPEncapsulationReadRequest.java | 10 +-
.../readwrite/CIPEncapsulationReadResponse.java | 8 +-
.../abeth/readwrite/DF1CommandRequestMessage.java | 8 +-
...ndResponseMessageProtectedTypedLogicalRead.java | 8 +-
.../java/abeth/readwrite/DF1RequestCommand.java | 4 +-
.../java/abeth/readwrite/DF1RequestMessage.java | 4 +-
.../DF1RequestProtectedTypedLogicalRead.java | 8 +-
.../java/abeth/readwrite/DF1ResponseMessage.java | 4 +-
plc4j/drivers/ads/pom.xml | 1 +
.../readwrite/AdsAddDeviceNotificationRequest.java | 9 +-
.../AdsAddDeviceNotificationResponse.java | 8 +-
.../AdsDeleteDeviceNotificationRequest.java | 8 +-
.../AdsDeleteDeviceNotificationResponse.java | 8 +-
.../readwrite/AdsDeviceNotificationRequest.java | 9 +-
.../readwrite/AdsDeviceNotificationResponse.java | 9 +-
.../java/ads/readwrite/AdsInvalidRequest.java | 8 +-
.../java/ads/readwrite/AdsInvalidResponse.java | 8 +-
.../java/ads/readwrite/AdsMultiRequestItem.java | 12 +-
.../ads/readwrite/AdsMultiRequestItemRead.java | 8 +-
.../readwrite/AdsMultiRequestItemReadWrite.java | 8 +-
.../ads/readwrite/AdsMultiRequestItemWrite.java | 9 +-
.../ads/readwrite/AdsReadDeviceInfoRequest.java | 8 +-
.../ads/readwrite/AdsReadDeviceInfoResponse.java | 8 +-
.../plc4x/java/ads/readwrite/AdsReadRequest.java | 8 +-
.../plc4x/java/ads/readwrite/AdsReadResponse.java | 8 +-
.../java/ads/readwrite/AdsReadStateRequest.java | 8 +-
.../java/ads/readwrite/AdsReadStateResponse.java | 8 +-
.../java/ads/readwrite/AdsReadWriteRequest.java | 8 +-
.../java/ads/readwrite/AdsReadWriteResponse.java | 8 +-
.../java/ads/readwrite/AdsWriteControlRequest.java | 8 +-
.../ads/readwrite/AdsWriteControlResponse.java | 8 +-
.../plc4x/java/ads/readwrite/AdsWriteRequest.java | 8 +-
.../plc4x/java/ads/readwrite/AdsWriteResponse.java | 8 +-
.../apache/plc4x/java/ads/readwrite/AmsPacket.java | 44 +-
.../plc4x/java/ads/readwrite/ErrorResponse.java | 8 +-
.../apache/plc4x/java/bacnetip/readwrite/APDU.java | 20 +-
.../plc4x/java/bacnetip/readwrite/APDUAbort.java | 9 +-
.../java/bacnetip/readwrite/APDUComplexAck.java | 8 +-
.../bacnetip/readwrite/APDUConfirmedRequest.java | 10 +-
.../plc4x/java/bacnetip/readwrite/APDUError.java | 9 +-
.../plc4x/java/bacnetip/readwrite/APDUReject.java | 8 +-
.../java/bacnetip/readwrite/APDUSegmentAck.java | 8 +-
.../java/bacnetip/readwrite/APDUSimpleAck.java | 9 +-
.../bacnetip/readwrite/APDUUnconfirmedRequest.java | 10 +-
.../plc4x/java/bacnetip/readwrite/APDUUnknown.java | 8 +-
.../bacnetip/readwrite/BACnetApplicationTag.java | 40 +-
.../readwrite/BACnetApplicationTagBitString.java | 8 +-
.../readwrite/BACnetApplicationTagBoolean.java | 8 +-
.../BACnetApplicationTagCharacterString.java | 8 +-
.../readwrite/BACnetApplicationTagDate.java | 10 +-
.../readwrite/BACnetApplicationTagDouble.java | 10 +-
.../readwrite/BACnetApplicationTagEnumerated.java | 8 +-
.../readwrite/BACnetApplicationTagNull.java | 10 +-
.../BACnetApplicationTagObjectIdentifier.java | 9 +-
.../readwrite/BACnetApplicationTagOctetString.java | 8 +-
.../readwrite/BACnetApplicationTagReal.java | 10 +-
.../BACnetApplicationTagSignedInteger.java | 8 +-
.../readwrite/BACnetApplicationTagTime.java | 10 +-
.../BACnetApplicationTagUnsignedInteger.java | 8 +-
.../bacnetip/readwrite/BACnetCalendarEntry.java | 8 +-
.../readwrite/BACnetCalendarEntryDate.java | 10 +-
.../readwrite/BACnetCalendarEntryDateRange.java | 10 +-
.../readwrite/BACnetCalendarEntryWeekNDay.java | 10 +-
.../bacnetip/readwrite/BACnetChannelValue.java | 30 +-
.../readwrite/BACnetChannelValueBitString.java | 10 +-
.../readwrite/BACnetChannelValueBoolean.java | 10 +-
.../BACnetChannelValueCharacterString.java | 10 +-
.../bacnetip/readwrite/BACnetChannelValueDate.java | 10 +-
.../readwrite/BACnetChannelValueDouble.java | 10 +-
.../readwrite/BACnetChannelValueEnumerated.java | 10 +-
.../readwrite/BACnetChannelValueInteger.java | 10 +-
.../BACnetChannelValueLightingCommand.java | 10 +-
.../bacnetip/readwrite/BACnetChannelValueNull.java | 10 +-
.../BACnetChannelValueObjectidentifier.java | 10 +-
.../readwrite/BACnetChannelValueOctetString.java | 11 +-
.../bacnetip/readwrite/BACnetChannelValueReal.java | 10 +-
.../bacnetip/readwrite/BACnetChannelValueTime.java | 10 +-
.../readwrite/BACnetChannelValueUnsigned.java | 11 +-
.../java/bacnetip/readwrite/BACnetClientCOV.java | 6 +-
.../bacnetip/readwrite/BACnetClientCOVNone.java | 9 +-
.../bacnetip/readwrite/BACnetClientCOVObject.java | 8 +-
.../readwrite/BACnetConfirmedServiceRequest.java | 113 +-
...netConfirmedServiceRequestAcknowledgeAlarm.java | 11 +-
...ACnetConfirmedServiceRequestAddListElement.java | 11 +-
...ACnetConfirmedServiceRequestAtomicReadFile.java | 11 +-
...onfirmedServiceRequestAtomicReadFileRecord.java | 11 +-
...onfirmedServiceRequestAtomicReadFileStream.java | 11 +-
...ServiceRequestAtomicReadFileStreamOrRecord.java | 12 +-
...CnetConfirmedServiceRequestAtomicWriteFile.java | 11 +-
.../BACnetConfirmedServiceRequestAuthenticate.java | 13 +-
...rmedServiceRequestConfirmedCOVNotification.java | 11 +-
...iceRequestConfirmedCOVNotificationMultiple.java | 11 +-
...edServiceRequestConfirmedEventNotification.java | 11 +-
...rmedServiceRequestConfirmedPrivateTransfer.java | 11 +-
...onfirmedServiceRequestConfirmedTextMessage.java | 11 +-
...iceRequestConfirmedTextMessageMessageClass.java | 12 +-
...tConfirmedTextMessageMessageClassCharacter.java | 12 +-
...estConfirmedTextMessageMessageClassNumeric.java | 12 +-
.../BACnetConfirmedServiceRequestCreateObject.java | 11 +-
.../BACnetConfirmedServiceRequestDeleteObject.java | 11 +-
...edServiceRequestDeviceCommunicationControl.java | 11 +-
...onfirmedServiceRequestGetEnrollmentSummary.java | 11 +-
...ConfirmedServiceRequestGetEventInformation.java | 11 +-
...ConfirmedServiceRequestLifeSafetyOperation.java | 11 +-
.../BACnetConfirmedServiceRequestReadProperty.java | 11 +-
...irmedServiceRequestReadPropertyConditional.java | 13 +-
...onfirmedServiceRequestReadPropertyMultiple.java | 13 +-
.../BACnetConfirmedServiceRequestReadRange.java | 11 +-
...ACnetConfirmedServiceRequestReadRangeRange.java | 13 +-
...rmedServiceRequestReadRangeRangeByPosition.java | 12 +-
...rviceRequestReadRangeRangeBySequenceNumber.java | 11 +-
...onfirmedServiceRequestReadRangeRangeByTime.java | 11 +-
...tConfirmedServiceRequestReinitializeDevice.java | 11 +-
...etConfirmedServiceRequestRemoveListElement.java | 11 +-
.../BACnetConfirmedServiceRequestRequestKey.java | 13 +-
.../BACnetConfirmedServiceRequestSubscribeCOV.java | 11 +-
...onfirmedServiceRequestSubscribeCOVProperty.java | 11 +-
...ServiceRequestSubscribeCOVPropertyMultiple.java | 11 +-
.../BACnetConfirmedServiceRequestUnknown.java | 13 +-
.../BACnetConfirmedServiceRequestVTClose.java | 13 +-
.../BACnetConfirmedServiceRequestVTData.java | 11 +-
.../BACnetConfirmedServiceRequestVTOpen.java | 11 +-
...BACnetConfirmedServiceRequestWriteProperty.java | 11 +-
...nfirmedServiceRequestWritePropertyMultiple.java | 13 +-
.../bacnetip/readwrite/BACnetConstructedData.java | 1879 ++++++++++----------
.../readwrite/BACnetConstructedDataAPDULength.java | 9 +-
.../BACnetConstructedDataAPDUSegmentTimeout.java | 8 +-
.../BACnetConstructedDataAPDUTimeout.java | 9 +-
.../BACnetConstructedDataAbsenteeLimit.java | 8 +-
.../BACnetConstructedDataAcceptedModes.java | 8 +-
.../BACnetConstructedDataAccessAlarmEvents.java | 8 +-
.../BACnetConstructedDataAccessCredentialAll.java | 8 +-
...BACnetConstructedDataAccessDoorAlarmValues.java | 8 +-
.../BACnetConstructedDataAccessDoorAll.java | 8 +-
...BACnetConstructedDataAccessDoorFaultValues.java | 8 +-
...ACnetConstructedDataAccessDoorPresentValue.java | 8 +-
...ConstructedDataAccessDoorRelinquishDefault.java | 8 +-
.../BACnetConstructedDataAccessDoors.java | 8 +-
.../BACnetConstructedDataAccessEvent.java | 9 +-
...tructedDataAccessEventAuthenticationFactor.java | 8 +-
...BACnetConstructedDataAccessEventCredential.java | 8 +-
.../BACnetConstructedDataAccessEventTag.java | 8 +-
.../BACnetConstructedDataAccessEventTime.java | 8 +-
.../BACnetConstructedDataAccessPointAll.java | 8 +-
.../BACnetConstructedDataAccessRightsAll.java | 8 +-
...CnetConstructedDataAccessTransactionEvents.java | 8 +-
.../BACnetConstructedDataAccessUserAll.java | 8 +-
...BACnetConstructedDataAccessZoneAdjustValue.java | 8 +-
...BACnetConstructedDataAccessZoneAlarmValues.java | 8 +-
.../BACnetConstructedDataAccessZoneAll.java | 8 +-
.../BACnetConstructedDataAccompaniment.java | 8 +-
.../BACnetConstructedDataAccompanimentTime.java | 8 +-
.../BACnetConstructedDataAccumulatorAll.java | 8 +-
...etConstructedDataAccumulatorFaultHighLimit.java | 8 +-
...netConstructedDataAccumulatorFaultLowLimit.java | 8 +-
.../BACnetConstructedDataAccumulatorHighLimit.java | 8 +-
.../BACnetConstructedDataAccumulatorLowLimit.java | 8 +-
...CnetConstructedDataAccumulatorMaxPresValue.java | 8 +-
...CnetConstructedDataAccumulatorMinPresValue.java | 8 +-
.../BACnetConstructedDataAckRequired.java | 9 +-
.../BACnetConstructedDataAckedTransitions.java | 8 +-
.../readwrite/BACnetConstructedDataAction.java | 8 +-
.../readwrite/BACnetConstructedDataActionText.java | 8 +-
.../BACnetConstructedDataActivationTime.java | 8 +-
...tConstructedDataActiveAuthenticationPolicy.java | 8 +-
...structedDataActiveCOVMultipleSubscriptions.java | 8 +-
...ACnetConstructedDataActiveCOVSubscriptions.java | 8 +-
.../readwrite/BACnetConstructedDataActiveText.java | 9 +-
.../BACnetConstructedDataActiveVTSessions.java | 8 +-
.../BACnetConstructedDataActualShedLevel.java | 8 +-
.../BACnetConstructedDataAdjustValue.java | 9 +-
.../readwrite/BACnetConstructedDataAlarmValue.java | 8 +-
.../BACnetConstructedDataAlarmValues.java | 8 +-
.../BACnetConstructedDataAlertEnrollmentAll.java | 8 +-
...ConstructedDataAlertEnrollmentPresentValue.java | 8 +-
.../BACnetConstructedDataAlignIntervals.java | 8 +-
.../BACnetConstructedDataAllWritesSuccessful.java | 8 +-
...ACnetConstructedDataAllowGroupDelayInhibit.java | 8 +-
.../BACnetConstructedDataAnalogInputAll.java | 8 +-
...etConstructedDataAnalogInputFaultHighLimit.java | 8 +-
...netConstructedDataAnalogInputFaultLowLimit.java | 8 +-
...etConstructedDataAnalogInputInterfaceValue.java | 8 +-
...CnetConstructedDataAnalogInputMaxPresValue.java | 8 +-
...CnetConstructedDataAnalogInputPresentValue.java | 8 +-
.../BACnetConstructedDataAnalogOutputAll.java | 8 +-
...tConstructedDataAnalogOutputInterfaceValue.java | 8 +-
...netConstructedDataAnalogOutputMaxPresValue.java | 8 +-
...netConstructedDataAnalogOutputPresentValue.java | 8 +-
...nstructedDataAnalogOutputRelinquishDefault.java | 8 +-
.../BACnetConstructedDataAnalogValueAll.java | 8 +-
...etConstructedDataAnalogValueFaultHighLimit.java | 8 +-
...netConstructedDataAnalogValueFaultLowLimit.java | 8 +-
...CnetConstructedDataAnalogValueMaxPresValue.java | 8 +-
...CnetConstructedDataAnalogValuePresentValue.java | 8 +-
...onstructedDataAnalogValueRelinquishDefault.java | 8 +-
...tConstructedDataApplicationSoftwareVersion.java | 8 +-
.../readwrite/BACnetConstructedDataArchive.java | 8 +-
.../BACnetConstructedDataAssignedAccessRights.java | 8 +-
.../BACnetConstructedDataAssignedLandingCalls.java | 8 +-
.../BACnetConstructedDataAttemptedSamples.java | 8 +-
...BACnetConstructedDataAuthenticationFactors.java | 8 +-
...netConstructedDataAuthenticationPolicyList.java | 8 +-
...etConstructedDataAuthenticationPolicyNames.java | 8 +-
.../BACnetConstructedDataAuthenticationStatus.java | 8 +-
...CnetConstructedDataAuthorizationExemptions.java | 8 +-
.../BACnetConstructedDataAuthorizationMode.java | 8 +-
.../BACnetConstructedDataAutoSlaveDiscovery.java | 8 +-
.../BACnetConstructedDataAverageValue.java | 8 +-
.../BACnetConstructedDataAveragingAll.java | 8 +-
...BACnetConstructedDataBACnetIPGlobalAddress.java | 8 +-
.../BACnetConstructedDataBACnetIPMode.java | 8 +-
...netConstructedDataBACnetIPMulticastAddress.java | 8 +-
.../BACnetConstructedDataBACnetIPNATTraversal.java | 8 +-
.../BACnetConstructedDataBACnetIPUDPPort.java | 8 +-
.../BACnetConstructedDataBACnetIPv6Mode.java | 8 +-
...tConstructedDataBACnetIPv6MulticastAddress.java | 8 +-
.../BACnetConstructedDataBACnetIPv6UDPPort.java | 8 +-
...etConstructedDataBBMDAcceptFDRegistrations.java | 8 +-
...structedDataBBMDBroadcastDistributionTable.java | 8 +-
...ACnetConstructedDataBBMDForeignDeviceTable.java | 8 +-
...BACnetConstructedDataBackupAndRestoreState.java | 8 +-
.../BACnetConstructedDataBackupFailureTimeout.java | 8 +-
...BACnetConstructedDataBackupPreparationTime.java | 8 +-
...netConstructedDataBaseDeviceSecurityPolicy.java | 8 +-
.../readwrite/BACnetConstructedDataBelongsTo.java | 8 +-
.../readwrite/BACnetConstructedDataBias.java | 8 +-
.../BACnetConstructedDataBinaryInputAll.java | 8 +-
...etConstructedDataBinaryInputInterfaceValue.java | 8 +-
...CnetConstructedDataBinaryInputPresentValue.java | 8 +-
...CnetConstructedDataBinaryLightingOutputAll.java | 9 +-
...uctedDataBinaryLightingOutputFeedbackValue.java | 8 +-
...ructedDataBinaryLightingOutputPresentValue.java | 8 +-
...dDataBinaryLightingOutputRelinquishDefault.java | 21 +-
.../BACnetConstructedDataBinaryOutputAll.java | 8 +-
...etConstructedDataBinaryOutputFeedbackValue.java | 8 +-
...tConstructedDataBinaryOutputInterfaceValue.java | 8 +-
...netConstructedDataBinaryOutputPresentValue.java | 8 +-
...nstructedDataBinaryOutputRelinquishDefault.java | 8 +-
.../BACnetConstructedDataBinaryValueAll.java | 8 +-
...CnetConstructedDataBinaryValuePresentValue.java | 8 +-
...onstructedDataBinaryValueRelinquishDefault.java | 8 +-
.../readwrite/BACnetConstructedDataBitMask.java | 8 +-
...etConstructedDataBitStringValueAlarmValues.java | 8 +-
...tConstructedDataBitStringValuePresentValue.java | 8 +-
...tructedDataBitStringValueRelinquishDefault.java | 8 +-
.../readwrite/BACnetConstructedDataBitText.java | 8 +-
.../BACnetConstructedDataBitstringValueAll.java | 8 +-
.../BACnetConstructedDataBlinkWarnEnable.java | 8 +-
.../readwrite/BACnetConstructedDataBufferSize.java | 9 +-
.../BACnetConstructedDataCOVIncrement.java | 8 +-
.../readwrite/BACnetConstructedDataCOVPeriod.java | 8 +-
...etConstructedDataCOVResubscriptionInterval.java | 8 +-
.../readwrite/BACnetConstructedDataCOVUPeriod.java | 9 +-
.../BACnetConstructedDataCOVURecipients.java | 8 +-
.../BACnetConstructedDataCalendarAll.java | 8 +-
.../BACnetConstructedDataCalendarPresentValue.java | 8 +-
.../BACnetConstructedDataCarAssignedDirection.java | 8 +-
.../BACnetConstructedDataCarDoorCommand.java | 8 +-
.../BACnetConstructedDataCarDoorStatus.java | 8 +-
.../BACnetConstructedDataCarDoorText.java | 8 +-
.../BACnetConstructedDataCarDoorZone.java | 9 +-
.../BACnetConstructedDataCarDriveStatus.java | 8 +-
.../readwrite/BACnetConstructedDataCarLoad.java | 8 +-
.../BACnetConstructedDataCarLoadUnits.java | 8 +-
.../readwrite/BACnetConstructedDataCarMode.java | 8 +-
.../BACnetConstructedDataCarMovingDirection.java | 8 +-
.../BACnetConstructedDataCarPosition.java | 9 +-
.../BACnetConstructedDataChangeOfStateCount.java | 8 +-
.../BACnetConstructedDataChangeOfStateTime.java | 8 +-
.../BACnetConstructedDataChangesPending.java | 8 +-
.../readwrite/BACnetConstructedDataChannelAll.java | 8 +-
...dDataChannelListOfObjectPropertyReferences.java | 21 +-
.../BACnetConstructedDataChannelNumber.java | 8 +-
.../BACnetConstructedDataChannelPresentValue.java | 8 +-
...tructedDataCharacterStringValueAlarmValues.java | 8 +-
...tructedDataCharacterStringValueFaultValues.java | 8 +-
...ructedDataCharacterStringValuePresentValue.java | 8 +-
...dDataCharacterStringValueRelinquishDefault.java | 21 +-
...CnetConstructedDataCharacterstringValueAll.java | 9 +-
.../BACnetConstructedDataClientCOVIncrement.java | 8 +-
.../readwrite/BACnetConstructedDataCommand.java | 8 +-
.../BACnetConstructedDataCommandAction.java | 8 +-
.../readwrite/BACnetConstructedDataCommandAll.java | 8 +-
.../BACnetConstructedDataCommandTimeArray.java | 8 +-
.../BACnetConstructedDataConfigurationFiles.java | 8 +-
.../BACnetConstructedDataControlGroups.java | 8 +-
...ConstructedDataControlledVariableReference.java | 8 +-
...CnetConstructedDataControlledVariableUnits.java | 8 +-
...CnetConstructedDataControlledVariableValue.java | 8 +-
.../readwrite/BACnetConstructedDataCount.java | 8 +-
.../BACnetConstructedDataCountBeforeChange.java | 8 +-
.../BACnetConstructedDataCountChangeTime.java | 8 +-
...ACnetConstructedDataCredentialDataInputAll.java | 9 +-
...tructedDataCredentialDataInputPresentValue.java | 8 +-
...nstructedDataCredentialDataInputUpdateTime.java | 8 +-
.../BACnetConstructedDataCredentialDisable.java | 8 +-
.../BACnetConstructedDataCredentialStatus.java | 8 +-
.../BACnetConstructedDataCredentials.java | 9 +-
.../BACnetConstructedDataCredentialsInZone.java | 8 +-
...ACnetConstructedDataCurrentCommandPriority.java | 8 +-
.../BACnetConstructedDataDatabaseRevision.java | 8 +-
.../readwrite/BACnetConstructedDataDateList.java | 8 +-
...onstructedDataDatePatternValuePresentValue.java | 8 +-
...uctedDataDatePatternValueRelinquishDefault.java | 8 +-
...ructedDataDateTimePatternValuePresentValue.java | 8 +-
...dDataDateTimePatternValueRelinquishDefault.java | 21 +-
...etConstructedDataDateTimeValuePresentValue.java | 8 +-
...structedDataDateTimeValueRelinquishDefault.java | 8 +-
.../BACnetConstructedDataDateValueAll.java | 8 +-
...BACnetConstructedDataDateValuePresentValue.java | 8 +-
...tConstructedDataDateValueRelinquishDefault.java | 8 +-
.../BACnetConstructedDataDatepatternValueAll.java | 8 +-
.../BACnetConstructedDataDatetimeValueAll.java | 8 +-
...CnetConstructedDataDatetimepatternValueAll.java | 9 +-
...BACnetConstructedDataDaylightSavingsStatus.java | 8 +-
.../BACnetConstructedDataDaysRemaining.java | 8 +-
.../readwrite/BACnetConstructedDataDeadband.java | 8 +-
.../BACnetConstructedDataDefaultFadeTime.java | 8 +-
.../BACnetConstructedDataDefaultRampRate.java | 8 +-
.../BACnetConstructedDataDefaultStepIncrement.java | 8 +-
...structedDataDefaultSubordinateRelationship.java | 8 +-
.../BACnetConstructedDataDefaultTimeout.java | 8 +-
...CnetConstructedDataDeployedProfileLocation.java | 8 +-
.../BACnetConstructedDataDerivativeConstant.java | 8 +-
...CnetConstructedDataDerivativeConstantUnits.java | 8 +-
.../BACnetConstructedDataDescription.java | 9 +-
.../BACnetConstructedDataDescriptionOfHalt.java | 8 +-
.../BACnetConstructedDataDeviceAddressBinding.java | 8 +-
.../readwrite/BACnetConstructedDataDeviceAll.java | 8 +-
.../BACnetConstructedDataDeviceMaxInfoFrames.java | 8 +-
.../BACnetConstructedDataDeviceMaxMaster.java | 8 +-
.../readwrite/BACnetConstructedDataDeviceType.java | 9 +-
.../BACnetConstructedDataDirectReading.java | 8 +-
...CnetConstructedDataDistributionKeyRevision.java | 8 +-
.../readwrite/BACnetConstructedDataDoNotHide.java | 8 +-
.../BACnetConstructedDataDoorAlarmState.java | 8 +-
...BACnetConstructedDataDoorExtendedPulseTime.java | 8 +-
.../BACnetConstructedDataDoorMembers.java | 8 +-
.../BACnetConstructedDataDoorOpenTooLongTime.java | 8 +-
.../BACnetConstructedDataDoorPulseTime.java | 8 +-
.../readwrite/BACnetConstructedDataDoorStatus.java | 9 +-
.../BACnetConstructedDataDoorUnlockDelayTime.java | 8 +-
.../readwrite/BACnetConstructedDataDutyWindow.java | 9 +-
.../BACnetConstructedDataEffectivePeriod.java | 8 +-
.../BACnetConstructedDataEgressActive.java | 8 +-
.../readwrite/BACnetConstructedDataEgressTime.java | 9 +-
.../BACnetConstructedDataElapsedActiveTime.java | 8 +-
.../BACnetConstructedDataElevatorGroup.java | 8 +-
.../BACnetConstructedDataElevatorGroupAll.java | 8 +-
...etConstructedDataElevatorGroupGroupMembers.java | 8 +-
.../readwrite/BACnetConstructedDataEnable.java | 8 +-
.../BACnetConstructedDataEnergyMeter.java | 9 +-
.../BACnetConstructedDataEnergyMeterRef.java | 8 +-
.../BACnetConstructedDataEntryPoints.java | 9 +-
.../readwrite/BACnetConstructedDataErrorLimit.java | 9 +-
.../BACnetConstructedDataEscalatorAll.java | 8 +-
...BACnetConstructedDataEscalatorFaultSignals.java | 8 +-
.../BACnetConstructedDataEscalatorMode.java | 8 +-
...BACnetConstructedDataEventAlgorithmInhibit.java | 8 +-
...netConstructedDataEventAlgorithmInhibitRef.java | 8 +-
.../BACnetConstructedDataEventDetectionEnable.java | 8 +-
.../BACnetConstructedDataEventEnable.java | 9 +-
.../BACnetConstructedDataEventEnrollmentAll.java | 8 +-
.../BACnetConstructedDataEventLogAll.java | 8 +-
.../BACnetConstructedDataEventLogLogBuffer.java | 8 +-
.../BACnetConstructedDataEventMessageTexts.java | 8 +-
...CnetConstructedDataEventMessageTextsConfig.java | 8 +-
.../BACnetConstructedDataEventParameters.java | 8 +-
.../readwrite/BACnetConstructedDataEventState.java | 9 +-
.../BACnetConstructedDataEventTimeStamps.java | 8 +-
.../readwrite/BACnetConstructedDataEventType.java | 8 +-
.../BACnetConstructedDataExceptionSchedule.java | 8 +-
.../BACnetConstructedDataExecutionDelay.java | 8 +-
.../readwrite/BACnetConstructedDataExitPoints.java | 9 +-
.../BACnetConstructedDataExpectedShedLevel.java | 8 +-
.../BACnetConstructedDataExpirationTime.java | 8 +-
.../BACnetConstructedDataExtendedTimeEnable.java | 8 +-
.../BACnetConstructedDataFDBBMDAddress.java | 8 +-
...ACnetConstructedDataFDSubscriptionLifetime.java | 8 +-
.../BACnetConstructedDataFailedAttemptEvents.java | 8 +-
.../BACnetConstructedDataFailedAttempts.java | 8 +-
.../BACnetConstructedDataFailedAttemptsTime.java | 8 +-
.../BACnetConstructedDataFaultHighLimit.java | 8 +-
.../BACnetConstructedDataFaultLowLimit.java | 8 +-
.../BACnetConstructedDataFaultParameters.java | 8 +-
.../BACnetConstructedDataFaultSignals.java | 8 +-
.../readwrite/BACnetConstructedDataFaultType.java | 8 +-
.../BACnetConstructedDataFaultValues.java | 8 +-
.../BACnetConstructedDataFileAccessMethod.java | 8 +-
.../readwrite/BACnetConstructedDataFileAll.java | 8 +-
.../BACnetConstructedDataFileRecordCount.java | 8 +-
.../readwrite/BACnetConstructedDataFileSize.java | 8 +-
.../readwrite/BACnetConstructedDataFileType.java | 8 +-
.../BACnetConstructedDataFirmwareRevision.java | 8 +-
.../readwrite/BACnetConstructedDataFloorText.java | 8 +-
.../BACnetConstructedDataFullDutyBaseline.java | 8 +-
.../BACnetConstructedDataGlobalGroupAll.java | 8 +-
...CnetConstructedDataGlobalGroupGroupMembers.java | 8 +-
...CnetConstructedDataGlobalGroupPresentValue.java | 8 +-
.../BACnetConstructedDataGlobalIdentifier.java | 8 +-
.../readwrite/BACnetConstructedDataGroupAll.java | 8 +-
.../readwrite/BACnetConstructedDataGroupID.java | 8 +-
.../BACnetConstructedDataGroupMemberNames.java | 8 +-
.../BACnetConstructedDataGroupMembers.java | 8 +-
.../readwrite/BACnetConstructedDataGroupMode.java | 8 +-
.../BACnetConstructedDataGroupPresentValue.java | 8 +-
.../readwrite/BACnetConstructedDataHighLimit.java | 8 +-
.../readwrite/BACnetConstructedDataHigherDeck.java | 9 +-
.../readwrite/BACnetConstructedDataIPAddress.java | 8 +-
.../BACnetConstructedDataIPDHCPEnable.java | 8 +-
.../BACnetConstructedDataIPDHCPLeaseTime.java | 8 +-
...netConstructedDataIPDHCPLeaseTimeRemaining.java | 8 +-
.../BACnetConstructedDataIPDHCPServer.java | 9 +-
.../BACnetConstructedDataIPDNSServer.java | 8 +-
.../BACnetConstructedDataIPDefaultGateway.java | 8 +-
.../BACnetConstructedDataIPSubnetMask.java | 8 +-
.../BACnetConstructedDataIPv6Address.java | 9 +-
...netConstructedDataIPv6AutoAddressingEnable.java | 8 +-
.../BACnetConstructedDataIPv6DHCPLeaseTime.java | 8 +-
...tConstructedDataIPv6DHCPLeaseTimeRemaining.java | 8 +-
.../BACnetConstructedDataIPv6DHCPServer.java | 8 +-
.../BACnetConstructedDataIPv6DNSServer.java | 8 +-
.../BACnetConstructedDataIPv6DefaultGateway.java | 8 +-
.../BACnetConstructedDataIPv6PrefixLength.java | 8 +-
.../BACnetConstructedDataIPv6ZoneIndex.java | 8 +-
.../readwrite/BACnetConstructedDataInProcess.java | 8 +-
.../readwrite/BACnetConstructedDataInProgress.java | 9 +-
.../BACnetConstructedDataInactiveText.java | 8 +-
.../BACnetConstructedDataInitialTimeout.java | 8 +-
.../BACnetConstructedDataInputReference.java | 8 +-
.../BACnetConstructedDataInstallationID.java | 8 +-
.../readwrite/BACnetConstructedDataInstanceOf.java | 9 +-
.../BACnetConstructedDataInstantaneousPower.java | 8 +-
.../BACnetConstructedDataIntegerValueAll.java | 8 +-
...netConstructedDataIntegerValueCOVIncrement.java | 8 +-
.../BACnetConstructedDataIntegerValueDeadband.java | 8 +-
...tConstructedDataIntegerValueFaultHighLimit.java | 8 +-
...etConstructedDataIntegerValueFaultLowLimit.java | 8 +-
...BACnetConstructedDataIntegerValueHighLimit.java | 8 +-
.../BACnetConstructedDataIntegerValueLowLimit.java | 8 +-
...netConstructedDataIntegerValueMaxPresValue.java | 8 +-
...netConstructedDataIntegerValueMinPresValue.java | 8 +-
...netConstructedDataIntegerValuePresentValue.java | 8 +-
...nstructedDataIntegerValueRelinquishDefault.java | 8 +-
...ACnetConstructedDataIntegerValueResolution.java | 8 +-
.../BACnetConstructedDataIntegralConstant.java | 8 +-
...BACnetConstructedDataIntegralConstantUnits.java | 8 +-
.../BACnetConstructedDataIntervalOffset.java | 8 +-
.../readwrite/BACnetConstructedDataIsUTC.java | 8 +-
.../readwrite/BACnetConstructedDataKeySets.java | 8 +-
.../BACnetConstructedDataLandingCallControl.java | 8 +-
.../BACnetConstructedDataLandingCalls.java | 8 +-
.../BACnetConstructedDataLandingDoorStatus.java | 8 +-
.../BACnetConstructedDataLargeAnalogValueAll.java | 8 +-
...onstructedDataLargeAnalogValueCOVIncrement.java | 8 +-
...netConstructedDataLargeAnalogValueDeadband.java | 8 +-
...structedDataLargeAnalogValueFaultHighLimit.java | 8 +-
...nstructedDataLargeAnalogValueFaultLowLimit.java | 8 +-
...etConstructedDataLargeAnalogValueHighLimit.java | 8 +-
...netConstructedDataLargeAnalogValueLowLimit.java | 8 +-
...onstructedDataLargeAnalogValueMaxPresValue.java | 8 +-
...onstructedDataLargeAnalogValueMinPresValue.java | 8 +-
...onstructedDataLargeAnalogValuePresentValue.java | 8 +-
...uctedDataLargeAnalogValueRelinquishDefault.java | 8 +-
...tConstructedDataLargeAnalogValueResolution.java | 8 +-
.../BACnetConstructedDataLastAccessEvent.java | 8 +-
.../BACnetConstructedDataLastAccessPoint.java | 8 +-
.../BACnetConstructedDataLastCommandTime.java | 8 +-
.../BACnetConstructedDataLastCredentialAdded.java | 8 +-
...CnetConstructedDataLastCredentialAddedTime.java | 8 +-
...BACnetConstructedDataLastCredentialRemoved.java | 8 +-
...etConstructedDataLastCredentialRemovedTime.java | 8 +-
.../BACnetConstructedDataLastKeyServer.java | 8 +-
.../BACnetConstructedDataLastNotifyRecord.java | 8 +-
.../BACnetConstructedDataLastPriority.java | 8 +-
.../BACnetConstructedDataLastRestartReason.java | 8 +-
.../BACnetConstructedDataLastRestoreTime.java | 8 +-
.../BACnetConstructedDataLastStateChange.java | 8 +-
.../BACnetConstructedDataLastUseTime.java | 9 +-
...BACnetConstructedDataLifeSafetyAlarmValues.java | 8 +-
...tConstructedDataLifeSafetyPointAlarmValues.java | 8 +-
.../BACnetConstructedDataLifeSafetyPointAll.java | 8 +-
...tConstructedDataLifeSafetyPointFaultValues.java | 8 +-
...ConstructedDataLifeSafetyPointPresentValue.java | 8 +-
...etConstructedDataLifeSafetyZoneAlarmValues.java | 8 +-
.../BACnetConstructedDataLifeSafetyZoneAll.java | 8 +-
...etConstructedDataLifeSafetyZoneFaultValues.java | 8 +-
...uctedDataLifeSafetyZoneMaintenanceRequired.java | 8 +-
...tConstructedDataLifeSafetyZonePresentValue.java | 8 +-
.../readwrite/BACnetConstructedDataLiftAll.java | 8 +-
.../BACnetConstructedDataLiftFaultSignals.java | 8 +-
.../BACnetConstructedDataLightingCommand.java | 8 +-
...structedDataLightingCommandDefaultPriority.java | 8 +-
.../BACnetConstructedDataLightingOutputAll.java | 8 +-
...ConstructedDataLightingOutputFeedbackValue.java | 8 +-
...tConstructedDataLightingOutputPresentValue.java | 8 +-
...tructedDataLightingOutputRelinquishDefault.java | 8 +-
...ConstructedDataLightingOutputTrackingValue.java | 8 +-
.../BACnetConstructedDataLimitEnable.java | 9 +-
...CnetConstructedDataLimitMonitoringInterval.java | 8 +-
.../readwrite/BACnetConstructedDataLinkSpeed.java | 8 +-
...ACnetConstructedDataLinkSpeedAutonegotiate.java | 8 +-
.../readwrite/BACnetConstructedDataLinkSpeeds.java | 8 +-
.../BACnetConstructedDataListOfGroupMembers.java | 8 +-
...structedDataListOfObjectPropertyReferences.java | 8 +-
.../BACnetConstructedDataLoadControlAll.java | 8 +-
...CnetConstructedDataLoadControlPresentValue.java | 8 +-
.../readwrite/BACnetConstructedDataLocalDate.java | 8 +-
.../BACnetConstructedDataLocalForwardingOnly.java | 8 +-
.../readwrite/BACnetConstructedDataLocalTime.java | 8 +-
.../readwrite/BACnetConstructedDataLocation.java | 8 +-
.../readwrite/BACnetConstructedDataLockStatus.java | 9 +-
.../readwrite/BACnetConstructedDataLockout.java | 8 +-
...BACnetConstructedDataLockoutRelinquishTime.java | 8 +-
.../readwrite/BACnetConstructedDataLogBuffer.java | 8 +-
...CnetConstructedDataLogDeviceObjectProperty.java | 8 +-
.../BACnetConstructedDataLogInterval.java | 9 +-
.../BACnetConstructedDataLoggingObject.java | 8 +-
.../BACnetConstructedDataLoggingRecord.java | 8 +-
.../BACnetConstructedDataLoggingType.java | 9 +-
.../readwrite/BACnetConstructedDataLoopAction.java | 8 +-
.../readwrite/BACnetConstructedDataLoopAll.java | 8 +-
.../BACnetConstructedDataLoopPresentValue.java | 8 +-
.../BACnetConstructedDataLowDiffLimit.java | 8 +-
.../readwrite/BACnetConstructedDataLowLimit.java | 8 +-
.../readwrite/BACnetConstructedDataLowerDeck.java | 8 +-
.../readwrite/BACnetConstructedDataMACAddress.java | 9 +-
.../BACnetConstructedDataMachineRoomID.java | 8 +-
.../BACnetConstructedDataMaintenanceRequired.java | 8 +-
.../BACnetConstructedDataMakingCarCall.java | 8 +-
...onstructedDataManipulatedVariableReference.java | 8 +-
...etConstructedDataManualSlaveAddressBinding.java | 8 +-
.../BACnetConstructedDataMaskedAlarmValues.java | 8 +-
...BACnetConstructedDataMaxAPDULengthAccepted.java | 8 +-
.../BACnetConstructedDataMaxActualValue.java | 8 +-
.../BACnetConstructedDataMaxFailedAttempts.java | 8 +-
.../BACnetConstructedDataMaxInfoFrames.java | 8 +-
.../readwrite/BACnetConstructedDataMaxMaster.java | 8 +-
.../BACnetConstructedDataMaxPresValue.java | 8 +-
.../BACnetConstructedDataMaxSegmentsAccepted.java | 8 +-
.../BACnetConstructedDataMaximumOutput.java | 8 +-
.../BACnetConstructedDataMaximumValue.java | 8 +-
...BACnetConstructedDataMaximumValueTimestamp.java | 8 +-
.../readwrite/BACnetConstructedDataMemberOf.java | 8 +-
.../BACnetConstructedDataMemberStatusFlags.java | 8 +-
.../readwrite/BACnetConstructedDataMembers.java | 8 +-
.../BACnetConstructedDataMinActualValue.java | 8 +-
.../BACnetConstructedDataMinPresValue.java | 8 +-
.../BACnetConstructedDataMinimumOffTime.java | 8 +-
.../BACnetConstructedDataMinimumOnTime.java | 8 +-
.../BACnetConstructedDataMinimumOutput.java | 8 +-
.../BACnetConstructedDataMinimumValue.java | 8 +-
...BACnetConstructedDataMinimumValueTimestamp.java | 8 +-
.../readwrite/BACnetConstructedDataMode.java | 8 +-
.../readwrite/BACnetConstructedDataModelName.java | 8 +-
.../BACnetConstructedDataModificationDate.java | 8 +-
...tConstructedDataMultiStateInputAlarmValues.java | 8 +-
.../BACnetConstructedDataMultiStateInputAll.java | 8 +-
...tConstructedDataMultiStateInputFaultValues.java | 8 +-
...nstructedDataMultiStateInputInterfaceValue.java | 8 +-
.../BACnetConstructedDataMultiStateOutputAll.java | 8 +-
...nstructedDataMultiStateOutputFeedbackValue.java | 8 +-
...structedDataMultiStateOutputInterfaceValue.java | 8 +-
...uctedDataMultiStateOutputRelinquishDefault.java | 8 +-
...tConstructedDataMultiStateValueAlarmValues.java | 8 +-
.../BACnetConstructedDataMultiStateValueAll.java | 8 +-
...tConstructedDataMultiStateValueFaultValues.java | 8 +-
...ructedDataMultiStateValueRelinquishDefault.java | 8 +-
.../BACnetConstructedDataMusterPoint.java | 9 +-
.../BACnetConstructedDataNegativeAccessRules.java | 8 +-
...nstructedDataNetworkAccessSecurityPolicies.java | 8 +-
.../BACnetConstructedDataNetworkInterfaceName.java | 8 +-
.../BACnetConstructedDataNetworkNumber.java | 8 +-
.../BACnetConstructedDataNetworkNumberQuality.java | 8 +-
.../BACnetConstructedDataNetworkPortAll.java | 8 +-
...netConstructedDataNetworkPortMaxInfoFrames.java | 8 +-
.../BACnetConstructedDataNetworkPortMaxMaster.java | 8 +-
.../BACnetConstructedDataNetworkSecurityAll.java | 8 +-
.../BACnetConstructedDataNetworkType.java | 9 +-
.../BACnetConstructedDataNextStoppingFloor.java | 8 +-
.../BACnetConstructedDataNodeSubtype.java | 9 +-
.../readwrite/BACnetConstructedDataNodeType.java | 8 +-
.../BACnetConstructedDataNotificationClass.java | 8 +-
.../BACnetConstructedDataNotificationClassAll.java | 8 +-
...netConstructedDataNotificationForwarderAll.java | 9 +-
...BACnetConstructedDataNotificationThreshold.java | 8 +-
.../readwrite/BACnetConstructedDataNotifyType.java | 9 +-
.../BACnetConstructedDataNumberOfAPDURetries.java | 8 +-
...structedDataNumberOfAuthenticationPolicies.java | 8 +-
.../BACnetConstructedDataNumberOfStates.java | 8 +-
.../BACnetConstructedDataObjectIdentifier.java | 8 +-
.../readwrite/BACnetConstructedDataObjectList.java | 8 +-
.../readwrite/BACnetConstructedDataObjectName.java | 9 +-
...CnetConstructedDataObjectPropertyReference.java | 8 +-
.../readwrite/BACnetConstructedDataObjectType.java | 9 +-
.../BACnetConstructedDataOccupancyCount.java | 8 +-
.../BACnetConstructedDataOccupancyCountAdjust.java | 8 +-
.../BACnetConstructedDataOccupancyCountEnable.java | 8 +-
.../BACnetConstructedDataOccupancyLowerLimit.java | 8 +-
...ConstructedDataOccupancyLowerLimitEnforced.java | 8 +-
.../BACnetConstructedDataOccupancyState.java | 8 +-
.../BACnetConstructedDataOccupancyUpperLimit.java | 8 +-
...ConstructedDataOccupancyUpperLimitEnforced.java | 8 +-
...onstructedDataOctetStringValuePresentValue.java | 8 +-
...uctedDataOctetStringValueRelinquishDefault.java | 8 +-
.../BACnetConstructedDataOctetstringValueAll.java | 8 +-
.../BACnetConstructedDataOperationDirection.java | 8 +-
.../BACnetConstructedDataOperationExpected.java | 8 +-
.../readwrite/BACnetConstructedDataOptional.java | 8 +-
.../BACnetConstructedDataOutOfService.java | 8 +-
.../BACnetConstructedDataOutputUnits.java | 8 +-
.../BACnetConstructedDataPacketReorderTime.java | 8 +-
.../BACnetConstructedDataPassbackMode.java | 8 +-
.../BACnetConstructedDataPassbackTimeout.java | 8 +-
.../BACnetConstructedDataPassengerAlarm.java | 8 +-
.../readwrite/BACnetConstructedDataPolarity.java | 8 +-
.../readwrite/BACnetConstructedDataPortFilter.java | 8 +-
.../BACnetConstructedDataPositiveAccessRules.java | 8 +-
...CnetConstructedDataPositiveIntegerValueAll.java | 9 +-
...ructedDataPositiveIntegerValueCOVIncrement.java | 8 +-
...onstructedDataPositiveIntegerValueDeadband.java | 8 +-
...ctedDataPositiveIntegerValueFaultHighLimit.java | 8 +-
...uctedDataPositiveIntegerValueFaultLowLimit.java | 8 +-
...nstructedDataPositiveIntegerValueHighLimit.java | 8 +-
...onstructedDataPositiveIntegerValueLowLimit.java | 8 +-
...ructedDataPositiveIntegerValueMaxPresValue.java | 8 +-
...ructedDataPositiveIntegerValueMinPresValue.java | 8 +-
...dDataPositiveIntegerValueRelinquishDefault.java | 21 +-
...structedDataPositiveIntegerValueResolution.java | 8 +-
.../readwrite/BACnetConstructedDataPower.java | 8 +-
.../readwrite/BACnetConstructedDataPowerMode.java | 8 +-
.../readwrite/BACnetConstructedDataPrescale.java | 8 +-
.../BACnetConstructedDataPresentValue.java | 8 +-
.../readwrite/BACnetConstructedDataPriority.java | 8 +-
.../BACnetConstructedDataPriorityArray.java | 8 +-
.../BACnetConstructedDataPriorityForWriting.java | 8 +-
.../BACnetConstructedDataProcessIdentifier.java | 8 +-
...CnetConstructedDataProcessIdentifierFilter.java | 8 +-
.../BACnetConstructedDataProfileLocation.java | 8 +-
.../BACnetConstructedDataProfileName.java | 9 +-
.../readwrite/BACnetConstructedDataProgramAll.java | 8 +-
.../BACnetConstructedDataProgramChange.java | 8 +-
.../BACnetConstructedDataProgramLocation.java | 8 +-
.../BACnetConstructedDataProgramState.java | 8 +-
.../BACnetConstructedDataPropertyList.java | 8 +-
.../BACnetConstructedDataProportionalConstant.java | 8 +-
...etConstructedDataProportionalConstantUnits.java | 8 +-
.../BACnetConstructedDataProtocolLevel.java | 8 +-
...onstructedDataProtocolObjectTypesSupported.java | 8 +-
.../BACnetConstructedDataProtocolRevision.java | 8 +-
...etConstructedDataProtocolServicesSupported.java | 8 +-
.../BACnetConstructedDataProtocolVersion.java | 8 +-
...etConstructedDataPulseConverterAdjustValue.java | 8 +-
.../BACnetConstructedDataPulseConverterAll.java | 8 +-
...tConstructedDataPulseConverterPresentValue.java | 8 +-
.../readwrite/BACnetConstructedDataPulseRate.java | 8 +-
.../readwrite/BACnetConstructedDataReadOnly.java | 8 +-
.../BACnetConstructedDataReasonForDisable.java | 8 +-
.../BACnetConstructedDataReasonForHalt.java | 8 +-
.../BACnetConstructedDataRecipientList.java | 8 +-
.../BACnetConstructedDataRecordCount.java | 9 +-
...netConstructedDataRecordsSinceNotification.java | 8 +-
.../BACnetConstructedDataReferencePort.java | 8 +-
.../BACnetConstructedDataRegisteredCarCall.java | 8 +-
.../BACnetConstructedDataReliability.java | 9 +-
...onstructedDataReliabilityEvaluationInhibit.java | 8 +-
.../BACnetConstructedDataRelinquishDefault.java | 8 +-
.../readwrite/BACnetConstructedDataRepresents.java | 9 +-
.../BACnetConstructedDataRequestedShedLevel.java | 8 +-
...CnetConstructedDataRequestedUpdateInterval.java | 8 +-
.../readwrite/BACnetConstructedDataRequired.java | 8 +-
.../readwrite/BACnetConstructedDataResolution.java | 9 +-
...nstructedDataRestartNotificationRecipients.java | 8 +-
...BACnetConstructedDataRestoreCompletionTime.java | 8 +-
...ACnetConstructedDataRestorePreparationTime.java | 8 +-
.../BACnetConstructedDataRoutingTable.java | 8 +-
.../readwrite/BACnetConstructedDataScale.java | 8 +-
.../BACnetConstructedDataScaleFactor.java | 9 +-
.../BACnetConstructedDataScheduleAll.java | 8 +-
.../BACnetConstructedDataScheduleDefault.java | 8 +-
.../BACnetConstructedDataSchedulePresentValue.java | 8 +-
.../BACnetConstructedDataSecuredStatus.java | 8 +-
.../BACnetConstructedDataSecurityPDUTimeout.java | 8 +-
.../BACnetConstructedDataSecurityTimeWindow.java | 8 +-
...BACnetConstructedDataSegmentationSupported.java | 8 +-
.../BACnetConstructedDataSerialNumber.java | 8 +-
.../readwrite/BACnetConstructedDataSetpoint.java | 8 +-
.../BACnetConstructedDataSetpointReference.java | 8 +-
.../readwrite/BACnetConstructedDataSetting.java | 8 +-
.../BACnetConstructedDataShedDuration.java | 8 +-
...BACnetConstructedDataShedLevelDescriptions.java | 8 +-
.../readwrite/BACnetConstructedDataShedLevels.java | 8 +-
.../readwrite/BACnetConstructedDataSilenced.java | 8 +-
.../BACnetConstructedDataSlaveAddressBinding.java | 8 +-
.../BACnetConstructedDataSlaveProxyEnable.java | 8 +-
.../readwrite/BACnetConstructedDataStartTime.java | 8 +-
.../BACnetConstructedDataStateChangeValues.java | 8 +-
.../BACnetConstructedDataStateDescription.java | 8 +-
.../readwrite/BACnetConstructedDataStateText.java | 8 +-
.../BACnetConstructedDataStatusFlags.java | 9 +-
.../readwrite/BACnetConstructedDataStopTime.java | 8 +-
.../BACnetConstructedDataStopWhenFull.java | 8 +-
.../BACnetConstructedDataStrikeCount.java | 9 +-
.../BACnetConstructedDataStructuredObjectList.java | 8 +-
.../BACnetConstructedDataStructuredViewAll.java | 8 +-
...ACnetConstructedDataSubordinateAnnotations.java | 8 +-
.../BACnetConstructedDataSubordinateList.java | 8 +-
.../BACnetConstructedDataSubordinateNodeTypes.java | 8 +-
...netConstructedDataSubordinateRelationships.java | 8 +-
.../BACnetConstructedDataSubordinateTags.java | 8 +-
.../BACnetConstructedDataSubscribedRecipients.java | 8 +-
...ACnetConstructedDataSupportedFormatClasses.java | 8 +-
.../BACnetConstructedDataSupportedFormats.java | 8 +-
...ConstructedDataSupportedSecurityAlgorithms.java | 8 +-
.../BACnetConstructedDataSystemStatus.java | 8 +-
.../readwrite/BACnetConstructedDataTags.java | 8 +-
.../BACnetConstructedDataThreatAuthority.java | 8 +-
.../BACnetConstructedDataThreatLevel.java | 9 +-
.../readwrite/BACnetConstructedDataTimeDelay.java | 8 +-
.../BACnetConstructedDataTimeDelayNormal.java | 8 +-
...BACnetConstructedDataTimeOfActiveTimeReset.java | 8 +-
.../BACnetConstructedDataTimeOfDeviceRestart.java | 8 +-
...BACnetConstructedDataTimeOfStateCountReset.java | 8 +-
...ACnetConstructedDataTimeOfStrikeCountReset.java | 8 +-
...onstructedDataTimePatternValuePresentValue.java | 8 +-
...uctedDataTimePatternValueRelinquishDefault.java | 8 +-
...ConstructedDataTimeSynchronizationInterval.java | 8 +-
...nstructedDataTimeSynchronizationRecipients.java | 8 +-
.../BACnetConstructedDataTimeValueAll.java | 8 +-
...BACnetConstructedDataTimeValuePresentValue.java | 8 +-
...tConstructedDataTimeValueRelinquishDefault.java | 8 +-
.../BACnetConstructedDataTimepatternValueAll.java | 8 +-
.../BACnetConstructedDataTimerAlarmValues.java | 8 +-
.../readwrite/BACnetConstructedDataTimerAll.java | 8 +-
.../BACnetConstructedDataTimerMaxPresValue.java | 8 +-
.../BACnetConstructedDataTimerMinPresValue.java | 8 +-
.../BACnetConstructedDataTimerResolution.java | 8 +-
.../BACnetConstructedDataTimerRunning.java | 8 +-
.../readwrite/BACnetConstructedDataTimerState.java | 9 +-
.../BACnetConstructedDataTotalRecordCount.java | 8 +-
.../readwrite/BACnetConstructedDataTraceFlag.java | 8 +-
.../BACnetConstructedDataTrackingValue.java | 8 +-
...onstructedDataTransactionNotificationClass.java | 8 +-
.../readwrite/BACnetConstructedDataTransition.java | 9 +-
.../BACnetConstructedDataTrendLogAll.java | 8 +-
.../BACnetConstructedDataTrendLogLogBuffer.java | 8 +-
...tructedDataTrendLogLogDeviceObjectProperty.java | 8 +-
.../BACnetConstructedDataTrendLogMultipleAll.java | 8 +-
...etConstructedDataTrendLogMultipleLogBuffer.java | 8 +-
...ataTrendLogMultipleLogDeviceObjectProperty.java | 21 +-
.../readwrite/BACnetConstructedDataTrigger.java | 8 +-
.../readwrite/BACnetConstructedDataUTCOffset.java | 8 +-
...ructedDataUTCTimeSynchronizationRecipients.java | 8 +-
.../readwrite/BACnetConstructedDataUnits.java | 8 +-
.../BACnetConstructedDataUnspecified.java | 8 +-
.../BACnetConstructedDataUpdateInterval.java | 8 +-
.../BACnetConstructedDataUpdateKeySetTimeout.java | 8 +-
.../readwrite/BACnetConstructedDataUpdateTime.java | 9 +-
...ACnetConstructedDataUserExternalIdentifier.java | 8 +-
...netConstructedDataUserInformationReference.java | 8 +-
.../readwrite/BACnetConstructedDataUserName.java | 8 +-
.../readwrite/BACnetConstructedDataUserType.java | 8 +-
.../BACnetConstructedDataUsesRemaining.java | 8 +-
.../BACnetConstructedDataVTClassesSupported.java | 8 +-
.../BACnetConstructedDataValidSamples.java | 8 +-
.../BACnetConstructedDataValueBeforeChange.java | 8 +-
.../BACnetConstructedDataValueChangeTime.java | 8 +-
.../readwrite/BACnetConstructedDataValueSet.java | 8 +-
.../BACnetConstructedDataValueSource.java | 9 +-
.../BACnetConstructedDataValueSourceArray.java | 8 +-
.../BACnetConstructedDataVarianceValue.java | 8 +-
.../BACnetConstructedDataVendorIdentifier.java | 8 +-
.../readwrite/BACnetConstructedDataVendorName.java | 9 +-
.../BACnetConstructedDataVerificationTime.java | 8 +-
...ACnetConstructedDataVirtualMACAddressTable.java | 8 +-
.../BACnetConstructedDataWeeklySchedule.java | 8 +-
.../BACnetConstructedDataWindowInterval.java | 8 +-
.../BACnetConstructedDataWindowSamples.java | 8 +-
.../BACnetConstructedDataWriteStatus.java | 9 +-
.../readwrite/BACnetConstructedDataZoneFrom.java | 8 +-
.../BACnetConstructedDataZoneMembers.java | 8 +-
.../readwrite/BACnetConstructedDataZoneTo.java | 8 +-
.../java/bacnetip/readwrite/BACnetContextTag.java | 39 +-
.../readwrite/BACnetContextTagBitString.java | 8 +-
.../readwrite/BACnetContextTagBoolean.java | 8 +-
.../readwrite/BACnetContextTagCharacterString.java | 8 +-
.../bacnetip/readwrite/BACnetContextTagDate.java | 8 +-
.../bacnetip/readwrite/BACnetContextTagDouble.java | 9 +-
.../readwrite/BACnetContextTagEnumerated.java | 8 +-
.../bacnetip/readwrite/BACnetContextTagNull.java | 8 +-
.../BACnetContextTagObjectIdentifier.java | 8 +-
.../readwrite/BACnetContextTagOctetString.java | 8 +-
.../bacnetip/readwrite/BACnetContextTagReal.java | 8 +-
.../readwrite/BACnetContextTagSignedInteger.java | 8 +-
.../bacnetip/readwrite/BACnetContextTagTime.java | 8 +-
.../readwrite/BACnetContextTagUnknown.java | 8 +-
.../readwrite/BACnetContextTagUnsignedInteger.java | 8 +-
.../plc4x/java/bacnetip/readwrite/BACnetError.java | 20 +-
.../bacnetip/readwrite/BACnetErrorGeneral.java | 8 +-
.../readwrite/BACnetEventLogRecordLogDatum.java | 14 +-
.../BACnetEventLogRecordLogDatumLogStatus.java | 8 +-
.../BACnetEventLogRecordLogDatumNotification.java | 8 +-
.../BACnetEventLogRecordLogDatumTimeChange.java | 8 +-
.../bacnetip/readwrite/BACnetEventParameter.java | 57 +-
.../readwrite/BACnetEventParameterAccessEvent.java | 10 +-
.../readwrite/BACnetEventParameterBufferReady.java | 10 +-
.../BACnetEventParameterChangeOfBitstring.java | 8 +-
...ACnetEventParameterChangeOfCharacterString.java | 8 +-
.../BACnetEventParameterChangeOfDiscreteValue.java | 9 +-
.../BACnetEventParameterChangeOfLifeSavety.java | 8 +-
.../BACnetEventParameterChangeOfState.java | 10 +-
.../BACnetEventParameterChangeOfStatusFlags.java | 8 +-
.../BACnetEventParameterChangeOfTimer.java | 10 +-
.../BACnetEventParameterChangeOfValue.java | 10 +-
...CnetEventParameterChangeOfValueCivCriteria.java | 10 +-
...ntParameterChangeOfValueCivCriteriaBitmask.java | 11 +-
...alueCivCriteriaReferencedPropertyIncrement.java | 12 +-
.../BACnetEventParameterCommandFailure.java | 10 +-
.../BACnetEventParameterDoubleOutOfRange.java | 8 +-
.../readwrite/BACnetEventParameterExtended.java | 10 +-
.../BACnetEventParameterFloatingLimit.java | 10 +-
.../readwrite/BACnetEventParameterNone.java | 10 +-
.../readwrite/BACnetEventParameterOutOfRange.java | 10 +-
.../BACnetEventParameterSignedOutOfRange.java | 8 +-
.../BACnetEventParameterUnsignedOutOfRange.java | 8 +-
.../BACnetEventParameterUnsignedRange.java | 10 +-
.../bacnetip/readwrite/BACnetFaultParameter.java | 24 +-
.../BACnetFaultParameterFaultCharacterString.java | 8 +-
.../BACnetFaultParameterFaultExtended.java | 10 +-
...FaultParameterFaultExtendedParametersEntry.java | 51 +-
...meterFaultExtendedParametersEntryBitString.java | 11 +-
...rameterFaultExtendedParametersEntryBoolean.java | 11 +-
...aultExtendedParametersEntryCharacterString.java | 11 +-
...tParameterFaultExtendedParametersEntryDate.java | 11 +-
...arameterFaultExtendedParametersEntryDouble.java | 11 +-
...eterFaultExtendedParametersEntryEnumerated.java | 12 +-
...rameterFaultExtendedParametersEntryInteger.java | 11 +-
...tParameterFaultExtendedParametersEntryNull.java | 11 +-
...ultExtendedParametersEntryObjectidentifier.java | 11 +-
...terFaultExtendedParametersEntryOctetString.java | 12 +-
...tParameterFaultExtendedParametersEntryReal.java | 11 +-
...meterFaultExtendedParametersEntryReference.java | 11 +-
...tParameterFaultExtendedParametersEntryTime.java | 11 +-
...ameterFaultExtendedParametersEntryUnsigned.java | 11 +-
.../BACnetFaultParameterFaultLifeSafety.java | 10 +-
.../readwrite/BACnetFaultParameterFaultListed.java | 11 +-
.../BACnetFaultParameterFaultOutOfRange.java | 10 +-
...aultParameterFaultOutOfRangeMaxNormalValue.java | 22 +-
...rameterFaultOutOfRangeMaxNormalValueDouble.java | 11 +-
...ameterFaultOutOfRangeMaxNormalValueInteger.java | 11 +-
...ParameterFaultOutOfRangeMaxNormalValueReal.java | 12 +-
...meterFaultOutOfRangeMaxNormalValueUnsigned.java | 11 +-
...aultParameterFaultOutOfRangeMinNormalValue.java | 22 +-
...rameterFaultOutOfRangeMinNormalValueDouble.java | 11 +-
...ameterFaultOutOfRangeMinNormalValueInteger.java | 11 +-
...ParameterFaultOutOfRangeMinNormalValueReal.java | 12 +-
...meterFaultOutOfRangeMinNormalValueUnsigned.java | 11 +-
.../readwrite/BACnetFaultParameterFaultState.java | 10 +-
.../BACnetFaultParameterFaultStatusFlags.java | 8 +-
.../readwrite/BACnetFaultParameterNone.java | 10 +-
.../java/bacnetip/readwrite/BACnetHostAddress.java | 8 +-
.../readwrite/BACnetHostAddressIpAddress.java | 8 +-
.../bacnetip/readwrite/BACnetHostAddressName.java | 8 +-
.../bacnetip/readwrite/BACnetHostAddressNull.java | 8 +-
.../readwrite/BACnetLandingCallStatusCommand.java | 10 +-
.../BACnetLandingCallStatusCommandDestination.java | 11 +-
.../BACnetLandingCallStatusCommandDirection.java | 12 +-
.../java/bacnetip/readwrite/BACnetLogData.java | 9 +-
.../bacnetip/readwrite/BACnetLogDataLogData.java | 10 +-
.../readwrite/BACnetLogDataLogDataEntry.java | 36 +-
.../BACnetLogDataLogDataEntryAnyValue.java | 10 +-
.../BACnetLogDataLogDataEntryBitStringValue.java | 8 +-
.../BACnetLogDataLogDataEntryBooleanValue.java | 8 +-
.../BACnetLogDataLogDataEntryEnumeratedValue.java | 8 +-
.../BACnetLogDataLogDataEntryFailure.java | 10 +-
.../BACnetLogDataLogDataEntryIntegerValue.java | 8 +-
.../BACnetLogDataLogDataEntryNullValue.java | 10 +-
.../BACnetLogDataLogDataEntryRealValue.java | 10 +-
.../BACnetLogDataLogDataEntryUnsignedValue.java | 8 +-
.../readwrite/BACnetLogDataLogDataTimeChange.java | 9 +-
.../bacnetip/readwrite/BACnetLogDataLogStatus.java | 9 +-
.../readwrite/BACnetLogRecordLogDatum.java | 46 +-
.../readwrite/BACnetLogRecordLogDatumAnyValue.java | 9 +-
.../BACnetLogRecordLogDatumBitStringValue.java | 8 +-
.../BACnetLogRecordLogDatumBooleanValue.java | 8 +-
.../BACnetLogRecordLogDatumEnumeratedValue.java | 8 +-
.../readwrite/BACnetLogRecordLogDatumFailure.java | 8 +-
.../BACnetLogRecordLogDatumIntegerValue.java | 8 +-
.../BACnetLogRecordLogDatumLogStatus.java | 8 +-
.../BACnetLogRecordLogDatumNullValue.java | 8 +-
.../BACnetLogRecordLogDatumRealValue.java | 8 +-
.../BACnetLogRecordLogDatumTimeChange.java | 8 +-
.../BACnetLogRecordLogDatumUnsignedValue.java | 8 +-
.../readwrite/BACnetNotificationParameters.java | 72 +-
.../BACnetNotificationParametersAccessEvent.java | 8 +-
.../BACnetNotificationParametersBufferReady.java | 8 +-
...netNotificationParametersChangeOfBitString.java | 8 +-
...ificationParametersChangeOfCharacterString.java | 8 +-
...otificationParametersChangeOfDiscreteValue.java | 8 +-
...ionParametersChangeOfDiscreteValueNewValue.java | 48 +-
...metersChangeOfDiscreteValueNewValueBoolean.java | 11 +-
...angeOfDiscreteValueNewValueCharacterString.java | 11 +-
...etersChangeOfDiscreteValueNewValueDatetime.java | 11 +-
...ersChangeOfDiscreteValueNewValueEnumerated.java | 11 +-
...metersChangeOfDiscreteValueNewValueInteger.java | 11 +-
...ngeOfDiscreteValueNewValueObjectidentifier.java | 11 +-
...tersChangeOfDiscreteValueNewValueOctetDate.java | 11 +-
...rsChangeOfDiscreteValueNewValueOctetString.java | 12 +-
...tersChangeOfDiscreteValueNewValueOctetTime.java | 11 +-
...etersChangeOfDiscreteValueNewValueUnsigned.java | 11 +-
...etNotificationParametersChangeOfLifeSafety.java | 8 +-
...tNotificationParametersChangeOfReliability.java | 8 +-
.../BACnetNotificationParametersChangeOfState.java | 8 +-
...tNotificationParametersChangeOfStatusFlags.java | 8 +-
.../BACnetNotificationParametersChangeOfTimer.java | 8 +-
.../BACnetNotificationParametersChangeOfValue.java | 8 +-
...otificationParametersChangeOfValueNewValue.java | 12 +-
...ParametersChangeOfValueNewValueChangedBits.java | 12 +-
...arametersChangeOfValueNewValueChangedValue.java | 12 +-
...BACnetNotificationParametersCommandFailure.java | 8 +-
...CnetNotificationParametersComplexEventType.java | 8 +-
...CnetNotificationParametersDoubleOutOfRange.java | 8 +-
.../BACnetNotificationParametersExtended.java | 8 +-
.../BACnetNotificationParametersFloatingLimit.java | 8 +-
.../BACnetNotificationParametersOutOfRange.java | 8 +-
...CnetNotificationParametersSignedOutOfRange.java | 8 +-
...etNotificationParametersUnsignedOutOfRange.java | 8 +-
.../BACnetNotificationParametersUnsignedRange.java | 8 +-
.../bacnetip/readwrite/BACnetOptionalBinaryPV.java | 6 +-
.../readwrite/BACnetOptionalBinaryPVNull.java | 10 +-
.../readwrite/BACnetOptionalBinaryPVValue.java | 10 +-
.../readwrite/BACnetOptionalCharacterString.java | 10 +-
.../BACnetOptionalCharacterStringNull.java | 10 +-
.../BACnetOptionalCharacterStringValue.java | 10 +-
.../bacnetip/readwrite/BACnetOptionalREAL.java | 6 +-
.../bacnetip/readwrite/BACnetOptionalREALNull.java | 10 +-
.../readwrite/BACnetOptionalREALValue.java | 10 +-
.../bacnetip/readwrite/BACnetOptionalUnsigned.java | 6 +-
.../readwrite/BACnetOptionalUnsignedNull.java | 10 +-
.../readwrite/BACnetOptionalUnsignedValue.java | 11 +-
.../bacnetip/readwrite/BACnetPriorityValue.java | 59 +-
.../readwrite/BACnetPriorityValueBitString.java | 8 +-
.../readwrite/BACnetPriorityValueBoolean.java | 8 +-
.../BACnetPriorityValueCharacterString.java | 9 +-
.../BACnetPriorityValueConstructedValue.java | 8 +-
.../readwrite/BACnetPriorityValueDate.java | 8 +-
.../readwrite/BACnetPriorityValueDateTime.java | 8 +-
.../readwrite/BACnetPriorityValueDouble.java | 8 +-
.../readwrite/BACnetPriorityValueEnumerated.java | 8 +-
.../readwrite/BACnetPriorityValueInteger.java | 8 +-
.../readwrite/BACnetPriorityValueNull.java | 8 +-
.../BACnetPriorityValueObjectidentifier.java | 8 +-
.../readwrite/BACnetPriorityValueOctetString.java | 8 +-
.../readwrite/BACnetPriorityValueReal.java | 8 +-
.../readwrite/BACnetPriorityValueTime.java | 8 +-
.../readwrite/BACnetPriorityValueUnsigned.java | 8 +-
.../readwrite/BACnetProcessIdSelection.java | 7 +-
.../readwrite/BACnetProcessIdSelectionNull.java | 10 +-
.../readwrite/BACnetProcessIdSelectionValue.java | 10 +-
.../BACnetPropertyAccessResultAccessResult.java | 24 +-
...ccessResultAccessResultPropertyAccessError.java | 19 +-
...pertyAccessResultAccessResultPropertyValue.java | 19 +-
.../BACnetPropertyStateActionUnknown.java | 8 +-
.../bacnetip/readwrite/BACnetPropertyStates.java | 218 ++-
...ACnetPropertyStatesAccessCredentialDisable.java | 8 +-
...ropertyStatesAccessCredentialDisableReason.java | 8 +-
.../readwrite/BACnetPropertyStatesAccessEvent.java | 8 +-
.../readwrite/BACnetPropertyStatesAction.java | 8 +-
.../BACnetPropertyStatesAuthenticationStatus.java | 8 +-
.../readwrite/BACnetPropertyStatesBackupState.java | 8 +-
.../BACnetPropertyStatesBacnetIpMode.java | 8 +-
.../BACnetPropertyStatesBinaryLightningValue.java | 8 +-
.../readwrite/BACnetPropertyStatesBinaryValue.java | 8 +-
.../readwrite/BACnetPropertyStatesBoolean.java | 8 +-
.../BACnetPropertyStatesDoorAlarmState.java | 9 +-
.../BACnetPropertyStatesDoorSecuredStatus.java | 8 +-
.../readwrite/BACnetPropertyStatesDoorStatus.java | 8 +-
.../readwrite/BACnetPropertyStatesDoorValue.java | 8 +-
.../BACnetPropertyStatesEscalatorFault.java | 9 +-
.../BACnetPropertyStatesEscalatorMode.java | 8 +-
...tPropertyStatesEscalatorOperationDirection.java | 9 +-
.../readwrite/BACnetPropertyStatesEventType.java | 8 +-
.../BACnetPropertyStatesExtendedValue.java | 9 +-
.../BACnetPropertyStatesFileAccessMethod.java | 8 +-
.../BACnetPropertyStatesIntegerValue.java | 8 +-
.../BACnetPropertyStatesLifeSafetyMode.java | 9 +-
.../BACnetPropertyStatesLifeSafetyOperations.java | 8 +-
.../BACnetPropertyStatesLifeSafetyState.java | 9 +-
.../BACnetPropertyStatesLiftCarDirection.java | 8 +-
.../BACnetPropertyStatesLiftCarDoorCommand.java | 8 +-
.../BACnetPropertyStatesLiftCarDriveStatus.java | 8 +-
.../readwrite/BACnetPropertyStatesLiftCarMode.java | 8 +-
.../readwrite/BACnetPropertyStatesLiftFault.java | 8 +-
.../BACnetPropertyStatesLiftGroupMode.java | 8 +-
.../BACnetPropertyStatesLightningInProgress.java | 8 +-
.../BACnetPropertyStatesLightningOperation.java | 8 +-
.../BACnetPropertyStatesLightningTransition.java | 8 +-
.../readwrite/BACnetPropertyStatesLockStatus.java | 8 +-
.../readwrite/BACnetPropertyStatesMaintenance.java | 8 +-
.../BACnetPropertyStatesNetworkNumberQuality.java | 8 +-
.../BACnetPropertyStatesNetworkPortCommand.java | 8 +-
.../readwrite/BACnetPropertyStatesNetworkType.java | 8 +-
.../readwrite/BACnetPropertyStatesNodeType.java | 8 +-
.../readwrite/BACnetPropertyStatesNotifyType.java | 8 +-
.../readwrite/BACnetPropertyStatesPolarity.java | 8 +-
.../BACnetPropertyStatesProgramChange.java | 8 +-
.../BACnetPropertyStatesProtocolLevel.java | 8 +-
.../BACnetPropertyStatesReasonForHalt.java | 8 +-
.../readwrite/BACnetPropertyStatesReliability.java | 8 +-
.../BACnetPropertyStatesRestartReason.java | 8 +-
.../BACnetPropertyStatesSecurityLevel.java | 8 +-
.../readwrite/BACnetPropertyStatesShedState.java | 8 +-
.../BACnetPropertyStatesSilencedState.java | 8 +-
.../readwrite/BACnetPropertyStatesState.java | 8 +-
.../BACnetPropertyStatesSystemStatus.java | 8 +-
.../readwrite/BACnetPropertyStatesTimerState.java | 8 +-
.../BACnetPropertyStatesTimerTransition.java | 9 +-
.../readwrite/BACnetPropertyStatesUnits.java | 8 +-
.../readwrite/BACnetPropertyStatesWriteStatus.java | 8 +-
.../BACnetPropertyStatesZoneOccupanyState.java | 8 +-
.../java/bacnetip/readwrite/BACnetRecipient.java | 6 +-
.../bacnetip/readwrite/BACnetRecipientAddress.java | 8 +-
.../bacnetip/readwrite/BACnetRecipientDevice.java | 8 +-
.../plc4x/java/bacnetip/readwrite/BACnetScale.java | 6 +-
.../bacnetip/readwrite/BACnetScaleFloatScale.java | 8 +-
.../readwrite/BACnetScaleIntegerScale.java | 8 +-
.../java/bacnetip/readwrite/BACnetServiceAck.java | 49 +-
.../readwrite/BACnetServiceAckAtomicReadFile.java | 8 +-
.../BACnetServiceAckAtomicReadFileRecord.java | 11 +-
.../BACnetServiceAckAtomicReadFileStream.java | 11 +-
...CnetServiceAckAtomicReadFileStreamOrRecord.java | 10 +-
.../readwrite/BACnetServiceAckAtomicWriteFile.java | 8 +-
.../readwrite/BACnetServiceAckAuthenticate.java | 8 +-
.../BACnetServiceAckConfirmedPrivateTransfer.java | 8 +-
.../readwrite/BACnetServiceAckCreateObject.java | 8 +-
.../readwrite/BACnetServiceAckGetAlarmSummary.java | 8 +-
.../BACnetServiceAckGetEnrollmentSummary.java | 8 +-
.../BACnetServiceAckGetEventInformation.java | 8 +-
.../readwrite/BACnetServiceAckReadProperty.java | 8 +-
.../BACnetServiceAckReadPropertyConditional.java | 8 +-
.../BACnetServiceAckReadPropertyMultiple.java | 8 +-
.../readwrite/BACnetServiceAckReadRange.java | 8 +-
.../readwrite/BACnetServiceAckRequestKey.java | 8 +-
.../bacnetip/readwrite/BACnetServiceAckVTData.java | 8 +-
.../bacnetip/readwrite/BACnetServiceAckVTOpen.java | 8 +-
.../java/bacnetip/readwrite/BACnetShedLevel.java | 8 +-
.../bacnetip/readwrite/BACnetShedLevelAmount.java | 8 +-
.../bacnetip/readwrite/BACnetShedLevelLevel.java | 8 +-
.../bacnetip/readwrite/BACnetShedLevelPercent.java | 8 +-
.../readwrite/BACnetSpecialEventPeriod.java | 10 +-
.../BACnetSpecialEventPeriodCalendarEntry.java | 9 +-
.../BACnetSpecialEventPeriodCalendarReference.java | 8 +-
.../java/bacnetip/readwrite/BACnetTimeStamp.java | 8 +-
.../readwrite/BACnetTimeStampDateTime.java | 8 +-
.../readwrite/BACnetTimeStampSequence.java | 8 +-
.../bacnetip/readwrite/BACnetTimeStampTime.java | 9 +-
.../readwrite/BACnetTimerStateChangeValue.java | 53 +-
.../BACnetTimerStateChangeValueBitString.java | 8 +-
.../BACnetTimerStateChangeValueBoolean.java | 8 +-
...BACnetTimerStateChangeValueCharacterString.java | 8 +-
...ACnetTimerStateChangeValueConstructedValue.java | 8 +-
.../readwrite/BACnetTimerStateChangeValueDate.java | 8 +-
.../BACnetTimerStateChangeValueDateTime.java | 8 +-
.../BACnetTimerStateChangeValueDouble.java | 8 +-
.../BACnetTimerStateChangeValueEnumerated.java | 9 +-
.../BACnetTimerStateChangeValueInteger.java | 8 +-
...BACnetTimerStateChangeValueLightingCommand.java | 8 +-
.../BACnetTimerStateChangeValueNoValue.java | 8 +-
.../readwrite/BACnetTimerStateChangeValueNull.java | 8 +-
...ACnetTimerStateChangeValueObjectidentifier.java | 8 +-
.../BACnetTimerStateChangeValueOctetString.java | 9 +-
.../readwrite/BACnetTimerStateChangeValueReal.java | 8 +-
.../readwrite/BACnetTimerStateChangeValueTime.java | 8 +-
.../BACnetTimerStateChangeValueUnsigned.java | 8 +-
.../readwrite/BACnetUnconfirmedServiceRequest.java | 47 +-
.../BACnetUnconfirmedServiceRequestIAm.java | 11 +-
.../BACnetUnconfirmedServiceRequestIHave.java | 11 +-
...confirmedServiceRequestTimeSynchronization.java | 11 +-
...firmedServiceRequestUTCTimeSynchronization.java | 11 +-
...edServiceRequestUnconfirmedCOVNotification.java | 11 +-
...eRequestUnconfirmedCOVNotificationMultiple.java | 12 +-
...ServiceRequestUnconfirmedEventNotification.java | 12 +-
...edServiceRequestUnconfirmedPrivateTransfer.java | 11 +-
...firmedServiceRequestUnconfirmedTextMessage.java | 11 +-
.../BACnetUnconfirmedServiceRequestUnknown.java | 12 +-
.../BACnetUnconfirmedServiceRequestWhoHas.java | 11 +-
...ACnetUnconfirmedServiceRequestWhoHasObject.java | 9 +-
...firmedServiceRequestWhoHasObjectIdentifier.java | 11 +-
...tUnconfirmedServiceRequestWhoHasObjectName.java | 11 +-
.../BACnetUnconfirmedServiceRequestWhoIs.java | 11 +-
.../BACnetUnconfirmedServiceRequestWriteGroup.java | 11 +-
.../java/bacnetip/readwrite/BACnetValueSource.java | 8 +-
.../readwrite/BACnetValueSourceAddress.java | 8 +-
.../bacnetip/readwrite/BACnetValueSourceNone.java | 8 +-
.../readwrite/BACnetValueSourceObject.java | 8 +-
.../apache/plc4x/java/bacnetip/readwrite/BVLC.java | 30 +-
.../BVLCDeleteForeignDeviceTableEntry.java | 9 +-
.../BVLCDistributeBroadcastToNetwork.java | 10 +-
.../java/bacnetip/readwrite/BVLCForwardedNPDU.java | 10 +-
.../readwrite/BVLCOriginalBroadcastNPDU.java | 10 +-
.../readwrite/BVLCOriginalUnicastNPDU.java | 10 +-
.../BVLCReadBroadcastDistributionTable.java | 9 +-
.../BVLCReadBroadcastDistributionTableAck.java | 10 +-
.../readwrite/BVLCReadForeignDeviceTable.java | 9 +-
.../readwrite/BVLCReadForeignDeviceTableAck.java | 10 +-
.../readwrite/BVLCRegisterForeignDevice.java | 9 +-
.../plc4x/java/bacnetip/readwrite/BVLCResult.java | 8 +-
.../java/bacnetip/readwrite/BVLCSecureBVLL.java | 10 +-
.../BVLCWriteBroadcastDistributionTable.java | 10 +-
.../bacnetip/readwrite/ChangeListAddError.java | 8 +-
.../bacnetip/readwrite/ChangeListRemoveError.java | 8 +-
.../readwrite/ConfirmedPrivateTransferError.java | 8 +-
.../java/bacnetip/readwrite/CreateObjectError.java | 8 +-
.../apache/plc4x/java/bacnetip/readwrite/NLM.java | 46 +-
.../bacnetip/readwrite/NLMChallengeRequest.java | 10 +-
.../NLMDisconnectConnectionToNetwork.java | 10 +-
.../readwrite/NLMEstablishConnectionToNetwork.java | 10 +-
.../bacnetip/readwrite/NLMIAmRouterToNetwork.java | 10 +-
.../readwrite/NLMICouldBeRouterToNetwork.java | 10 +-
.../readwrite/NLMInitalizeRoutingTable.java | 10 +-
.../readwrite/NLMInitalizeRoutingTableAck.java | 10 +-
.../bacnetip/readwrite/NLMNetworkNumberIs.java | 10 +-
.../readwrite/NLMRejectRouterToNetwork.java | 11 +-
.../bacnetip/readwrite/NLMRequestKeyUpdate.java | 10 +-
.../bacnetip/readwrite/NLMRequestMasterKey.java | 10 +-
.../plc4x/java/bacnetip/readwrite/NLMReserved.java | 8 +-
.../readwrite/NLMRouterAvailableToNetwork.java | 10 +-
.../bacnetip/readwrite/NLMRouterBusyToNetwork.java | 10 +-
.../bacnetip/readwrite/NLMSecurityPayload.java | 10 +-
.../bacnetip/readwrite/NLMSecurityResponse.java | 10 +-
.../java/bacnetip/readwrite/NLMSetMasterKey.java | 8 +-
.../readwrite/NLMUpdateKeyDistributionKey.java | 10 +-
.../bacnetip/readwrite/NLMUpdateKeyUpdate.java | 10 +-
.../readwrite/NLMVendorProprietaryMessage.java | 10 +-
.../bacnetip/readwrite/NLMWhatIsNetworkNumber.java | 10 +-
.../readwrite/NLMWhoIsRouterToNetwork.java | 11 +-
.../SubscribeCOVPropertyMultipleError.java | 8 +-
.../java/bacnetip/readwrite/VTCloseError.java | 8 +-
.../readwrite/WritePropertyMultipleError.java | 9 +-
.../java/cbus/readwrite/AccessControlData.java | 21 +-
.../AccessControlDataAccessPointClosed.java | 8 +-
.../AccessControlDataAccessPointForcedOpen.java | 10 +-
.../AccessControlDataAccessPointLeftOpen.java | 10 +-
.../AccessControlDataCloseAccessPoint.java | 8 +-
.../AccessControlDataInvalidAccessRequest.java | 8 +-
.../AccessControlDataLockAccessPoint.java | 8 +-
.../readwrite/AccessControlDataRequestToExit.java | 8 +-
.../AccessControlDataValidAccessRequest.java | 8 +-
.../java/cbus/readwrite/AirConditioningData.java | 64 +-
.../AirConditioningDataHumidityScheduleEntry.java | 8 +-
.../AirConditioningDataHvacScheduleEntry.java | 8 +-
.../cbus/readwrite/AirConditioningDataRefresh.java | 10 +-
...ConditioningDataSetHumidityLowerGuardLimit.java | 8 +-
...AirConditioningDataSetHumiditySetbackLimit.java | 8 +-
...ConditioningDataSetHumidityUpperGuardLimit.java | 8 +-
.../AirConditioningDataSetHvacLowerGuardLimit.java | 8 +-
.../AirConditioningDataSetHvacSetbackLimit.java | 8 +-
.../AirConditioningDataSetHvacUpperGuardLimit.java | 8 +-
.../AirConditioningDataSetPlantHumidityLevel.java | 8 +-
.../AirConditioningDataSetPlantHvacLevel.java | 8 +-
.../AirConditioningDataSetZoneGroupOff.java | 10 +-
.../AirConditioningDataSetZoneGroupOn.java | 10 +-
.../AirConditioningDataSetZoneHumidityMode.java | 8 +-
.../AirConditioningDataSetZoneHvacMode.java | 10 +-
.../readwrite/AirConditioningDataZoneHumidity.java | 11 +-
...AirConditioningDataZoneHumidityPlantStatus.java | 8 +-
.../AirConditioningDataZoneHvacPlantStatus.java | 8 +-
.../AirConditioningDataZoneTemperature.java | 10 +-
.../apache/plc4x/java/cbus/readwrite/CALData.java | 26 +-
.../java/cbus/readwrite/CALDataAcknowledge.java | 9 +-
.../java/cbus/readwrite/CALDataGetStatus.java | 9 +-
.../plc4x/java/cbus/readwrite/CALDataIdentify.java | 8 +-
.../java/cbus/readwrite/CALDataIdentifyReply.java | 8 +-
.../plc4x/java/cbus/readwrite/CALDataRecall.java | 8 +-
.../plc4x/java/cbus/readwrite/CALDataReply.java | 8 +-
.../plc4x/java/cbus/readwrite/CALDataReset.java | 8 +-
.../plc4x/java/cbus/readwrite/CALDataStatus.java | 8 +-
.../java/cbus/readwrite/CALDataStatusExtended.java | 8 +-
.../plc4x/java/cbus/readwrite/CALDataWrite.java | 8 +-
.../apache/plc4x/java/cbus/readwrite/CALReply.java | 6 +-
.../plc4x/java/cbus/readwrite/CALReplyLong.java | 8 +-
.../plc4x/java/cbus/readwrite/CALReplyShort.java | 8 +-
.../plc4x/java/cbus/readwrite/CBusCommand.java | 12 +-
.../readwrite/CBusCommandDeviceManagement.java | 9 +-
.../readwrite/CBusCommandPointToMultiPoint.java | 8 +-
.../cbus/readwrite/CBusCommandPointToPoint.java | 8 +-
.../CBusCommandPointToPointToMultiPoint.java | 8 +-
.../plc4x/java/cbus/readwrite/CBusMessage.java | 6 +-
.../java/cbus/readwrite/CBusMessageToClient.java | 8 +-
.../java/cbus/readwrite/CBusMessageToServer.java | 8 +-
.../readwrite/CBusPointToMultiPointCommand.java | 10 +-
.../CBusPointToMultiPointCommandNormal.java | 8 +-
.../CBusPointToMultiPointCommandStatus.java | 8 +-
.../cbus/readwrite/CBusPointToPointCommand.java | 10 +-
.../readwrite/CBusPointToPointCommandDirect.java | 8 +-
.../readwrite/CBusPointToPointCommandIndirect.java | 8 +-
.../CBusPointToPointToMultiPointCommand.java | 8 +-
.../CBusPointToPointToMultiPointCommandNormal.java | 12 +-
.../CBusPointToPointToMultiPointCommandStatus.java | 11 +-
.../cbus/readwrite/ClockAndTimekeepingData.java | 12 +-
.../ClockAndTimekeepingDataRequestRefresh.java | 8 +-
.../ClockAndTimekeepingDataUpdateDate.java | 11 +-
.../ClockAndTimekeepingDataUpdateTime.java | 10 +-
.../plc4x/java/cbus/readwrite/EncodedReply.java | 9 +-
.../java/cbus/readwrite/EncodedReplyCALReply.java | 8 +-
.../java/cbus/readwrite/ErrorReportingData.java | 4 +-
.../cbus/readwrite/ErrorReportingDataGeneric.java | 10 +-
.../ErrorReportingSystemCategoryType.java | 32 +-
...ystemCategoryTypeBuildingManagementSystems.java | 15 +-
...ortingSystemCategoryTypeClimateControllers.java | 14 +-
...ErrorReportingSystemCategoryTypeInputUnits.java | 14 +-
...rrorReportingSystemCategoryTypeOutputUnits.java | 14 +-
.../ErrorReportingSystemCategoryTypeReserved.java | 14 +-
...rorReportingSystemCategoryTypeSupportUnits.java | 14 +-
.../java/cbus/readwrite/IdentifyReplyCommand.java | 56 +-
.../IdentifyReplyCommandCurrentSenseLevels.java | 8 +-
.../readwrite/IdentifyReplyCommandDSIStatus.java | 8 +-
.../cbus/readwrite/IdentifyReplyCommandDelays.java | 8 +-
...ntifyReplyCommandExtendedDiagnosticSummary.java | 8 +-
.../IdentifyReplyCommandFirmwareVersion.java | 8 +-
.../IdentifyReplyCommandGAVPhysicalAddresses.java | 8 +-
.../IdentifyReplyCommandGAVValuesCurrent.java | 8 +-
.../IdentifyReplyCommandGAVValuesStored.java | 8 +-
.../IdentifyReplyCommandLogicalAssignment.java | 8 +-
.../IdentifyReplyCommandManufacturer.java | 8 +-
.../IdentifyReplyCommandMaximumLevels.java | 8 +-
.../IdentifyReplyCommandMinimumLevels.java | 8 +-
.../IdentifyReplyCommandNetworkTerminalLevels.java | 9 +-
.../IdentifyReplyCommandNetworkVoltage.java | 8 +-
.../IdentifyReplyCommandOutputUnitSummary.java | 8 +-
.../readwrite/IdentifyReplyCommandSummary.java | 8 +-
.../IdentifyReplyCommandTerminalLevels.java | 8 +-
.../cbus/readwrite/IdentifyReplyCommandType.java | 8 +-
.../java/cbus/readwrite/LevelInformation.java | 8 +-
.../cbus/readwrite/LevelInformationAbsent.java | 8 +-
.../cbus/readwrite/LevelInformationCorrupted.java | 8 +-
.../cbus/readwrite/LevelInformationNormal.java | 8 +-
.../plc4x/java/cbus/readwrite/LightingData.java | 12 +-
.../java/cbus/readwrite/LightingDataLabel.java | 8 +-
.../plc4x/java/cbus/readwrite/LightingDataOff.java | 8 +-
.../plc4x/java/cbus/readwrite/LightingDataOn.java | 8 +-
.../cbus/readwrite/LightingDataRampToLevel.java | 9 +-
.../cbus/readwrite/LightingDataTerminateRamp.java | 9 +-
.../plc4x/java/cbus/readwrite/MeasurementData.java | 4 +-
.../MeasurementDataChannelMeasurementData.java | 10 +-
.../cbus/readwrite/MediaTransportControlData.java | 77 +-
.../MediaTransportControlDataCategoryName.java | 8 +-
...trolDataEnumerateCategoriesSelectionTracks.java | 10 +-
.../MediaTransportControlDataEnumerationsSize.java | 8 +-
.../MediaTransportControlDataFastForward.java | 8 +-
...iaTransportControlDataNextPreviousCategory.java | 8 +-
...aTransportControlDataNextPreviousSelection.java | 8 +-
...MediaTransportControlDataNextPreviousTrack.java | 8 +-
.../MediaTransportControlDataPauseResume.java | 8 +-
.../readwrite/MediaTransportControlDataPlay.java | 10 +-
.../MediaTransportControlDataRepeatOnOff.java | 8 +-
.../readwrite/MediaTransportControlDataRewind.java | 10 +-
.../MediaTransportControlDataSelectionName.java | 8 +-
.../MediaTransportControlDataSetCategory.java | 8 +-
.../MediaTransportControlDataSetSelection.java | 8 +-
.../MediaTransportControlDataSetTrack.java | 11 +-
.../MediaTransportControlDataShuffleOnOff.java | 8 +-
...ediaTransportControlDataSourcePowerControl.java | 8 +-
.../MediaTransportControlDataStatusRequest.java | 8 +-
.../readwrite/MediaTransportControlDataStop.java | 10 +-
.../MediaTransportControlDataTotalTracks.java | 8 +-
.../MediaTransportControlDataTrackName.java | 8 +-
.../plc4x/java/cbus/readwrite/MeteringData.java | 22 +-
.../MeteringDataDrinkingWaterConsumption.java | 10 +-
.../MeteringDataElectricityConsumption.java | 8 +-
.../cbus/readwrite/MeteringDataGasConsumption.java | 8 +-
.../MeteringDataMeasureDrinkingWater.java | 8 +-
.../readwrite/MeteringDataMeasureElectricity.java | 8 +-
.../cbus/readwrite/MeteringDataMeasureGas.java | 9 +-
.../cbus/readwrite/MeteringDataMeasureOil.java | 9 +-
.../readwrite/MeteringDataMeasureOtherWater.java | 8 +-
.../cbus/readwrite/MeteringDataOilConsumption.java | 8 +-
.../MeteringDataOtherWaterConsumption.java | 8 +-
.../plc4x/java/cbus/readwrite/MonitoredSAL.java | 8 +-
.../readwrite/MonitoredSALLongFormSmartMode.java | 8 +-
.../java/cbus/readwrite/MonitoredSALReply.java | 8 +-
.../readwrite/MonitoredSALShortFormBasicMode.java | 8 +-
.../java/cbus/readwrite/ParameterChangeReply.java | 8 +-
.../plc4x/java/cbus/readwrite/ParameterValue.java | 36 +-
.../ParameterValueApplicationAddress1.java | 8 +-
.../ParameterValueApplicationAddress2.java | 8 +-
.../readwrite/ParameterValueBaudRateSelector.java | 8 +-
.../ParameterValueCustomManufacturer.java | 8 +-
.../cbus/readwrite/ParameterValueCustomTypes.java | 8 +-
.../readwrite/ParameterValueInterfaceOptions1.java | 8 +-
...meterValueInterfaceOptions1PowerUpSettings.java | 8 +-
.../readwrite/ParameterValueInterfaceOptions2.java | 8 +-
.../readwrite/ParameterValueInterfaceOptions3.java | 8 +-
.../java/cbus/readwrite/ParameterValueRaw.java | 8 +-
.../cbus/readwrite/ParameterValueSerialNumber.java | 8 +-
.../plc4x/java/cbus/readwrite/PowerUpReply.java | 8 +-
.../apache/plc4x/java/cbus/readwrite/Reply.java | 9 +-
.../java/cbus/readwrite/ReplyEncodedReply.java | 8 +-
.../java/cbus/readwrite/ReplyOrConfirmation.java | 11 +-
.../readwrite/ReplyOrConfirmationConfirmation.java | 8 +-
.../cbus/readwrite/ReplyOrConfirmationReply.java | 8 +-
.../apache/plc4x/java/cbus/readwrite/Request.java | 16 +-
.../plc4x/java/cbus/readwrite/RequestCommand.java | 8 +-
.../cbus/readwrite/RequestDirectCommandAccess.java | 8 +-
.../plc4x/java/cbus/readwrite/RequestEmpty.java | 8 +-
.../plc4x/java/cbus/readwrite/RequestNull.java | 8 +-
.../plc4x/java/cbus/readwrite/RequestObsolete.java | 8 +-
.../plc4x/java/cbus/readwrite/RequestReset.java | 8 +-
.../readwrite/RequestSmartConnectShortcut.java | 8 +-
.../apache/plc4x/java/cbus/readwrite/SALData.java | 51 +-
.../java/cbus/readwrite/SALDataAccessControl.java | 8 +-
.../cbus/readwrite/SALDataAirConditioning.java | 8 +-
.../java/cbus/readwrite/SALDataAudioAndVideo.java | 8 +-
.../cbus/readwrite/SALDataClockAndTimekeeping.java | 8 +-
.../java/cbus/readwrite/SALDataEnableControl.java | 8 +-
.../java/cbus/readwrite/SALDataErrorReporting.java | 8 +-
.../java/cbus/readwrite/SALDataFreeUsage.java | 8 +-
.../plc4x/java/cbus/readwrite/SALDataHeating.java | 8 +-
.../java/cbus/readwrite/SALDataHvacActuator.java | 8 +-
.../cbus/readwrite/SALDataIrrigationControl.java | 8 +-
.../plc4x/java/cbus/readwrite/SALDataLighting.java | 8 +-
.../java/cbus/readwrite/SALDataMeasurement.java | 8 +-
.../java/cbus/readwrite/SALDataMediaTransport.java | 8 +-
.../plc4x/java/cbus/readwrite/SALDataMetering.java | 8 +-
.../SALDataPoolsSpasPondsFountainsControl.java | 9 +-
.../plc4x/java/cbus/readwrite/SALDataReserved.java | 8 +-
.../cbus/readwrite/SALDataRoomControlSystem.java | 8 +-
.../plc4x/java/cbus/readwrite/SALDataSecurity.java | 8 +-
.../SALDataTelephonyStatusAndControl.java | 9 +-
.../readwrite/SALDataTemperatureBroadcast.java | 9 +-
.../plc4x/java/cbus/readwrite/SALDataTesting.java | 8 +-
.../java/cbus/readwrite/SALDataTriggerControl.java | 8 +-
.../java/cbus/readwrite/SALDataVentilation.java | 8 +-
.../plc4x/java/cbus/readwrite/SecurityData.java | 100 +-
.../java/cbus/readwrite/SecurityDataAlarmOff.java | 8 +-
.../java/cbus/readwrite/SecurityDataAlarmOn.java | 8 +-
.../readwrite/SecurityDataArmFailedCleared.java | 8 +-
.../readwrite/SecurityDataArmFailedRaised.java | 8 +-
.../readwrite/SecurityDataArmReadyNotReady.java | 8 +-
.../java/cbus/readwrite/SecurityDataArmSystem.java | 8 +-
.../readwrite/SecurityDataCurrentAlarmType.java | 8 +-
.../cbus/readwrite/SecurityDataDisplayMessage.java | 8 +-
.../cbus/readwrite/SecurityDataDropTamper.java | 9 +-
.../cbus/readwrite/SecurityDataEmulatedKeypad.java | 8 +-
.../readwrite/SecurityDataEntryDelayStarted.java | 8 +-
.../java/cbus/readwrite/SecurityDataEvent.java | 8 +-
.../readwrite/SecurityDataExitDelayStarted.java | 8 +-
.../readwrite/SecurityDataFireAlarmCleared.java | 8 +-
.../readwrite/SecurityDataFireAlarmRaised.java | 8 +-
.../readwrite/SecurityDataGasAlarmCleared.java | 8 +-
.../cbus/readwrite/SecurityDataGasAlarmRaised.java | 8 +-
.../readwrite/SecurityDataLineCutAlarmCleared.java | 8 +-
.../readwrite/SecurityDataLineCutAlarmRaised.java | 8 +-
.../readwrite/SecurityDataLowBatteryCharging.java | 8 +-
.../readwrite/SecurityDataLowBatteryCorrected.java | 8 +-
.../readwrite/SecurityDataLowBatteryDetected.java | 8 +-
.../cbus/readwrite/SecurityDataMainsFailure.java | 9 +-
.../SecurityDataMainsRestoredOrApplied.java | 8 +-
.../plc4x/java/cbus/readwrite/SecurityDataOff.java | 8 +-
.../plc4x/java/cbus/readwrite/SecurityDataOn.java | 8 +-
.../readwrite/SecurityDataOtherAlarmCleared.java | 8 +-
.../readwrite/SecurityDataOtherAlarmRaised.java | 8 +-
.../cbus/readwrite/SecurityDataPanicActivated.java | 8 +-
.../cbus/readwrite/SecurityDataPanicCleared.java | 9 +-
.../readwrite/SecurityDataPasswordEntryStatus.java | 8 +-
.../cbus/readwrite/SecurityDataRaiseAlarm.java | 9 +-
.../cbus/readwrite/SecurityDataRaiseTamper.java | 9 +-
.../readwrite/SecurityDataRequestZoneName.java | 8 +-
.../cbus/readwrite/SecurityDataStatus1Request.java | 8 +-
.../cbus/readwrite/SecurityDataStatus2Request.java | 8 +-
.../cbus/readwrite/SecurityDataStatusReport1.java | 10 +-
.../cbus/readwrite/SecurityDataStatusReport2.java | 9 +-
.../readwrite/SecurityDataSystemArmedDisarmed.java | 8 +-
.../cbus/readwrite/SecurityDataSystemDisarmed.java | 8 +-
.../java/cbus/readwrite/SecurityDataTamperOff.java | 8 +-
.../java/cbus/readwrite/SecurityDataTamperOn.java | 8 +-
.../cbus/readwrite/SecurityDataZoneIsolated.java | 9 +-
.../java/cbus/readwrite/SecurityDataZoneName.java | 8 +-
.../java/cbus/readwrite/SecurityDataZoneOpen.java | 8 +-
.../cbus/readwrite/SecurityDataZoneSealed.java | 9 +-
.../java/cbus/readwrite/SecurityDataZoneShort.java | 8 +-
.../cbus/readwrite/SecurityDataZoneUnsealed.java | 9 +-
.../java/cbus/readwrite/ServerErrorReply.java | 8 +-
.../plc4x/java/cbus/readwrite/StatusRequest.java | 8 +-
.../cbus/readwrite/StatusRequestBinaryState.java | 8 +-
.../StatusRequestBinaryStateDeprecated.java | 8 +-
.../java/cbus/readwrite/StatusRequestLevel.java | 8 +-
.../plc4x/java/cbus/readwrite/TelephonyData.java | 33 +-
.../readwrite/TelephonyDataClearDiversion.java | 8 +-
.../cbus/readwrite/TelephonyDataDialInFailure.java | 8 +-
.../readwrite/TelephonyDataDialOutFailure.java | 8 +-
.../java/cbus/readwrite/TelephonyDataDivert.java | 8 +-
...TelephonyDataInternetConnectionRequestMade.java | 10 +-
.../TelephonyDataIsolateSecondaryOutlet.java | 8 +-
.../cbus/readwrite/TelephonyDataLineOffHook.java | 8 +-
.../cbus/readwrite/TelephonyDataLineOnHook.java | 9 +-
.../readwrite/TelephonyDataRecallLastNumber.java | 8 +-
.../TelephonyDataRecallLastNumberRequest.java | 10 +-
.../readwrite/TelephonyDataRejectIncomingCall.java | 8 +-
.../java/cbus/readwrite/TelephonyDataRinging.java | 9 +-
.../java/cbus/readwrite/TriggerControlData.java | 14 +-
.../readwrite/TriggerControlDataIndicatorKill.java | 10 +-
.../cbus/readwrite/TriggerControlDataLabel.java | 8 +-
.../readwrite/TriggerControlDataTriggerEvent.java | 10 +-
.../readwrite/TriggerControlDataTriggerMax.java | 10 +-
.../readwrite/TriggerControlDataTriggerMin.java | 10 +-
.../canopen/readwrite/CANOpenHeartbeatPayload.java | 8 +-
.../canopen/readwrite/CANOpenNetworkPayload.java | 10 +-
.../java/canopen/readwrite/CANOpenPDOPayload.java | 8 +-
.../java/canopen/readwrite/CANOpenPayload.java | 28 +-
.../java/canopen/readwrite/CANOpenSDORequest.java | 8 +-
.../java/canopen/readwrite/CANOpenSDOResponse.java | 9 +-
.../readwrite/CANOpenTimeSynchronization.java | 8 +-
.../java/canopen/readwrite/SDOAbortRequest.java | 8 +-
.../java/canopen/readwrite/SDOAbortResponse.java | 8 +-
.../java/canopen/readwrite/SDOBlockRequest.java | 8 +-
.../java/canopen/readwrite/SDOBlockResponse.java | 8 +-
.../readwrite/SDOInitiateDownloadRequest.java | 9 +-
.../readwrite/SDOInitiateDownloadResponse.java | 9 +-
.../SDOInitiateExpeditedUploadResponse.java | 13 +-
.../SDOInitiateSegmentedReservedResponse.java | 13 +-
.../SDOInitiateSegmentedUploadResponse.java | 13 +-
.../readwrite/SDOInitiateUploadRequest.java | 8 +-
.../readwrite/SDOInitiateUploadResponse.java | 9 +-
.../SDOInitiateUploadResponsePayload.java | 8 +-
.../plc4x/java/canopen/readwrite/SDORequest.java | 14 +-
.../plc4x/java/canopen/readwrite/SDOResponse.java | 14 +-
.../readwrite/SDOSegmentDownloadRequest.java | 8 +-
.../readwrite/SDOSegmentDownloadResponse.java | 9 +-
.../canopen/readwrite/SDOSegmentUploadRequest.java | 8 +-
.../readwrite/SDOSegmentUploadResponse.java | 9 +-
.../java/firmata/readwrite/FirmataCommand.java | 14 +-
.../readwrite/FirmataCommandProtocolVersion.java | 8 +-
.../FirmataCommandSetDigitalPinValue.java | 8 +-
.../readwrite/FirmataCommandSetPinMode.java | 8 +-
.../firmata/readwrite/FirmataCommandSysex.java | 9 +-
.../readwrite/FirmataCommandSystemReset.java | 8 +-
.../java/firmata/readwrite/FirmataMessage.java | 16 +-
.../firmata/readwrite/FirmataMessageAnalogIO.java | 8 +-
.../firmata/readwrite/FirmataMessageCommand.java | 9 +-
.../firmata/readwrite/FirmataMessageDigitalIO.java | 8 +-
.../FirmataMessageSubscribeAnalogPinValue.java | 9 +-
.../FirmataMessageSubscribeDigitalPinValue.java | 9 +-
.../plc4x/java/firmata/readwrite/SysexCommand.java | 39 +-
.../SysexCommandAnalogMappingQueryRequest.java | 8 +-
.../SysexCommandAnalogMappingQueryResponse.java | 8 +-
.../SysexCommandAnalogMappingResponse.java | 8 +-
.../readwrite/SysexCommandCapabilityQuery.java | 8 +-
.../readwrite/SysexCommandCapabilityResponse.java | 8 +-
.../readwrite/SysexCommandExtendedAnalog.java | 8 +-
.../firmata/readwrite/SysexCommandExtendedId.java | 9 +-
.../readwrite/SysexCommandPinStateQuery.java | 9 +-
.../readwrite/SysexCommandPinStateResponse.java | 8 +-
.../SysexCommandReportFirmwareRequest.java | 8 +-
.../SysexCommandReportFirmwareResponse.java | 8 +-
.../readwrite/SysexCommandSamplingInterval.java | 8 +-
.../firmata/readwrite/SysexCommandStringData.java | 9 +-
.../readwrite/SysexCommandSysexNonRealtime.java | 8 +-
.../readwrite/SysexCommandSysexRealtime.java | 9 +-
.../apache/plc4x/java/knxnetip/readwrite/Apdu.java | 6 +-
.../plc4x/java/knxnetip/readwrite/ApduControl.java | 10 +-
.../java/knxnetip/readwrite/ApduControlAck.java | 8 +-
.../knxnetip/readwrite/ApduControlConnect.java | 8 +-
.../knxnetip/readwrite/ApduControlContainer.java | 10 +-
.../knxnetip/readwrite/ApduControlDisconnect.java | 8 +-
.../java/knxnetip/readwrite/ApduControlNack.java | 8 +-
.../plc4x/java/knxnetip/readwrite/ApduData.java | 35 +-
.../java/knxnetip/readwrite/ApduDataAdcRead.java | 8 +-
.../knxnetip/readwrite/ApduDataAdcResponse.java | 10 +-
.../java/knxnetip/readwrite/ApduDataContainer.java | 8 +-
.../readwrite/ApduDataDeviceDescriptorRead.java | 10 +-
.../ApduDataDeviceDescriptorResponse.java | 11 +-
.../plc4x/java/knxnetip/readwrite/ApduDataExt.java | 111 +-
.../readwrite/ApduDataExtAuthorizeRequest.java | 9 +-
.../readwrite/ApduDataExtAuthorizeResponse.java | 8 +-
.../readwrite/ApduDataExtDomainAddressRead.java | 8 +-
.../ApduDataExtDomainAddressResponse.java | 8 +-
.../ApduDataExtDomainAddressSelectiveRead.java | 8 +-
.../ApduDataExtDomainAddressSerialNumberRead.java | 8 +-
...duDataExtDomainAddressSerialNumberResponse.java | 8 +-
.../ApduDataExtDomainAddressSerialNumberWrite.java | 8 +-
.../readwrite/ApduDataExtDomainAddressWrite.java | 8 +-
.../readwrite/ApduDataExtFileStreamInfoReport.java | 8 +-
.../ApduDataExtGroupPropertyValueInfoReport.java | 8 +-
.../ApduDataExtGroupPropertyValueRead.java | 8 +-
.../ApduDataExtGroupPropertyValueResponse.java | 8 +-
.../ApduDataExtGroupPropertyValueWrite.java | 8 +-
...duDataExtIndividualAddressSerialNumberRead.java | 8 +-
...taExtIndividualAddressSerialNumberResponse.java | 8 +-
...uDataExtIndividualAddressSerialNumberWrite.java | 8 +-
.../knxnetip/readwrite/ApduDataExtKeyResponse.java | 8 +-
.../knxnetip/readwrite/ApduDataExtKeyWrite.java | 10 +-
.../knxnetip/readwrite/ApduDataExtLinkRead.java | 10 +-
.../readwrite/ApduDataExtLinkResponse.java | 8 +-
.../knxnetip/readwrite/ApduDataExtLinkWrite.java | 10 +-
.../readwrite/ApduDataExtMemoryBitWrite.java | 9 +-
.../readwrite/ApduDataExtNetworkParameterRead.java | 8 +-
.../ApduDataExtNetworkParameterResponse.java | 8 +-
.../ApduDataExtNetworkParameterWrite.java | 8 +-
.../ApduDataExtOpenRoutingTableRequest.java | 8 +-
.../ApduDataExtPropertyDescriptionRead.java | 9 +-
.../ApduDataExtPropertyDescriptionResponse.java | 8 +-
.../readwrite/ApduDataExtPropertyValueRead.java | 9 +-
.../ApduDataExtPropertyValueResponse.java | 8 +-
.../readwrite/ApduDataExtPropertyValueWrite.java | 8 +-
.../ApduDataExtReadRouterMemoryRequest.java | 8 +-
.../ApduDataExtReadRouterMemoryResponse.java | 8 +-
.../ApduDataExtReadRouterStatusRequest.java | 8 +-
.../ApduDataExtReadRouterStatusResponse.java | 8 +-
.../ApduDataExtReadRoutingTableRequest.java | 8 +-
.../ApduDataExtReadRoutingTableResponse.java | 8 +-
.../ApduDataExtWriteRouterMemoryRequest.java | 8 +-
.../ApduDataExtWriteRouterStatusRequest.java | 8 +-
.../ApduDataExtWriteRoutingTableRequest.java | 8 +-
.../knxnetip/readwrite/ApduDataGroupValueRead.java | 10 +-
.../readwrite/ApduDataGroupValueResponse.java | 11 +-
.../readwrite/ApduDataGroupValueWrite.java | 10 +-
.../readwrite/ApduDataIndividualAddressRead.java | 10 +-
.../ApduDataIndividualAddressResponse.java | 11 +-
.../readwrite/ApduDataIndividualAddressWrite.java | 11 +-
.../knxnetip/readwrite/ApduDataMemoryRead.java | 10 +-
.../knxnetip/readwrite/ApduDataMemoryResponse.java | 10 +-
.../knxnetip/readwrite/ApduDataMemoryWrite.java | 10 +-
.../java/knxnetip/readwrite/ApduDataOther.java | 8 +-
.../java/knxnetip/readwrite/ApduDataRestart.java | 8 +-
.../knxnetip/readwrite/ApduDataUserMessage.java | 10 +-
.../apache/plc4x/java/knxnetip/readwrite/CEMI.java | 48 +-
.../readwrite/CEMIAdditionalInformation.java | 10 +-
.../CEMIAdditionalInformationBusmonitorInfo.java | 8 +-
...CEMIAdditionalInformationRelativeTimestamp.java | 9 +-
.../java/knxnetip/readwrite/ComObjectTable.java | 11 +-
.../readwrite/ComObjectTableRealisationType1.java | 8 +-
.../readwrite/ComObjectTableRealisationType2.java | 8 +-
.../readwrite/ComObjectTableRealisationType6.java | 8 +-
.../java/knxnetip/readwrite/ConnectionRequest.java | 9 +-
.../readwrite/ConnectionRequestInformation.java | 10 +-
...nnectionRequestInformationDeviceManagement.java | 8 +-
...nnectionRequestInformationTunnelConnection.java | 8 +-
.../knxnetip/readwrite/ConnectionResponse.java | 9 +-
.../readwrite/ConnectionResponseDataBlock.java | 10 +-
...onnectionResponseDataBlockDeviceManagement.java | 8 +-
...onnectionResponseDataBlockTunnelConnection.java | 8 +-
.../knxnetip/readwrite/ConnectionStateRequest.java | 8 +-
.../readwrite/ConnectionStateResponse.java | 8 +-
.../knxnetip/readwrite/DescriptionRequest.java | 9 +-
.../knxnetip/readwrite/DescriptionResponse.java | 9 +-
.../knxnetip/readwrite/DeviceConfigurationAck.java | 8 +-
.../readwrite/DeviceConfigurationRequest.java | 8 +-
.../java/knxnetip/readwrite/DisconnectRequest.java | 9 +-
.../knxnetip/readwrite/DisconnectResponse.java | 9 +-
.../java/knxnetip/readwrite/KnxGroupAddress.java | 8 +-
.../knxnetip/readwrite/KnxGroupAddress2Level.java | 8 +-
.../knxnetip/readwrite/KnxGroupAddress3Level.java | 8 +-
.../readwrite/KnxGroupAddressFreeLevel.java | 8 +-
.../java/knxnetip/readwrite/KnxNetIpCore.java | 8 +-
.../readwrite/KnxNetIpDeviceManagement.java | 8 +-
.../java/knxnetip/readwrite/KnxNetIpMessage.java | 35 +-
.../java/knxnetip/readwrite/KnxNetIpRouting.java | 8 +-
.../java/knxnetip/readwrite/KnxNetIpTunneling.java | 8 +-
.../knxnetip/readwrite/KnxNetObjectServer.java | 8 +-
.../KnxNetRemoteConfigurationAndDiagnosis.java | 10 +-
.../knxnetip/readwrite/KnxNetRemoteLogging.java | 8 +-
.../plc4x/java/knxnetip/readwrite/LBusmonInd.java | 8 +-
.../plc4x/java/knxnetip/readwrite/LDataCon.java | 9 +-
.../java/knxnetip/readwrite/LDataExtended.java | 8 +-
.../plc4x/java/knxnetip/readwrite/LDataFrame.java | 8 +-
.../java/knxnetip/readwrite/LDataFrameACK.java | 8 +-
.../plc4x/java/knxnetip/readwrite/LDataInd.java | 9 +-
.../plc4x/java/knxnetip/readwrite/LDataReq.java | 9 +-
.../plc4x/java/knxnetip/readwrite/LPollData.java | 9 +-
.../java/knxnetip/readwrite/LPollDataCon.java | 8 +-
.../java/knxnetip/readwrite/LPollDataReq.java | 8 +-
.../plc4x/java/knxnetip/readwrite/LRawCon.java | 8 +-
.../plc4x/java/knxnetip/readwrite/LRawInd.java | 8 +-
.../plc4x/java/knxnetip/readwrite/LRawReq.java | 8 +-
.../knxnetip/readwrite/MFuncPropCommandReq.java | 8 +-
.../java/knxnetip/readwrite/MFuncPropCon.java | 8 +-
.../knxnetip/readwrite/MFuncPropStateReadReq.java | 8 +-
.../java/knxnetip/readwrite/MPropInfoInd.java | 8 +-
.../java/knxnetip/readwrite/MPropReadCon.java | 8 +-
.../java/knxnetip/readwrite/MPropReadReq.java | 8 +-
.../java/knxnetip/readwrite/MPropWriteCon.java | 8 +-
.../java/knxnetip/readwrite/MPropWriteReq.java | 8 +-
.../plc4x/java/knxnetip/readwrite/MResetInd.java | 8 +-
.../plc4x/java/knxnetip/readwrite/MResetReq.java | 8 +-
.../java/knxnetip/readwrite/RoutingIndication.java | 9 +-
.../java/knxnetip/readwrite/SearchRequest.java | 8 +-
.../java/knxnetip/readwrite/SearchResponse.java | 8 +-
.../plc4x/java/knxnetip/readwrite/ServiceId.java | 16 +-
.../java/knxnetip/readwrite/TDataConnectedInd.java | 8 +-
.../java/knxnetip/readwrite/TDataConnectedReq.java | 8 +-
.../knxnetip/readwrite/TDataIndividualInd.java | 8 +-
.../knxnetip/readwrite/TDataIndividualReq.java | 8 +-
.../java/knxnetip/readwrite/TunnelingRequest.java | 9 +-
.../java/knxnetip/readwrite/TunnelingResponse.java | 9 +-
.../java/knxnetip/readwrite/UnknownMessage.java | 10 +-
.../plc4x/java/modbus/readwrite/ModbusADU.java | 8 +-
.../java/modbus/readwrite/ModbusAsciiADU.java | 8 +-
.../plc4x/java/modbus/readwrite/ModbusPDU.java | 104 +-
.../readwrite/ModbusPDUDiagnosticRequest.java | 8 +-
.../readwrite/ModbusPDUDiagnosticResponse.java | 8 +-
.../java/modbus/readwrite/ModbusPDUError.java | 10 +-
.../ModbusPDUGetComEventCounterRequest.java | 8 +-
.../ModbusPDUGetComEventCounterResponse.java | 8 +-
.../readwrite/ModbusPDUGetComEventLogRequest.java | 9 +-
.../readwrite/ModbusPDUGetComEventLogResponse.java | 9 +-
.../ModbusPDUMaskWriteHoldingRegisterRequest.java | 9 +-
.../ModbusPDUMaskWriteHoldingRegisterResponse.java | 9 +-
.../readwrite/ModbusPDUReadCoilsRequest.java | 8 +-
.../readwrite/ModbusPDUReadCoilsResponse.java | 8 +-
.../ModbusPDUReadDeviceIdentificationRequest.java | 8 +-
.../ModbusPDUReadDeviceIdentificationResponse.java | 8 +-
.../ModbusPDUReadDiscreteInputsRequest.java | 8 +-
.../ModbusPDUReadDiscreteInputsResponse.java | 8 +-
.../ModbusPDUReadExceptionStatusRequest.java | 8 +-
.../ModbusPDUReadExceptionStatusResponse.java | 8 +-
.../readwrite/ModbusPDUReadFifoQueueRequest.java | 9 +-
.../readwrite/ModbusPDUReadFifoQueueResponse.java | 9 +-
.../readwrite/ModbusPDUReadFileRecordRequest.java | 10 +-
.../readwrite/ModbusPDUReadFileRecordResponse.java | 10 +-
.../ModbusPDUReadHoldingRegistersRequest.java | 8 +-
.../ModbusPDUReadHoldingRegistersResponse.java | 8 +-
.../ModbusPDUReadInputRegistersRequest.java | 8 +-
.../ModbusPDUReadInputRegistersResponse.java | 8 +-
...DUReadWriteMultipleHoldingRegistersRequest.java | 8 +-
...UReadWriteMultipleHoldingRegistersResponse.java | 8 +-
.../readwrite/ModbusPDUReportServerIdRequest.java | 9 +-
.../readwrite/ModbusPDUReportServerIdResponse.java | 9 +-
.../readwrite/ModbusPDUWriteFileRecordRequest.java | 10 +-
.../ModbusPDUWriteFileRecordResponse.java | 8 +-
.../ModbusPDUWriteMultipleCoilsRequest.java | 8 +-
.../ModbusPDUWriteMultipleCoilsResponse.java | 8 +-
...busPDUWriteMultipleHoldingRegistersRequest.java | 8 +-
...usPDUWriteMultipleHoldingRegistersResponse.java | 8 +-
.../readwrite/ModbusPDUWriteSingleCoilRequest.java | 9 +-
.../ModbusPDUWriteSingleCoilResponse.java | 8 +-
.../ModbusPDUWriteSingleRegisterRequest.java | 8 +-
.../ModbusPDUWriteSingleRegisterResponse.java | 8 +-
.../plc4x/java/modbus/readwrite/ModbusRtuADU.java | 8 +-
.../plc4x/java/modbus/readwrite/ModbusTcpADU.java | 8 +-
.../opcua/readwrite/ActivateSessionRequest.java | 8 +-
.../opcua/readwrite/ActivateSessionResponse.java | 8 +-
.../plc4x/java/opcua/readwrite/AddNodesItem.java | 10 +-
.../java/opcua/readwrite/AddNodesRequest.java | 10 +-
.../java/opcua/readwrite/AddNodesResponse.java | 10 +-
.../plc4x/java/opcua/readwrite/AddNodesResult.java | 10 +-
.../java/opcua/readwrite/AddReferencesItem.java | 8 +-
.../java/opcua/readwrite/AddReferencesRequest.java | 8 +-
.../opcua/readwrite/AddReferencesResponse.java | 8 +-
.../opcua/readwrite/AdditionalParametersType.java | 8 +-
.../opcua/readwrite/AggregateConfiguration.java | 8 +-
.../java/opcua/readwrite/AliasNameDataType.java | 8 +-
.../plc4x/java/opcua/readwrite/Annotation.java | 10 +-
.../opcua/readwrite/AnonymousIdentityToken.java | 8 +-
.../opcua/readwrite/ApplicationDescription.java | 8 +-
.../plc4x/java/opcua/readwrite/Argument.java | 10 +-
.../java/opcua/readwrite/AxisInformation.java | 10 +-
.../java/opcua/readwrite/BrowseDescription.java | 8 +-
.../java/opcua/readwrite/BrowseNextRequest.java | 8 +-
.../java/opcua/readwrite/BrowseNextResponse.java | 8 +-
.../plc4x/java/opcua/readwrite/BrowsePath.java | 10 +-
.../java/opcua/readwrite/BrowsePathResult.java | 10 +-
.../java/opcua/readwrite/BrowsePathTarget.java | 10 +-
.../plc4x/java/opcua/readwrite/BrowseRequest.java | 10 +-
.../plc4x/java/opcua/readwrite/BrowseResponse.java | 10 +-
.../plc4x/java/opcua/readwrite/BrowseResult.java | 10 +-
.../plc4x/java/opcua/readwrite/BuildInfo.java | 10 +-
.../java/opcua/readwrite/CallMethodRequest.java | 8 +-
.../java/opcua/readwrite/CallMethodResult.java | 10 +-
.../plc4x/java/opcua/readwrite/CallRequest.java | 10 +-
.../plc4x/java/opcua/readwrite/CallResponse.java | 10 +-
.../plc4x/java/opcua/readwrite/CancelRequest.java | 10 +-
.../plc4x/java/opcua/readwrite/CancelResponse.java | 10 +-
.../java/opcua/readwrite/CartesianCoordinates.java | 8 +-
.../java/opcua/readwrite/ChannelSecurityToken.java | 8 +-
.../opcua/readwrite/CloseSecureChannelRequest.java | 8 +-
.../readwrite/CloseSecureChannelResponse.java | 8 +-
.../java/opcua/readwrite/CloseSessionRequest.java | 8 +-
.../java/opcua/readwrite/CloseSessionResponse.java | 8 +-
.../java/opcua/readwrite/ComplexNumberType.java | 8 +-
.../readwrite/ConfigurationVersionDataType.java | 8 +-
.../readwrite/ConnectionTransportDataType.java | 8 +-
.../plc4x/java/opcua/readwrite/ContentFilter.java | 10 +-
.../java/opcua/readwrite/ContentFilterElement.java | 8 +-
.../readwrite/ContentFilterElementResult.java | 8 +-
.../java/opcua/readwrite/ContentFilterResult.java | 8 +-
.../readwrite/CreateMonitoredItemsRequest.java | 8 +-
.../readwrite/CreateMonitoredItemsResponse.java | 8 +-
.../java/opcua/readwrite/CreateSessionRequest.java | 8 +-
.../opcua/readwrite/CreateSessionResponse.java | 8 +-
.../opcua/readwrite/CreateSubscriptionRequest.java | 8 +-
.../readwrite/CreateSubscriptionResponse.java | 8 +-
.../java/opcua/readwrite/CurrencyUnitType.java | 10 +-
.../opcua/readwrite/DataChangeNotification.java | 8 +-
.../readwrite/DataSetReaderMessageDataType.java | 8 +-
.../readwrite/DataSetReaderTransportDataType.java | 8 +-
.../opcua/readwrite/DataSetWriterDataType.java | 8 +-
.../readwrite/DataSetWriterMessageDataType.java | 8 +-
.../readwrite/DataSetWriterTransportDataType.java | 8 +-
.../java/opcua/readwrite/DataTypeDefinition.java | 8 +-
.../java/opcua/readwrite/DataTypeDescription.java | 8 +-
.../java/opcua/readwrite/DataTypeSchemaHeader.java | 8 +-
.../java/opcua/readwrite/DecimalDataType.java | 10 +-
.../readwrite/DeleteMonitoredItemsRequest.java | 8 +-
.../readwrite/DeleteMonitoredItemsResponse.java | 8 +-
.../java/opcua/readwrite/DeleteNodesItem.java | 10 +-
.../java/opcua/readwrite/DeleteNodesRequest.java | 8 +-
.../java/opcua/readwrite/DeleteNodesResponse.java | 8 +-
.../java/opcua/readwrite/DeleteReferencesItem.java | 8 +-
.../opcua/readwrite/DeleteReferencesRequest.java | 8 +-
.../opcua/readwrite/DeleteReferencesResponse.java | 8 +-
.../readwrite/DeleteSubscriptionsRequest.java | 8 +-
.../readwrite/DeleteSubscriptionsResponse.java | 8 +-
.../opcua/readwrite/DiscoveryConfiguration.java | 8 +-
.../opcua/readwrite/DoubleComplexNumberType.java | 8 +-
.../plc4x/java/opcua/readwrite/EUInformation.java | 10 +-
.../opcua/readwrite/EndpointConfiguration.java | 8 +-
.../java/opcua/readwrite/EndpointDescription.java | 8 +-
.../plc4x/java/opcua/readwrite/EndpointType.java | 10 +-
.../opcua/readwrite/EndpointUrlListDataType.java | 8 +-
.../plc4x/java/opcua/readwrite/EnumValueType.java | 11 +-
.../java/opcua/readwrite/EphemeralKeyType.java | 10 +-
.../plc4x/java/opcua/readwrite/EventFieldList.java | 10 +-
.../opcua/readwrite/EventNotificationList.java | 9 +-
.../opcua/readwrite/ExtensionObjectDefinition.java | 687 ++++---
.../plc4x/java/opcua/readwrite/FieldMetaData.java | 10 +-
.../java/opcua/readwrite/FieldTargetDataType.java | 8 +-
.../plc4x/java/opcua/readwrite/FilterOperand.java | 10 +-
.../readwrite/FindServersOnNetworkRequest.java | 8 +-
.../readwrite/FindServersOnNetworkResponse.java | 8 +-
.../java/opcua/readwrite/FindServersRequest.java | 8 +-
.../java/opcua/readwrite/FindServersResponse.java | 8 +-
.../apache/plc4x/java/opcua/readwrite/Frame.java | 10 +-
.../opcua/readwrite/GenericAttributeValue.java | 8 +-
.../java/opcua/readwrite/GetEndpointsRequest.java | 8 +-
.../java/opcua/readwrite/GetEndpointsResponse.java | 8 +-
.../plc4x/java/opcua/readwrite/HistoryData.java | 10 +-
.../plc4x/java/opcua/readwrite/HistoryEvent.java | 10 +-
.../opcua/readwrite/HistoryEventFieldList.java | 8 +-
.../java/opcua/readwrite/HistoryReadDetails.java | 8 +-
.../java/opcua/readwrite/HistoryReadRequest.java | 8 +-
.../java/opcua/readwrite/HistoryReadResponse.java | 8 +-
.../java/opcua/readwrite/HistoryReadResult.java | 8 +-
.../java/opcua/readwrite/HistoryReadValueId.java | 8 +-
.../java/opcua/readwrite/HistoryUpdateDetails.java | 8 +-
.../java/opcua/readwrite/HistoryUpdateRequest.java | 8 +-
.../opcua/readwrite/HistoryUpdateResponse.java | 8 +-
.../java/opcua/readwrite/HistoryUpdateResult.java | 8 +-
.../opcua/readwrite/IdentityMappingRuleType.java | 8 +-
.../java/opcua/readwrite/IssuedIdentityToken.java | 8 +-
.../plc4x/java/opcua/readwrite/KeyValuePair.java | 10 +-
.../plc4x/java/opcua/readwrite/MessagePDU.java | 16 +-
.../readwrite/ModelChangeStructureDataType.java | 9 +-
.../java/opcua/readwrite/ModificationInfo.java | 10 +-
.../readwrite/ModifyMonitoredItemsRequest.java | 8 +-
.../readwrite/ModifyMonitoredItemsResponse.java | 8 +-
.../opcua/readwrite/ModifySubscriptionRequest.java | 8 +-
.../readwrite/ModifySubscriptionResponse.java | 8 +-
.../readwrite/MonitoredItemCreateRequest.java | 8 +-
.../opcua/readwrite/MonitoredItemCreateResult.java | 8 +-
.../readwrite/MonitoredItemModifyRequest.java | 8 +-
.../opcua/readwrite/MonitoredItemModifyResult.java | 8 +-
.../opcua/readwrite/MonitoredItemNotification.java | 8 +-
.../java/opcua/readwrite/MonitoringFilter.java | 10 +-
.../opcua/readwrite/MonitoringFilterResult.java | 8 +-
.../java/opcua/readwrite/MonitoringParameters.java | 8 +-
.../opcua/readwrite/NetworkAddressDataType.java | 8 +-
.../java/opcua/readwrite/NetworkGroupDataType.java | 8 +-
.../apache/plc4x/java/opcua/readwrite/Node.java | 10 +-
.../plc4x/java/opcua/readwrite/NodeAttributes.java | 10 +-
.../java/opcua/readwrite/NodeIdByteString.java | 10 +-
.../plc4x/java/opcua/readwrite/NodeIdFourByte.java | 10 +-
.../plc4x/java/opcua/readwrite/NodeIdGuid.java | 9 +-
.../plc4x/java/opcua/readwrite/NodeIdNumeric.java | 10 +-
.../plc4x/java/opcua/readwrite/NodeIdString.java | 10 +-
.../plc4x/java/opcua/readwrite/NodeIdTwoByte.java | 10 +-
.../java/opcua/readwrite/NodeIdTypeDefinition.java | 14 +-
.../plc4x/java/opcua/readwrite/NodeReference.java | 10 +-
.../java/opcua/readwrite/NodeTypeDescription.java | 8 +-
.../java/opcua/readwrite/NotificationData.java | 10 +-
.../java/opcua/readwrite/NotificationMessage.java | 8 +-
.../plc4x/java/opcua/readwrite/NullExtension.java | 10 +-
.../opcua/readwrite/OpcuaAcknowledgeResponse.java | 8 +-
.../java/opcua/readwrite/OpcuaCloseRequest.java | 10 +-
.../java/opcua/readwrite/OpcuaHelloRequest.java | 10 +-
.../java/opcua/readwrite/OpcuaMessageRequest.java | 8 +-
.../java/opcua/readwrite/OpcuaMessageResponse.java | 8 +-
.../java/opcua/readwrite/OpcuaOpenRequest.java | 10 +-
.../java/opcua/readwrite/OpcuaOpenResponse.java | 10 +-
.../plc4x/java/opcua/readwrite/OpcuaVector.java | 10 +-
.../opcua/readwrite/OpenSecureChannelRequest.java | 8 +-
.../opcua/readwrite/OpenSecureChannelResponse.java | 8 +-
.../plc4x/java/opcua/readwrite/OptionSet.java | 10 +-
.../plc4x/java/opcua/readwrite/Orientation.java | 10 +-
.../plc4x/java/opcua/readwrite/ParsingResult.java | 10 +-
.../readwrite/ProgramDiagnostic2DataType.java | 8 +-
.../opcua/readwrite/ProgramDiagnosticDataType.java | 8 +-
.../readwrite/PubSubConfigurationDataType.java | 8 +-
.../opcua/readwrite/PubSubConnectionDataType.java | 8 +-
.../java/opcua/readwrite/PubSubGroupDataType.java | 8 +-
.../plc4x/java/opcua/readwrite/PublishRequest.java | 10 +-
.../java/opcua/readwrite/PublishResponse.java | 10 +-
.../readwrite/PublishedDataSetSourceDataType.java | 8 +-
.../opcua/readwrite/PublishedVariableDataType.java | 8 +-
.../java/opcua/readwrite/QueryDataDescription.java | 8 +-
.../plc4x/java/opcua/readwrite/QueryDataSet.java | 10 +-
.../java/opcua/readwrite/QueryFirstRequest.java | 8 +-
.../java/opcua/readwrite/QueryFirstResponse.java | 8 +-
.../java/opcua/readwrite/QueryNextRequest.java | 10 +-
.../java/opcua/readwrite/QueryNextResponse.java | 8 +-
.../apache/plc4x/java/opcua/readwrite/Range.java | 10 +-
.../plc4x/java/opcua/readwrite/RationalNumber.java | 10 +-
.../plc4x/java/opcua/readwrite/ReadRequest.java | 10 +-
.../plc4x/java/opcua/readwrite/ReadResponse.java | 10 +-
.../plc4x/java/opcua/readwrite/ReadValueId.java | 10 +-
.../readwrite/ReaderGroupMessageDataType.java | 8 +-
.../readwrite/ReaderGroupTransportDataType.java | 8 +-
.../opcua/readwrite/RedundantServerDataType.java | 8 +-
.../java/opcua/readwrite/ReferenceDescription.java | 8 +-
.../plc4x/java/opcua/readwrite/ReferenceNode.java | 10 +-
.../java/opcua/readwrite/RegisterNodesRequest.java | 8 +-
.../opcua/readwrite/RegisterNodesResponse.java | 8 +-
.../opcua/readwrite/RegisterServer2Request.java | 8 +-
.../opcua/readwrite/RegisterServer2Response.java | 8 +-
.../opcua/readwrite/RegisterServerRequest.java | 8 +-
.../opcua/readwrite/RegisterServerResponse.java | 8 +-
.../java/opcua/readwrite/RegisteredServer.java | 10 +-
.../plc4x/java/opcua/readwrite/RelativePath.java | 10 +-
.../java/opcua/readwrite/RelativePathElement.java | 8 +-
.../java/opcua/readwrite/RepublishRequest.java | 10 +-
.../java/opcua/readwrite/RepublishResponse.java | 8 +-
.../plc4x/java/opcua/readwrite/RequestHeader.java | 10 +-
.../plc4x/java/opcua/readwrite/ResponseHeader.java | 10 +-
.../java/opcua/readwrite/RolePermissionType.java | 8 +-
.../SamplingIntervalDiagnosticsDataType.java | 8 +-
.../readwrite/SemanticChangeStructureDataType.java | 8 +-
.../ServerDiagnosticsSummaryDataType.java | 8 +-
.../java/opcua/readwrite/ServerOnNetwork.java | 10 +-
.../java/opcua/readwrite/ServerStatusDataType.java | 8 +-
.../opcua/readwrite/ServiceCounterDataType.java | 8 +-
.../plc4x/java/opcua/readwrite/ServiceFault.java | 10 +-
.../readwrite/SessionDiagnosticsDataType.java | 8 +-
.../SessionSecurityDiagnosticsDataType.java | 8 +-
.../readwrite/SessionlessInvokeRequestType.java | 8 +-
.../readwrite/SessionlessInvokeResponseType.java | 8 +-
.../opcua/readwrite/SetMonitoringModeRequest.java | 8 +-
.../opcua/readwrite/SetMonitoringModeResponse.java | 8 +-
.../opcua/readwrite/SetPublishingModeRequest.java | 8 +-
.../opcua/readwrite/SetPublishingModeResponse.java | 8 +-
.../java/opcua/readwrite/SetTriggeringRequest.java | 8 +-
.../opcua/readwrite/SetTriggeringResponse.java | 8 +-
.../plc4x/java/opcua/readwrite/SignatureData.java | 10 +-
.../opcua/readwrite/SignedSoftwareCertificate.java | 8 +-
.../opcua/readwrite/StatusChangeNotification.java | 8 +-
.../plc4x/java/opcua/readwrite/StatusResult.java | 10 +-
.../plc4x/java/opcua/readwrite/StructureField.java | 10 +-
.../opcua/readwrite/SubscribedDataSetDataType.java | 8 +-
.../readwrite/SubscriptionAcknowledgement.java | 8 +-
.../readwrite/SubscriptionDiagnosticsDataType.java | 8 +-
.../java/opcua/readwrite/TimeZoneDataType.java | 10 +-
.../plc4x/java/opcua/readwrite/TransferResult.java | 10 +-
.../readwrite/TransferSubscriptionsRequest.java | 8 +-
.../readwrite/TransferSubscriptionsResponse.java | 8 +-
.../TranslateBrowsePathsToNodeIdsRequest.java | 8 +-
.../TranslateBrowsePathsToNodeIdsResponse.java | 8 +-
.../java/opcua/readwrite/TrustListDataType.java | 8 +-
.../apache/plc4x/java/opcua/readwrite/Union.java | 10 +-
.../opcua/readwrite/UnregisterNodesRequest.java | 8 +-
.../opcua/readwrite/UnregisterNodesResponse.java | 8 +-
.../opcua/readwrite/UnsignedRationalNumber.java | 8 +-
.../java/opcua/readwrite/UserIdentityToken.java | 8 +-
.../readwrite/UserIdentityTokenDefinition.java | 16 +-
.../opcua/readwrite/UserNameIdentityToken.java | 8 +-
.../java/opcua/readwrite/UserTokenPolicy.java | 10 +-
.../apache/plc4x/java/opcua/readwrite/Variant.java | 52 +-
.../plc4x/java/opcua/readwrite/VariantBoolean.java | 8 +-
.../plc4x/java/opcua/readwrite/VariantByte.java | 8 +-
.../java/opcua/readwrite/VariantByteString.java | 8 +-
.../java/opcua/readwrite/VariantDataValue.java | 8 +-
.../java/opcua/readwrite/VariantDateTime.java | 8 +-
.../opcua/readwrite/VariantDiagnosticInfo.java | 8 +-
.../plc4x/java/opcua/readwrite/VariantDouble.java | 8 +-
.../opcua/readwrite/VariantExpandedNodeId.java | 8 +-
.../opcua/readwrite/VariantExtensionObject.java | 8 +-
.../plc4x/java/opcua/readwrite/VariantFloat.java | 8 +-
.../plc4x/java/opcua/readwrite/VariantGuid.java | 8 +-
.../plc4x/java/opcua/readwrite/VariantInt16.java | 8 +-
.../plc4x/java/opcua/readwrite/VariantInt32.java | 8 +-
.../plc4x/java/opcua/readwrite/VariantInt64.java | 8 +-
.../java/opcua/readwrite/VariantLocalizedText.java | 8 +-
.../plc4x/java/opcua/readwrite/VariantNodeId.java | 8 +-
.../java/opcua/readwrite/VariantQualifiedName.java | 8 +-
.../plc4x/java/opcua/readwrite/VariantSByte.java | 8 +-
.../java/opcua/readwrite/VariantStatusCode.java | 8 +-
.../plc4x/java/opcua/readwrite/VariantString.java | 8 +-
.../plc4x/java/opcua/readwrite/VariantUInt16.java | 8 +-
.../plc4x/java/opcua/readwrite/VariantUInt32.java | 8 +-
.../plc4x/java/opcua/readwrite/VariantUInt64.java | 8 +-
.../plc4x/java/opcua/readwrite/VariantVariant.java | 8 +-
.../java/opcua/readwrite/VariantXmlElement.java | 8 +-
.../java/opcua/readwrite/ViewDescription.java | 10 +-
.../plc4x/java/opcua/readwrite/WriteRequest.java | 10 +-
.../plc4x/java/opcua/readwrite/WriteResponse.java | 10 +-
.../plc4x/java/opcua/readwrite/WriteValue.java | 10 +-
.../readwrite/WriterGroupMessageDataType.java | 8 +-
.../readwrite/WriterGroupTransportDataType.java | 8 +-
.../java/opcua/readwrite/X509IdentityToken.java | 8 +-
.../apache/plc4x/java/opcua/readwrite/XVType.java | 10 +-
...licationCommunicationStartAcknowledgeBlock.java | 59 +-
...onCommunicationStartAcknowledgeBlockCellId.java | 11 +-
...ommunicationStartAcknowledgeBlockChannelId.java | 11 +-
...CommunicationStartAcknowledgeBlockClientId.java | 11 +-
...icationStartAcknowledgeBlockControllerName.java | 12 +-
...tartAcknowledgeBlockControllerSerialNumber.java | 11 +-
...tAcknowledgeBlockControllerSoftwareVersion.java | 12 +-
...tartAcknowledgeBlockLinkingHandlingSupport.java | 11 +-
...onStartAcknowledgeBlockOpenProtocolVersion.java | 11 +-
...nCommunicationStartAcknowledgeBlockRbuType.java | 11 +-
...StartAcknowledgeBlockSequenceNumberSupport.java | 11 +-
...ommunicationStartAcknowledgeBlockStationId.java | 11 +-
...municationStartAcknowledgeBlockStationName.java | 11 +-
...unicationStartAcknowledgeBlockSupplierCode.java | 11 +-
...nicationStartAcknowledgeBlockSystemSubtype.java | 12 +-
...mmunicationStartAcknowledgeBlockSystemType.java | 11 +-
...onStartAcknowledgeBlockToolSoftwareVersion.java | 11 +-
.../readwrite/OpenProtocolMessage.java | 20 +-
...nProtocolMessageApplicationCommandAccepted.java | 8 +-
...OpenProtocolMessageApplicationCommandError.java | 8 +-
...otocolMessageApplicationCommunicationStart.java | 8 +-
...geApplicationCommunicationStartAcknowledge.java | 11 +-
...rotocolMessageApplicationCommunicationStop.java | 8 +-
...otocolMessageApplicationGenericDataRequest.java | 8 +-
...tocolMessageApplicationGenericSubscription.java | 8 +-
...otocolMessageApplicationGenericUnsubscribe.java | 8 +-
.../java/plc4x/readwrite/Plc4xConnectRequest.java | 8 +-
.../java/plc4x/readwrite/Plc4xConnectResponse.java | 8 +-
.../plc4x/java/plc4x/readwrite/Plc4xMessage.java | 14 +-
.../java/plc4x/readwrite/Plc4xReadRequest.java | 8 +-
.../java/plc4x/readwrite/Plc4xReadResponse.java | 8 +-
.../java/plc4x/readwrite/Plc4xWriteRequest.java | 8 +-
.../java/plc4x/readwrite/Plc4xWriteResponse.java | 8 +-
.../profinet/readwrite/DceRpc_InterfaceUuid.java | 17 +-
.../DceRpc_InterfaceUuid_ControllerInterface.java | 8 +-
.../DceRpc_InterfaceUuid_DeviceInterface.java | 8 +-
.../DceRpc_InterfaceUuid_ParameterInterface.java | 8 +-
.../DceRpc_InterfaceUuid_SupervisorInterface.java | 8 +-
.../profinet/readwrite/Ethernet_FramePayload.java | 9 +-
.../readwrite/Ethernet_FramePayload_IPv4.java | 10 +-
.../readwrite/Ethernet_FramePayload_PnDcp.java | 10 +-
.../Ethernet_FramePayload_VirtualLan.java | 10 +-
.../profinet/readwrite/PcDcp_Pdu_DelayReq.java | 8 +-
.../plc4x/java/profinet/readwrite/PnDcp_Block.java | 69 +-
.../readwrite/PnDcp_Block_ALLSelector.java | 8 +-
.../PnDcp_Block_ControlOptionFactoryReset.java | 10 +-
.../PnDcp_Block_ControlOptionResetToFactory.java | 10 +-
.../PnDcp_Block_ControlOptionResponse.java | 8 +-
.../readwrite/PnDcp_Block_ControlOptionSignal.java | 8 +-
.../readwrite/PnDcp_Block_ControlOptionStart.java | 8 +-
.../readwrite/PnDcp_Block_ControlOptionStop.java | 8 +-
.../PnDcp_Block_DeviceInitiativeOption.java | 8 +-
.../PnDcp_Block_DevicePropertiesAliasName.java | 8 +-
.../PnDcp_Block_DevicePropertiesDeviceId.java | 10 +-
...PnDcp_Block_DevicePropertiesDeviceInstance.java | 10 +-
.../PnDcp_Block_DevicePropertiesDeviceOptions.java | 8 +-
.../PnDcp_Block_DevicePropertiesDeviceRole.java | 10 +-
.../PnDcp_Block_DevicePropertiesDeviceVendor.java | 8 +-
.../PnDcp_Block_DevicePropertiesNameOfStation.java | 8 +-
.../PnDcp_Block_DevicePropertiesOemDeviceId.java | 10 +-
...nDcp_Block_DevicePropertiesStandardGateway.java | 10 +-
.../PnDcp_Block_DhcpOptionClassIdentifier.java | 10 +-
...PnDcp_Block_DhcpOptionDhcpClientIdentifier.java | 10 +-
...p_Block_DhcpOptionFullyQualifiedDomainName.java | 10 +-
.../readwrite/PnDcp_Block_DhcpOptionHostName.java | 8 +-
...PnDcp_Block_DhcpOptionParameterRequestList.java | 10 +-
.../PnDcp_Block_DhcpOptionServerIdentifier.java | 10 +-
.../PnDcp_Block_DhcpOptionUuidBasedClient.java | 10 +-
..._Block_DhcpOptionVendorSpecificInformation.java | 10 +-
.../readwrite/PnDcp_Block_FullIpSuite.java | 8 +-
.../readwrite/PnDcp_Block_IpMacAddress.java | 9 +-
.../readwrite/PnDcp_Block_IpParameter.java | 8 +-
.../plc4x/java/profinet/readwrite/PnDcp_Pdu.java | 10 +-
.../profinet/readwrite/PnDcp_Pdu_IdentifyReq.java | 8 +-
.../profinet/readwrite/PnDcp_Pdu_IdentifyRes.java | 8 +-
.../readwrite/PnDcp_Pdu_IdentifyRes_Payload.java | 2 +-
.../readwrite/PnDcp_Pdu_RealTimeCyclic.java | 8 +-
.../java/profinet/readwrite/PnIoCm_Block.java | 20 +-
.../readwrite/PnIoCm_Block_AlarmCrReq.java | 9 +-
.../readwrite/PnIoCm_Block_AlarmCrRes.java | 10 +-
.../profinet/readwrite/PnIoCm_Block_ArReq.java | 8 +-
.../profinet/readwrite/PnIoCm_Block_ArRes.java | 8 +-
.../profinet/readwrite/PnIoCm_Block_ArServer.java | 8 +-
.../PnIoCm_Block_ExpectedSubmoduleReq.java | 8 +-
.../profinet/readwrite/PnIoCm_Block_IoCrReq.java | 8 +-
.../profinet/readwrite/PnIoCm_Block_IoCrRes.java | 9 +-
.../readwrite/PnIoCm_Block_ModuleDiff.java | 9 +-
.../java/profinet/readwrite/PnIoCm_Packet.java | 8 +-
.../java/profinet/readwrite/PnIoCm_Packet_Rej.java | 8 +-
.../java/profinet/readwrite/PnIoCm_Packet_Req.java | 8 +-
.../java/profinet/readwrite/PnIoCm_Packet_Res.java | 8 +-
.../java/profinet/readwrite/PnIoCm_Submodule.java | 6 +-
.../PnIoCm_Submodule_InputAndOutputData.java | 8 +-
.../PnIoCm_Submodule_NoInputNoOutputData.java | 10 +-
.../apache/plc4x/java/s7/readwrite/COTPPacket.java | 14 +-
.../s7/readwrite/COTPPacketConnectionRequest.java | 9 +-
.../s7/readwrite/COTPPacketConnectionResponse.java | 9 +-
.../plc4x/java/s7/readwrite/COTPPacketData.java | 10 +-
.../s7/readwrite/COTPPacketDisconnectRequest.java | 9 +-
.../s7/readwrite/COTPPacketDisconnectResponse.java | 10 +-
.../java/s7/readwrite/COTPPacketTpduError.java | 8 +-
.../plc4x/java/s7/readwrite/COTPParameter.java | 14 +-
.../java/s7/readwrite/COTPParameterCalledTsap.java | 11 +-
.../s7/readwrite/COTPParameterCallingTsap.java | 8 +-
.../java/s7/readwrite/COTPParameterChecksum.java | 11 +-
...TPParameterDisconnectAdditionalInformation.java | 8 +-
.../java/s7/readwrite/COTPParameterTpduSize.java | 11 +-
.../apache/plc4x/java/s7/readwrite/S7Address.java | 4 +-
.../plc4x/java/s7/readwrite/S7AddressAny.java | 8 +-
.../java/s7/readwrite/S7DataAlarmMessage.java | 8 +-
.../apache/plc4x/java/s7/readwrite/S7Message.java | 10 +-
.../java/s7/readwrite/S7MessageObjectRequest.java | 8 +-
.../java/s7/readwrite/S7MessageObjectResponse.java | 8 +-
.../plc4x/java/s7/readwrite/S7MessageRequest.java | 8 +-
.../plc4x/java/s7/readwrite/S7MessageResponse.java | 8 +-
.../java/s7/readwrite/S7MessageResponseData.java | 8 +-
.../plc4x/java/s7/readwrite/S7MessageUserData.java | 8 +-
.../plc4x/java/s7/readwrite/S7Parameter.java | 17 +-
.../s7/readwrite/S7ParameterModeTransition.java | 9 +-
.../s7/readwrite/S7ParameterReadVarRequest.java | 9 +-
.../s7/readwrite/S7ParameterReadVarResponse.java | 9 +-
.../readwrite/S7ParameterSetupCommunication.java | 8 +-
.../java/s7/readwrite/S7ParameterUserData.java | 8 +-
.../java/s7/readwrite/S7ParameterUserDataItem.java | 5 +-
.../S7ParameterUserDataItemCPUFunctions.java | 10 +-
.../s7/readwrite/S7ParameterWriteVarRequest.java | 9 +-
.../s7/readwrite/S7ParameterWriteVarResponse.java | 9 +-
.../apache/plc4x/java/s7/readwrite/S7Payload.java | 13 +-
.../plc4x/java/s7/readwrite/S7PayloadAlarm8.java | 8 +-
.../java/s7/readwrite/S7PayloadAlarmAckInd.java | 8 +-
.../plc4x/java/s7/readwrite/S7PayloadAlarmS.java | 8 +-
.../plc4x/java/s7/readwrite/S7PayloadAlarmSC.java | 8 +-
.../plc4x/java/s7/readwrite/S7PayloadAlarmSQ.java | 8 +-
.../s7/readwrite/S7PayloadDiagnosticMessage.java | 8 +-
.../plc4x/java/s7/readwrite/S7PayloadNotify.java | 8 +-
.../plc4x/java/s7/readwrite/S7PayloadNotify8.java | 8 +-
.../s7/readwrite/S7PayloadReadVarResponse.java | 8 +-
.../plc4x/java/s7/readwrite/S7PayloadUserData.java | 8 +-
.../java/s7/readwrite/S7PayloadUserDataItem.java | 59 +-
.../S7PayloadUserDataItemCpuFunctionAlarmAck.java | 8 +-
...oadUserDataItemCpuFunctionAlarmAckResponse.java | 9 +-
...S7PayloadUserDataItemCpuFunctionAlarmQuery.java | 8 +-
...dUserDataItemCpuFunctionAlarmQueryResponse.java | 8 +-
...loadUserDataItemCpuFunctionMsgSubscription.java | 8 +-
...temCpuFunctionMsgSubscriptionAlarmResponse.java | 11 +-
...DataItemCpuFunctionMsgSubscriptionResponse.java | 8 +-
...aItemCpuFunctionMsgSubscriptionSysResponse.java | 11 +-
...yloadUserDataItemCpuFunctionReadSzlRequest.java | 8 +-
...loadUserDataItemCpuFunctionReadSzlResponse.java | 8 +-
.../s7/readwrite/S7PayloadWriteVarRequest.java | 8 +-
.../s7/readwrite/S7PayloadWriteVarResponse.java | 8 +-
.../s7/readwrite/S7VarRequestParameterItem.java | 5 +-
.../S7VarRequestParameterItemAddress.java | 10 +-
.../java/plc4x/readwrite/Plc4xConnectRequest.java | 8 +-
.../java/plc4x/readwrite/Plc4xConnectResponse.java | 8 +-
.../plc4x/java/plc4x/readwrite/Plc4xMessage.java | 14 +-
.../java/plc4x/readwrite/Plc4xReadRequest.java | 8 +-
.../java/plc4x/readwrite/Plc4xReadResponse.java | 8 +-
.../java/plc4x/readwrite/Plc4xWriteRequest.java | 8 +-
.../java/plc4x/readwrite/Plc4xWriteResponse.java | 8 +-
.../org/apache/plc4x/protocol/ads/ADSProtocol.java | 4 +
.../plc4x/java/df1/readwrite/DF1Command.java | 6 +-
.../apache/plc4x/java/df1/readwrite/DF1Symbol.java | 8 +-
.../java/df1/readwrite/DF1SymbolMessageFrame.java | 8 +-
.../df1/readwrite/DF1SymbolMessageFrameACK.java | 8 +-
.../df1/readwrite/DF1SymbolMessageFrameNAK.java | 8 +-
.../df1/readwrite/DF1UnprotectedReadRequest.java | 8 +-
.../df1/readwrite/DF1UnprotectedReadResponse.java | 9 +-
2154 files changed, 18553 insertions(+), 12303 deletions(-)
diff --git a/code-generation/language-base-freemarker/src/main/java/org/apache/plc4x/plugins/codegenerator/protocol/freemarker/BaseFreemarkerLanguageTemplateHelper.java b/code-generation/language-base-freemarker/src/main/java/org/apache/plc4x/plugins/codegenerator/protocol/freemarker/BaseFreemarkerLanguageTemplateHelper.java
index 34b90cc78b..398d1bcbef 100644
--- a/code-generation/language-base-freemarker/src/main/java/org/apache/plc4x/plugins/codegenerator/protocol/freemarker/BaseFreemarkerLanguageTemplateHelper.java
+++ b/code-generation/language-base-freemarker/src/main/java/org/apache/plc4x/plugins/codegenerator/protocol/freemarker/BaseFreemarkerLanguageTemplateHelper.java
@@ -195,9 +195,15 @@ public abstract class BaseFreemarkerLanguageTemplateHelper implements Freemarker
SwitchField switchField = null;
Function<String, TypeReference> typeRefRetriever = null;
if (thisType.isDiscriminatedComplexTypeDefinition()) {
- ComplexTypeDefinition parentType = thisType.asDiscriminatedComplexTypeDefinition().orElseThrow().getParentType().orElseThrow();
- switchField = parentType.getSwitchField().orElse(null);
- typeRefRetriever = propertyName -> parentType.getTypeReferenceForProperty(propertyName).orElse(null);
+ DiscriminatedComplexTypeDefinition discriminatedComplexTypeDefinition = thisType.asDiscriminatedComplexTypeDefinition().orElseThrow();
+ switchField = discriminatedComplexTypeDefinition.getSwitchField().orElse(null);
+ typeRefRetriever = propertyName -> discriminatedComplexTypeDefinition.getTypeReferenceForProperty(propertyName).orElse(null);
+ // Please forgive us, we didn't know what we were doing.
+ if(switchField == null) {
+ ComplexTypeDefinition parentType = thisType.asDiscriminatedComplexTypeDefinition().orElseThrow().getParentType().orElseThrow();
+ switchField = parentType.getSwitchField().orElse(null);
+ typeRefRetriever = propertyName -> parentType.getTypeReferenceForProperty(propertyName).orElse(null);
+ }
} else if (thisType.isDataIoTypeDefinition()) {
final DefaultDataIoTypeDefinition dataIoTypeDefinition = (DefaultDataIoTypeDefinition) this.thisType;
switchField = dataIoTypeDefinition.getSwitchField().orElseThrow();
diff --git a/code-generation/language-java/src/main/resources/templates/java/complex-type-template.java.ftlh b/code-generation/language-java/src/main/resources/templates/java/complex-type-template.java.ftlh
index 6b98ee7dea..eebc88c352 100644
--- a/code-generation/language-java/src/main/resources/templates/java/complex-type-template.java.ftlh
+++ b/code-generation/language-java/src/main/resources/templates/java/complex-type-template.java.ftlh
@@ -78,7 +78,7 @@ public<#if type.isDiscriminatedParentTypeDefinition()> abstract</#if> class ${ty
<#assign discriminatedChildType = type.asDiscriminatedComplexTypeDefinition().orElseThrow()>
// Accessors for discriminator values.
<#list discriminatedChildType.getDiscriminatorMap() as discriminatorName, discriminatorValue>
- <#-- If the discriminator name matches that of another field, suppress the methods generation -->
+ <#-- If the discriminator name matches that of another field, suppress the methods generation -->
<#if !discriminatedChildType.isNonDiscriminatorField(discriminatorName)><#--&& !discriminatedChildType.isParserArgument(discriminatorName)-->
<#assign discriminatorType = helper.getDiscriminatorTypes()[discriminatorName]>
public ${helper.getLanguageTypeNameForTypeReference(discriminatorType)} get${discriminatorName?cap_first}() {
@@ -226,14 +226,14 @@ public<#if type.isDiscriminatedParentTypeDefinition()> abstract</#if> class ${ty
</#list>
<#if outputFlavor != "passive">
+<#if type.isDiscriminatedParentTypeDefinition()>
+ protected abstract void serialize${type.name?cap_first}Child(WriteBuffer writeBuffer) throws SerializationException;
+
+</#if>
<#if type.isDiscriminatedChildTypeDefinition()>
@Override
protected void serialize${type.parentType.orElseThrow().name}Child(WriteBuffer writeBuffer) throws SerializationException {
<#else>
- <#if type.isDiscriminatedParentTypeDefinition()>
- abstract protected void serialize${type.name?cap_first}Child(WriteBuffer writeBuffer) throws SerializationException;
-
- </#if>
public void serialize(WriteBuffer writeBuffer) throws SerializationException {
</#if>
PositionAware positionAware = writeBuffer;
@@ -592,7 +592,7 @@ public<#if type.isDiscriminatedParentTypeDefinition()> abstract</#if> class ${ty
<#-- Here come the actual parse and serialize methods that actually do the parsing and serlaizing -->
<#assign hasParserArguments=parserArguments?has_content/>
<#assign parserArgumentList><#if hasParserArguments><#list parserArguments as parserArgument>${helper.getLanguageTypeNameForTypeReference(parserArgument.type, false)} ${parserArgument.name}<#sep>, </#sep></#list></#if></#assign>
- public static ${type.name}<#if type.isDiscriminatedChildTypeDefinition()>Builder staticParseBuilder<#else> staticParse</#if>(ReadBuffer readBuffer<#if hasParserArguments>, ${parserArgumentList}</#if>) throws ParseException {
+ public static <#if type.isDiscriminatedChildTypeDefinition()>${type.parentType.orElseThrow().name}Builder staticParse${type.parentType.orElseThrow().name}Builder<#else>${type.name} staticParse</#if>(ReadBuffer readBuffer<#if hasParserArguments>, ${parserArgumentList}</#if>) throws ParseException {
readBuffer.pullContext("${type.name}");
PositionAware positionAware = readBuffer;
int startPos = positionAware.getPos();
@@ -729,6 +729,8 @@ public<#if type.isDiscriminatedParentTypeDefinition()> abstract</#if> class ${ty
true
<#else>
<#assign discriminatorExpression=switchField.discriminatorExpressions[discriminatorValueTerm?index].asLiteral().orElseThrow().asVariableLiteral().orElseThrow()>
+ <#--${helper.info("discriminator-name {}", discriminatorExpression.discriminatorName)}
+ ${helper.info("discriminator-types {}", helper.getDiscriminatorTypes())}-->
<#assign discriminatorType=helper.getDiscriminatorTypes()[discriminatorExpression.discriminatorName]>
EvaluationHelper.equals(
${helper.toParseExpression(switchField, discriminatorType, discriminatorExpression, parserArguments)},
@@ -747,7 +749,7 @@ public<#if type.isDiscriminatedParentTypeDefinition()> abstract</#if> class ${ty
<@compress single_line=true>
<#assign hasCaseParseArguments=case.allParserArguments.isPresent() && case.allParserArguments.orElseThrow()?has_content>
<#assign caseParseArguments><#if hasCaseParseArguments><#list case.allParserArguments.orElseThrow() as parserArgument>${parserArgument.name}<#sep>, </#sep></#list></#if></#assign>
- builder = ${case.name}.staticParseBuilder(readBuffer<#if hasCaseParseArguments>, ${tracer.dive("case parse arguments")} ${caseParseArguments}</#if>);
+ builder = ${case.name}.staticParse${type.name}Builder(readBuffer<#if hasCaseParseArguments>, ${tracer.dive("case parse arguments")} ${caseParseArguments}</#if>);
</...@compress>
}<#sep> else </#sep>
</#list>
@@ -789,7 +791,7 @@ public<#if type.isDiscriminatedParentTypeDefinition()> abstract</#if> class ${ty
readBuffer.closeContext("${type.name}");
// Create the instance
<#if type.isDiscriminatedChildTypeDefinition()>
- return new ${type.name}Builder(
+ return new ${type.name}BuilderImpl(
<#list type.propertyFields as field>
${field.name}<#sep>, </#sep>
</#list>
@@ -802,6 +804,9 @@ public<#if type.isDiscriminatedParentTypeDefinition()> abstract</#if> class ${ty
<#list reservedFields as reservedField>
reservedField${reservedField?index}<#sep>, </#sep>
</#list>
+ <#if type.parentType.isPresent() && type.isDiscriminatedChildTypeDefinition() && type.isDiscriminatedParentTypeDefinition()>
+ , builder
+ </#if>
);
<#elseif type.isDiscriminatedParentTypeDefinition()>
${type.name} _${type.name?uncap_first} = builder.build(
@@ -840,8 +845,14 @@ public<#if type.isDiscriminatedParentTypeDefinition()> abstract</#if> class ${ty
}
<#if type.isDiscriminatedParentTypeDefinition()>
- public static interface ${type.name}Builder {
+ public interface ${type.name}Builder {
${type.name} build(
+ <#if type.parentType.isPresent() && type.isDiscriminatedChildTypeDefinition() && type.isDiscriminatedParentTypeDefinition()>
+ <#list type.parentType.orElseThrow().asComplexTypeDefinition().orElseThrow().allPropertyFields as field>
+ ${helper.getLanguageTypeNameForField(field)} ${field.name}<#sep>, </#sep>
+ </#list>
+ <#if type.propertyFields?has_content || filteredParserArguments?has_content>,</#if>
+ </#if>
<#list type.propertyFields as field>
${helper.getLanguageTypeNameForField(field)} ${field.name}<#sep>, </#sep>
</#list>
@@ -856,7 +867,7 @@ public<#if type.isDiscriminatedParentTypeDefinition()> abstract</#if> class ${ty
</#if>
<#if type.isDiscriminatedChildTypeDefinition()>
- public static class ${type.name}Builder implements ${type.parentType.orElseThrow().name}.${type.parentType.orElseThrow().name}Builder {
+ public static class ${type.name}BuilderImpl implements ${type.parentType.orElseThrow().name}.${type.parentType.orElseThrow().name}Builder {
<#if type.propertyFields?has_content>
<#list type.propertyFields as field>
private final ${helper.getLanguageTypeNameForField(field)} ${field.name};
@@ -870,8 +881,11 @@ public<#if type.isDiscriminatedParentTypeDefinition()> abstract</#if> class ${ty
<#list reservedFields as reservedField>
private final ${helper.getLanguageTypeNameForTypeReference(reservedField.type, false)} reservedField${reservedField?index};
</#list>
+ <#if type.parentType.isPresent() && type.isDiscriminatedChildTypeDefinition() && type.isDiscriminatedParentTypeDefinition()>
+ private final ${type.name}Builder builder;
+ </#if>
- public ${type.name}Builder(
+ public ${type.name}BuilderImpl(
<#list type.propertyFields as field>
${helper.getLanguageTypeNameForField(field)} ${field.name}<#sep>, </#sep>
</#list>
@@ -885,6 +899,9 @@ public<#if type.isDiscriminatedParentTypeDefinition()> abstract</#if> class ${ty
<#list reservedFields as reservedField>
${helper.getLanguageTypeNameForTypeReference(reservedField.type, false)} reservedField${reservedField?index}<#sep>, </#sep>
</#list>
+ <#if type.parentType.isPresent() && type.isDiscriminatedChildTypeDefinition() && type.isDiscriminatedParentTypeDefinition()>
+ , ${type.name}Builder builder
+ </#if>
) {
<#list type.propertyFields as field>
this.${field.name} = ${field.name};
@@ -897,19 +914,39 @@ public<#if type.isDiscriminatedParentTypeDefinition()> abstract</#if> class ${ty
<#list reservedFields as reservedField>
this.reservedField${reservedField?index} = reservedField${reservedField?index};
</#list>
+ <#if type.parentType.isPresent() && type.isDiscriminatedChildTypeDefinition() && type.isDiscriminatedParentTypeDefinition()>
+ this.builder = builder;
+ </#if>
}
public ${type.name} build(
- <#list type.parentType.orElseThrow().asComplexTypeDefinition().orElseThrow().propertyFields as field>
+ <#list type.parentType.orElseThrow().asComplexTypeDefinition().orElseThrow().allPropertyFields as field>
${helper.getLanguageTypeNameForField(field)} ${field.name}<#sep>, </#sep>
</#list>
<#if filteredParentParserArguments?has_content>
<#if type.parentType.orElseThrow().asComplexTypeDefinition().orElseThrow().propertyFields?has_content>, </#if>
- <#list filteredParentParserArguments as arg>
+ <#list filteredParentParserArguments as arg>
${helper.getLanguageTypeNameForTypeReference(arg.type)} ${arg.name}<#sep>, </#sep>
+ </#list>
+ </#if>
+ ) {
+ <#if type.parentType.isPresent() && type.isDiscriminatedChildTypeDefinition() && type.isDiscriminatedParentTypeDefinition()>
+ return builder.build(
+ <#list type.parentType.orElseThrow().asComplexTypeDefinition().orElseThrow().allPropertyFields as field>
+ ${field.name}<#sep>, </#sep>
+ </#list>
+ <#if type.parentType.orElseThrow().asComplexTypeDefinition().orElseThrow().allPropertyFields?has_content>, </#if>
+ <#list type.propertyFields as field>
+ ${field.name}<#sep>, </#sep>
+ </#list>
+ <#if filteredParentParserArguments?has_content>
+ <#if type.parentType.orElseThrow().asComplexTypeDefinition().orElseThrow().allPropertyFields?has_content>, </#if>
+ <#list filteredParentParserArguments as arg>
+ ${arg.name}<#sep>, </#sep>
</#list>
</#if>
- ) {
+ );
+ <#else>
${type.name} ${type.name?uncap_first} = new ${type.name}(
<#list type.allPropertyFields as field>
${field.name}<#sep>, </#sep>
@@ -924,6 +961,7 @@ public<#if type.isDiscriminatedParentTypeDefinition()> abstract</#if> class ${ty
${type.name?uncap_first}.reservedField${reservedField?index} = reservedField${reservedField?index};
</#list>
return ${type.name?uncap_first};
+ </#if>
}
}
diff --git a/code-generation/pom.xml b/code-generation/pom.xml
index 2eee34a58f..9a114d007d 100644
--- a/code-generation/pom.xml
+++ b/code-generation/pom.xml
@@ -35,9 +35,9 @@
<modules>
<module>language-base-freemarker</module>
+ <module>language-java</module>
<module>protocol-base-mspec</module>
<module>protocol-test</module>
- <module>language-java</module>
</modules>
<profiles>
@@ -68,6 +68,13 @@
<module>language-python</module>
</modules>
</profile>
+
+ <profile>
+ <id>enable-all-checks</id>
+ <modules>
+ <module>tests</module>
+ </modules>
+ </profile>
</profiles>
<dependencies>
diff --git a/code-generation/protocol-base-mspec/src/main/java/org/apache/plc4x/plugins/codegenerator/language/mspec/model/definitions/DefaultDiscriminatedComplexTypeDefinition.java b/code-generation/protocol-base-mspec/src/main/java/org/apache/plc4x/plugins/codegenerator/language/mspec/model/definitions/DefaultDiscriminatedComplexTypeDefinition.java
index ef4edd9175..3615bcaad3 100644
--- a/code-generation/protocol-base-mspec/src/main/java/org/apache/plc4x/plugins/codegenerator/language/mspec/model/definitions/DefaultDiscriminatedComplexTypeDefinition.java
+++ b/code-generation/protocol-base-mspec/src/main/java/org/apache/plc4x/plugins/codegenerator/language/mspec/model/definitions/DefaultDiscriminatedComplexTypeDefinition.java
@@ -33,8 +33,8 @@ public class DefaultDiscriminatedComplexTypeDefinition extends DefaultComplexTyp
private final List<Term> discriminatorValueTerms;
- public DefaultDiscriminatedComplexTypeDefinition(String name, Map<String, Term> attributes, List<Argument> parserArguments, List<Term> discriminatorValueTerms, List<Field> fields) {
- super(name, attributes, parserArguments, false, fields);
+ public DefaultDiscriminatedComplexTypeDefinition(String name, Map<String, Term> attributes, List<Argument> parserArguments, boolean isAbstract, List<Field> fields, List<Term> discriminatorValueTerms) {
+ super(name, attributes, parserArguments, isAbstract, fields);
this.discriminatorValueTerms = Objects.requireNonNull(discriminatorValueTerms);
}
diff --git a/code-generation/protocol-base-mspec/src/main/java/org/apache/plc4x/plugins/codegenerator/language/mspec/parser/MessageFormatListener.java b/code-generation/protocol-base-mspec/src/main/java/org/apache/plc4x/plugins/codegenerator/language/mspec/parser/MessageFormatListener.java
index b3b33bb208..4f58055b5d 100644
--- a/code-generation/protocol-base-mspec/src/main/java/org/apache/plc4x/plugins/codegenerator/language/mspec/parser/MessageFormatListener.java
+++ b/code-generation/protocol-base-mspec/src/main/java/org/apache/plc4x/plugins/codegenerator/language/mspec/parser/MessageFormatListener.java
@@ -74,7 +74,7 @@ public class MessageFormatListener extends MSpecBaseListener implements LazyType
return enumContexts;
}
- private String currentTypeName;
+ private Stack<String> currentTypeName = new Stack<>();
public MessageFormatListener() {
types = new HashMap<>();
@@ -94,7 +94,7 @@ public class MessageFormatListener extends MSpecBaseListener implements LazyType
@Override
public void enterComplexType(MSpecParser.ComplexTypeContext ctx) {
- currentTypeName = getIdString(ctx.name);
+ currentTypeName.push(getIdString(ctx.name));
// Set a map of attributes that should be set for all fields.
Map<String, Term> curBatchSetAttributes = new HashMap<>();
// Add all attributes defined in the current batchSet field.
@@ -164,12 +164,19 @@ public class MessageFormatListener extends MSpecBaseListener implements LazyType
dispatchType(typeName, type);
// Set the parent type for all sub-types.
- if (switchField != null) {
- for (DiscriminatedComplexTypeDefinition subtype : switchField.getCases()) {
- if (subtype instanceof DefaultDiscriminatedComplexTypeDefinition) {
- LOGGER.debug("Setting parent {} for {}", type, subtype);
- ((DefaultDiscriminatedComplexTypeDefinition) subtype).setParentType(type);
- }
+ setParentRelationship(type);
+ }
+ currentTypeName.pop();
+ }
+
+ protected void setParentRelationship(DefaultComplexTypeDefinition type) {
+ Optional<SwitchField> switchField = type.getSwitchField();
+ if (switchField.isPresent()) {
+ for (DiscriminatedComplexTypeDefinition subtype : switchField.get().getCases()) {
+ if (subtype instanceof DefaultDiscriminatedComplexTypeDefinition) {
+ LOGGER.debug("Setting parent {} for {}", type, subtype);
+ ((DefaultDiscriminatedComplexTypeDefinition) subtype).setParentType(type);
+ setParentRelationship((DefaultDiscriminatedComplexTypeDefinition) subtype);
}
}
}
@@ -512,17 +519,33 @@ public class MessageFormatListener extends MSpecBaseListener implements LazyType
@Override
public void enterCaseStatement(MSpecParser.CaseStatementContext ctx) {
List<Field> parserContext = new LinkedList<>();
+
+ // Calculate the name of the current type
+ String namePrefix = "";
+ if(ctx.nameWildcard != null) {
+ namePrefix = getCurrentTypeName();
+ }
+ String typeName = namePrefix + ctx.name.getText();
+
+ currentTypeName.push(typeName);
+ // For DataIo we don't generate types.
+ if (ctx.parent.parent instanceof MSpecParser.DataIoDefinitionContext) {
+ currentTypeName.pop();
+ }
+
parserContexts.push(parserContext);
}
@Override
public void exitCaseStatement(MSpecParser.CaseStatementContext ctx) {
- String namePrefix = "";
- // TODO: maybe name this prefix and suffix wildcard
- if (ctx.nameWildcard != null) {
- namePrefix = currentTypeName;
+ String typeName = currentTypeName.pop();
+ // For DataIo we don't generate types.
+ if (ctx.parent.parent instanceof MSpecParser.DataIoDefinitionContext) {
+ currentTypeName.push(typeName);
+ typeName = ctx.name.getText();
}
- String typeName = namePrefix + ctx.name.getText();
+
+ boolean abstractType = getSwitchField() != null;
final Map<String, Term> attributes = batchSetAttributes.peek();
@@ -548,8 +571,8 @@ public class MessageFormatListener extends MSpecBaseListener implements LazyType
}
final List<Field> fields = parserContexts.pop();
DefaultDiscriminatedComplexTypeDefinition type =
- new DefaultDiscriminatedComplexTypeDefinition(typeName, attributes, parserArguments,
- discriminatorValues, fields);
+ new DefaultDiscriminatedComplexTypeDefinition(typeName, attributes, parserArguments, abstractType,
+ fields, discriminatorValues);
// Link the fields and the complex types.
if (fields != null) {
fields.forEach(field -> ((DefaultField) field).setOwner(type));
@@ -620,8 +643,8 @@ public class MessageFormatListener extends MSpecBaseListener implements LazyType
Objects.requireNonNull(expressionString, "Expression string should not be null");
InputStream inputStream = IOUtils.toInputStream(expressionString, Charset.defaultCharset());
- Objects.requireNonNull(currentTypeName, "expression term can only occur within a type");
- ExpressionStringParser parser = new ExpressionStringParser(this, currentTypeName);
+ Objects.requireNonNull(getCurrentTypeName(), "expression term can only occur within a type");
+ ExpressionStringParser parser = new ExpressionStringParser(this, getCurrentTypeName());
try {
return parser.parse(inputStream);
} catch (Exception e) {
@@ -634,7 +657,7 @@ public class MessageFormatListener extends MSpecBaseListener implements LazyType
// TODO: make nullsafe
final String variableLiteral = variableLiteralContext.getText();
InputStream inputStream = IOUtils.toInputStream(variableLiteral, Charset.defaultCharset());
- ExpressionStringParser parser = new ExpressionStringParser(this, currentTypeName);
+ ExpressionStringParser parser = new ExpressionStringParser(this, getCurrentTypeName());
try {
// As this come from a VariableLiteralContext we know that it is a VariableLiteral
return (VariableLiteral) parser.parse(inputStream);
@@ -648,7 +671,7 @@ public class MessageFormatListener extends MSpecBaseListener implements LazyType
// TODO: make nullsafe
final String valueLiteralContextText = valueLiteralContext.getText();
InputStream inputStream = IOUtils.toInputStream(valueLiteralContextText, Charset.defaultCharset());
- ExpressionStringParser parser = new ExpressionStringParser(this, currentTypeName);
+ ExpressionStringParser parser = new ExpressionStringParser(this, getCurrentTypeName());
try {
// As this come from a ValueLiteralContext we know that it is a Literal
return (Literal) parser.parse(inputStream);
@@ -794,7 +817,7 @@ public class MessageFormatListener extends MSpecBaseListener implements LazyType
private Term parseExpression(String expressionString) {
InputStream inputStream = IOUtils.toInputStream(expressionString, Charset.defaultCharset());
- ExpressionStringParser parser = new ExpressionStringParser(this, currentTypeName);
+ ExpressionStringParser parser = new ExpressionStringParser(this, getCurrentTypeName());
try {
return parser.parse(inputStream);
} catch (Exception e) {
@@ -802,6 +825,13 @@ public class MessageFormatListener extends MSpecBaseListener implements LazyType
}
}
+ private String getCurrentTypeName() {
+ if(currentTypeName.isEmpty()) {
+ return null;
+ }
+ return currentTypeName.peek();
+ }
+
private Map<String, Term> getAttributes(RuleContext ctx) {
Map<String, Term> attributes = new HashMap<>();
// Add any attributes from the current batchSet context.
diff --git a/code-generation/protocol-test/src/main/resources/protocols/test/test.mspec b/code-generation/protocol-test/src/main/resources/protocols/test/test.mspec
index 7e3ecdc45a..d07acc5cc7 100644
--- a/code-generation/protocol-test/src/main/resources/protocols/test/test.mspec
+++ b/code-generation/protocol-test/src/main/resources/protocols/test/test.mspec
@@ -471,6 +471,71 @@
]
]
+////////////////////////////////////////////////////////////////
+// TypeSwitch in TypeSwitch
+////////////////////////////////////////////////////////////////
+
+/* Needs to be ported to C and GO
+[discriminatedType TypeSwitchInTypeSwitchParentType
+ [discriminator uint 8 typeNumber]
+ [simple uint 8 parentFieldHurz]
+ [typeSwitch typeNumber
+ ['0x00' *Child0
+ [discriminator uint 8 childNumber]
+ [simple uint 8 childFieldwolf]
+ [typeSwitch childNumber
+ ['0x01' *Infant0
+ [discriminator uint 8 infantNumber]
+ [simple uint 8 infantSomeField00]
+ [typeSwitch infantNumber
+ ['0x98' *InfantsChild0
+ [simple uint 8 infantsChild0SomeField00]
+ ]
+ ['0x99' *InfantsChild1
+ [simple uint 8 infantsChild1SomeField00]
+ ]
+ ]
+ ]
+ ['0x02' *Infant1
+ [simple uint 8 infantSomeField01]
+ ]
+ ['0x03' *Infant2
+ [simple uint 8 infantSomeField02]
+ ]
+ ]
+ ]
+ ['0x10' *Child1
+ [discriminator uint 8 childNumber]
+ [simple uint 8 childFieldLamm]
+ [typeSwitch childNumber
+ ['0x11' *Infant3
+ [simple uint 8 infantSomeField1ß]
+ ]
+ ['0x12' *Infant4
+ [simple uint 8 infantSomeField11]
+ ]
+ ['0x13' *Infant5
+ [simple uint 8 infantSomeField12]
+ ]
+ ]
+ ]
+ ['0x20' *Child2
+ [discriminator uint 8 childNumber]
+ [simple uint 8 childFieldGrueneWiese]
+ [typeSwitch childNumber
+ ['0x21' *Infant6
+ [simple uint 8 infantSomeField21]
+ ]
+ ['0x22' *Infant7
+ [simple uint 8 infantSomeField22]
+ ]
+ ['0x23' *Infant8
+ [simple uint 8 infantSomeField23]
+ ]
+ ]
+ ]
+ ]
+]*/
////////////////////////////////////////////////////////////////
// Missing Tests
diff --git a/code-generation/pom.xml b/code-generation/tests/pom.xml
similarity index 80%
copy from code-generation/pom.xml
copy to code-generation/tests/pom.xml
index 2eee34a58f..54edd136e9 100644
--- a/code-generation/pom.xml
+++ b/code-generation/tests/pom.xml
@@ -23,49 +23,42 @@
<parent>
<groupId>org.apache.plc4x</groupId>
- <artifactId>plc4x-parent</artifactId>
+ <artifactId>plc4x-code-generation</artifactId>
<version>0.11.0-SNAPSHOT</version>
</parent>
- <artifactId>plc4x-code-generation</artifactId>
+ <artifactId>plc4x-code-generation-tests</artifactId>
<packaging>pom</packaging>
- <name>Code-Generation</name>
- <description>Home of the PLC4X code-generation framework.</description>
+ <name>Code-Generation Tests</name>
+ <description>Tests for the various code-generation modules</description>
<modules>
- <module>language-base-freemarker</module>
- <module>protocol-base-mspec</module>
- <module>protocol-test</module>
- <module>language-java</module>
+ <module>protocol-test-java</module>
</modules>
<profiles>
<profile>
<id>with-c</id>
<modules>
- <module>language-c</module>
</modules>
</profile>
<profile>
<id>with-dotnet</id>
<modules>
- <module>language-cs</module>
</modules>
</profile>
<profile>
<id>with-go</id>
<modules>
- <module>language-go</module>
</modules>
</profile>
<profile>
<id>with-python</id>
<modules>
- <module>language-python</module>
</modules>
</profile>
</profiles>
diff --git a/code-generation/tests/protocol-test-java/pom.xml b/code-generation/tests/protocol-test-java/pom.xml
new file mode 100644
index 0000000000..58324964bc
--- /dev/null
+++ b/code-generation/tests/protocol-test-java/pom.xml
@@ -0,0 +1,158 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ https://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+ -->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.plc4x</groupId>
+ <artifactId>plc4x-code-generation-tests</artifactId>
+ <version>0.11.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>plc4x-code-generation-protocol-test-java</artifactId>
+
+ <name>Code-Generation: Protocol Test: Test Java</name>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.plc4x.plugins</groupId>
+ <artifactId>plc4x-maven-plugin</artifactId>
+ <version>${plc4x-code-generation.version}</version>
+ <executions>
+ <execution>
+ <id>generate-driver</id>
+ <phase>generate-sources</phase>
+ <goals>
+ <goal>generate-driver</goal>
+ </goals>
+ <configuration>
+ <protocolName>test</protocolName>
+ <languageName>java</languageName>
+ <outputFlavor>read-write</outputFlavor>
+ <outputDir>src/main/generated</outputDir>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <configuration>
+ <usedDependencies combine.children="append">
+ <usedDependency>org.apache.plc4x:plc4x-code-generation-language-java</usedDependency>
+ <usedDependency>org.apache.plc4x:plc4x-code-generation-protocol-test</usedDependency>
+ </usedDependencies>
+ </configuration>
+ </plugin>
+
+ <!--
+ Make the failsafe execute all integration-tests
+ -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-failsafe-plugin</artifactId>
+ <executions>
+ <execution>
+ <goals>
+ <goal>integration-test</goal>
+ <goal>verify</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <!--
+ Notice the @ instead of the $ as prefix? That's late evaluation.
+ -->
+ <!--argLine>@{failsafeArgLine}</argLine-->
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+<dependencies>
+ <dependency>
+ <groupId>org.apache.plc4x</groupId>
+ <artifactId>plc4j-api</artifactId>
+ <version>0.11.0-SNAPSHOT</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.plc4x</groupId>
+ <artifactId>plc4j-spi</artifactId>
+ <version>0.11.0-SNAPSHOT</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.plc4x</groupId>
+ <artifactId>plc4j-transport-tcp</artifactId>
+ <version>0.11.0-SNAPSHOT</version>
+ </dependency>
+
+ <dependency>
+ <groupId>io.netty</groupId>
+ <artifactId>netty-buffer</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.commons</groupId>
+ <artifactId>commons-lang3</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-annotations</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.plc4x</groupId>
+ <artifactId>plc4j-utils-test-utils</artifactId>
+ <version>0.11.0-SNAPSHOT</version>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.plc4x</groupId>
+ <artifactId>plc4x-code-generation-language-java</artifactId>
+ <version>0.11.0-SNAPSHOT</version>
+ <!-- Scope is 'provided' as this way it's not shipped with the driver -->
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.plc4x</groupId>
+ <artifactId>plc4x-code-generation-protocol-test</artifactId>
+ <version>0.11.0-SNAPSHOT</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.plc4x</groupId>
+ <artifactId>plc4x-code-generation-protocol-test</artifactId>
+ <version>0.11.0-SNAPSHOT</version>
+ <classifier>tests</classifier>
+ <type>test-jar</type>
+ <scope>test</scope>
+ </dependency>
+
+ </dependencies>
+
+</project>
+
diff --git a/plc4j/drivers/s7/src/main/generated/org/apache/plc4x/java/s7/readwrite/S7ParameterUserDataItem.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/AbstractTypeTest.java
similarity index 61%
copy from plc4j/drivers/s7/src/main/generated/org/apache/plc4x/java/s7/readwrite/S7ParameterUserDataItem.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/AbstractTypeTest.java
index 1efa15bf0c..a76523e176 100644
--- a/plc4j/drivers/s7/src/main/generated/org/apache/plc4x/java/s7/readwrite/S7ParameterUserDataItem.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/AbstractTypeTest.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.s7.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,30 +35,49 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public abstract class S7ParameterUserDataItem implements Message {
+public abstract class AbstractTypeTest implements Message {
// Abstract accessors for discriminator values.
- public abstract Short getItemType();
- public S7ParameterUserDataItem() {
+ // Properties.
+ protected final short simpleField;
+
+ public AbstractTypeTest(short simpleField) {
super();
+ this.simpleField = simpleField;
+ }
+
+ public abstract boolean getAbstractBitField();
+
+ public abstract byte getAbstractIntField();
+
+ public abstract short getAbstractUintField();
+
+ public abstract float getAbstractFloatField();
+
+ public abstract double getAbstractDoubleField();
+
+ public abstract String getAbstractStringField();
+
+ public short getSimpleField() {
+ return simpleField;
}
- protected abstract void serializeS7ParameterUserDataItemChild(WriteBuffer writeBuffer)
+ protected abstract void serializeAbstractTypeTestChild(WriteBuffer writeBuffer)
throws SerializationException;
public void serialize(WriteBuffer writeBuffer) throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("S7ParameterUserDataItem");
+ writeBuffer.pushContext("AbstractTypeTest");
- // Discriminator Field (itemType) (Used as input to a switch field)
- writeDiscriminatorField("itemType", getItemType(), writeUnsignedShort(writeBuffer, 8));
+ // Simple Field (simpleField)
+ writeSimpleField("simpleField", simpleField, writeUnsignedShort(writeBuffer, 8));
// Switch field (Serialize the sub-type)
- serializeS7ParameterUserDataItemChild(writeBuffer);
+ serializeAbstractTypeTestChild(writeBuffer);
- writeBuffer.popContext("S7ParameterUserDataItem");
+ writeBuffer.popContext("AbstractTypeTest");
}
@Override
@@ -69,9 +88,9 @@ public abstract class S7ParameterUserDataItem implements Message {
@Override
public int getLengthInBits() {
int lengthInBits = 0;
- S7ParameterUserDataItem _value = this;
+ AbstractTypeTest _value = this;
- // Discriminator Field (itemType)
+ // Simple field (simpleField)
lengthInBits += 8;
// Length of sub-type elements will be added by sub-type...
@@ -79,42 +98,42 @@ public abstract class S7ParameterUserDataItem implements Message {
return lengthInBits;
}
- public static S7ParameterUserDataItem staticParse(ReadBuffer readBuffer, Object... args)
+ public static AbstractTypeTest staticParse(ReadBuffer readBuffer, Object... args)
throws ParseException {
PositionAware positionAware = readBuffer;
return staticParse(readBuffer);
}
- public static S7ParameterUserDataItem staticParse(ReadBuffer readBuffer) throws ParseException {
- readBuffer.pullContext("S7ParameterUserDataItem");
+ public static AbstractTypeTest staticParse(ReadBuffer readBuffer) throws ParseException {
+ readBuffer.pullContext("AbstractTypeTest");
PositionAware positionAware = readBuffer;
int startPos = positionAware.getPos();
int curPos;
- short itemType = readDiscriminatorField("itemType", readUnsignedShort(readBuffer, 8));
+ short simpleField = readSimpleField("simpleField", readUnsignedShort(readBuffer, 8));
// Switch Field (Depending on the discriminator values, passes the instantiation to a sub-type)
- S7ParameterUserDataItemBuilder builder = null;
- if (EvaluationHelper.equals(itemType, (short) 0x12)) {
- builder = S7ParameterUserDataItemCPUFunctions.staticParseBuilder(readBuffer);
+ AbstractTypeTestBuilder builder = null;
+ if (EvaluationHelper.equals(simpleField, (short) 0)) {
+ builder = AbstractTypeTestSubType.staticParseAbstractTypeTestBuilder(readBuffer);
}
if (builder == null) {
throw new ParseException(
"Unsupported case for discriminated type"
+ " parameters ["
- + "itemType="
- + itemType
+ + "simpleField="
+ + simpleField
+ "]");
}
- readBuffer.closeContext("S7ParameterUserDataItem");
+ readBuffer.closeContext("AbstractTypeTest");
// Create the instance
- S7ParameterUserDataItem _s7ParameterUserDataItem = builder.build();
- return _s7ParameterUserDataItem;
+ AbstractTypeTest _abstractTypeTest = builder.build(simpleField);
+ return _abstractTypeTest;
}
- public static interface S7ParameterUserDataItemBuilder {
- S7ParameterUserDataItem build();
+ public interface AbstractTypeTestBuilder {
+ AbstractTypeTest build(short simpleField);
}
@Override
@@ -122,16 +141,16 @@ public abstract class S7ParameterUserDataItem implements Message {
if (this == o) {
return true;
}
- if (!(o instanceof S7ParameterUserDataItem)) {
+ if (!(o instanceof AbstractTypeTest)) {
return false;
}
- S7ParameterUserDataItem that = (S7ParameterUserDataItem) o;
- return true;
+ AbstractTypeTest that = (AbstractTypeTest) o;
+ return (getSimpleField() == that.getSimpleField()) && true;
}
@Override
public int hashCode() {
- return Objects.hash();
+ return Objects.hash(getSimpleField());
}
@Override
diff --git a/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/AbstractTypeTestSubType.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/AbstractTypeTestSubType.java
new file mode 100644
index 0000000000..a5fad8a786
--- /dev/null
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/AbstractTypeTestSubType.java
@@ -0,0 +1,261 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.plc4x.java.test.readwrite;
+
+import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
+import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
+import static org.apache.plc4x.java.spi.codegen.io.DataReaderFactory.*;
+import static org.apache.plc4x.java.spi.codegen.io.DataWriterFactory.*;
+import static org.apache.plc4x.java.spi.generation.StaticHelper.*;
+
+import java.time.*;
+import java.util.*;
+import org.apache.plc4x.java.api.exceptions.*;
+import org.apache.plc4x.java.api.value.*;
+import org.apache.plc4x.java.spi.codegen.*;
+import org.apache.plc4x.java.spi.codegen.fields.*;
+import org.apache.plc4x.java.spi.codegen.io.*;
+import org.apache.plc4x.java.spi.generation.*;
+
+// Code generated by code-generation. DO NOT EDIT.
+
+public class AbstractTypeTestSubType extends AbstractTypeTest implements Message {
+
+ // Accessors for discriminator values.
+
+ // Properties.
+ protected final boolean abstractBitField;
+ protected final byte abstractIntField;
+ protected final short abstractUintField;
+ protected final float abstractFloatField;
+ protected final double abstractDoubleField;
+ protected final String abstractStringField;
+
+ public AbstractTypeTestSubType(
+ short simpleField,
+ boolean abstractBitField,
+ byte abstractIntField,
+ short abstractUintField,
+ float abstractFloatField,
+ double abstractDoubleField,
+ String abstractStringField) {
+ super(simpleField);
+ this.abstractBitField = abstractBitField;
+ this.abstractIntField = abstractIntField;
+ this.abstractUintField = abstractUintField;
+ this.abstractFloatField = abstractFloatField;
+ this.abstractDoubleField = abstractDoubleField;
+ this.abstractStringField = abstractStringField;
+ }
+
+ public boolean getAbstractBitField() {
+ return abstractBitField;
+ }
+
+ public byte getAbstractIntField() {
+ return abstractIntField;
+ }
+
+ public short getAbstractUintField() {
+ return abstractUintField;
+ }
+
+ public float getAbstractFloatField() {
+ return abstractFloatField;
+ }
+
+ public double getAbstractDoubleField() {
+ return abstractDoubleField;
+ }
+
+ public String getAbstractStringField() {
+ return abstractStringField;
+ }
+
+ @Override
+ protected void serializeAbstractTypeTestChild(WriteBuffer writeBuffer)
+ throws SerializationException {
+ PositionAware positionAware = writeBuffer;
+ int startPos = positionAware.getPos();
+ writeBuffer.pushContext("AbstractTypeTestSubType");
+
+ // Simple Field (abstractBitField)
+ writeSimpleField("abstractBitField", abstractBitField, writeBoolean(writeBuffer));
+
+ // Simple Field (abstractIntField)
+ writeSimpleField("abstractIntField", abstractIntField, writeSignedByte(writeBuffer, 8));
+
+ // Simple Field (abstractUintField)
+ writeSimpleField("abstractUintField", abstractUintField, writeUnsignedShort(writeBuffer, 8));
+
+ // Simple Field (abstractFloatField)
+ writeSimpleField("abstractFloatField", abstractFloatField, writeFloat(writeBuffer, 32));
+
+ // Simple Field (abstractDoubleField)
+ writeSimpleField("abstractDoubleField", abstractDoubleField, writeDouble(writeBuffer, 64));
+
+ // Simple Field (abstractStringField)
+ writeSimpleField("abstractStringField", abstractStringField, writeString(writeBuffer, 8));
+
+ writeBuffer.popContext("AbstractTypeTestSubType");
+ }
+
+ @Override
+ public int getLengthInBytes() {
+ return (int) Math.ceil((float) getLengthInBits() / 8.0);
+ }
+
+ @Override
+ public int getLengthInBits() {
+ int lengthInBits = super.getLengthInBits();
+ AbstractTypeTestSubType _value = this;
+
+ // Simple field (abstractBitField)
+ lengthInBits += 1;
+
+ // Simple field (abstractIntField)
+ lengthInBits += 8;
+
+ // Simple field (abstractUintField)
+ lengthInBits += 8;
+
+ // Simple field (abstractFloatField)
+ lengthInBits += 32;
+
+ // Simple field (abstractDoubleField)
+ lengthInBits += 64;
+
+ // Simple field (abstractStringField)
+ lengthInBits += 8;
+
+ return lengthInBits;
+ }
+
+ public static AbstractTypeTestBuilder staticParseAbstractTypeTestBuilder(ReadBuffer readBuffer)
+ throws ParseException {
+ readBuffer.pullContext("AbstractTypeTestSubType");
+ PositionAware positionAware = readBuffer;
+ int startPos = positionAware.getPos();
+ int curPos;
+
+ boolean abstractBitField = readSimpleField("abstractBitField", readBoolean(readBuffer));
+
+ byte abstractIntField = readSimpleField("abstractIntField", readSignedByte(readBuffer, 8));
+
+ short abstractUintField =
+ readSimpleField("abstractUintField", readUnsignedShort(readBuffer, 8));
+
+ float abstractFloatField = readSimpleField("abstractFloatField", readFloat(readBuffer, 32));
+
+ double abstractDoubleField = readSimpleField("abstractDoubleField", readDouble(readBuffer, 64));
+
+ String abstractStringField = readSimpleField("abstractStringField", readString(readBuffer, 8));
+
+ readBuffer.closeContext("AbstractTypeTestSubType");
+ // Create the instance
+ return new AbstractTypeTestSubTypeBuilderImpl(
+ abstractBitField,
+ abstractIntField,
+ abstractUintField,
+ abstractFloatField,
+ abstractDoubleField,
+ abstractStringField);
+ }
+
+ public static class AbstractTypeTestSubTypeBuilderImpl
+ implements AbstractTypeTest.AbstractTypeTestBuilder {
+ private final boolean abstractBitField;
+ private final byte abstractIntField;
+ private final short abstractUintField;
+ private final float abstractFloatField;
+ private final double abstractDoubleField;
+ private final String abstractStringField;
+
+ public AbstractTypeTestSubTypeBuilderImpl(
+ boolean abstractBitField,
+ byte abstractIntField,
+ short abstractUintField,
+ float abstractFloatField,
+ double abstractDoubleField,
+ String abstractStringField) {
+
+ this.abstractBitField = abstractBitField;
+ this.abstractIntField = abstractIntField;
+ this.abstractUintField = abstractUintField;
+ this.abstractFloatField = abstractFloatField;
+ this.abstractDoubleField = abstractDoubleField;
+ this.abstractStringField = abstractStringField;
+ }
+
+ public AbstractTypeTestSubType build(short simpleField) {
+ AbstractTypeTestSubType abstractTypeTestSubType =
+ new AbstractTypeTestSubType(
+ simpleField,
+ abstractBitField,
+ abstractIntField,
+ abstractUintField,
+ abstractFloatField,
+ abstractDoubleField,
+ abstractStringField);
+ return abstractTypeTestSubType;
+ }
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (!(o instanceof AbstractTypeTestSubType)) {
+ return false;
+ }
+ AbstractTypeTestSubType that = (AbstractTypeTestSubType) o;
+ return (getAbstractBitField() == that.getAbstractBitField())
+ && (getAbstractIntField() == that.getAbstractIntField())
+ && (getAbstractUintField() == that.getAbstractUintField())
+ && (getAbstractFloatField() == that.getAbstractFloatField())
+ && (getAbstractDoubleField() == that.getAbstractDoubleField())
+ && (getAbstractStringField() == that.getAbstractStringField())
+ && super.equals(that)
+ && true;
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(
+ super.hashCode(),
+ getAbstractBitField(),
+ getAbstractIntField(),
+ getAbstractUintField(),
+ getAbstractFloatField(),
+ getAbstractDoubleField(),
+ getAbstractStringField());
+ }
+
+ @Override
+ public String toString() {
+ WriteBufferBoxBased writeBufferBoxBased = new WriteBufferBoxBased(true, true);
+ try {
+ writeBufferBoxBased.writeSerializable(this);
+ } catch (SerializationException e) {
+ throw new RuntimeException(e);
+ }
+ return "\n" + writeBufferBoxBased.getBox().toString() + "\n";
+ }
+}
diff --git a/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ArrayTypeTest.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ArrayTypeTest.java
new file mode 100644
index 0000000000..411b449ec2
--- /dev/null
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ArrayTypeTest.java
@@ -0,0 +1,248 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.plc4x.java.test.readwrite;
+
+import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
+import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
+import static org.apache.plc4x.java.spi.codegen.io.DataReaderFactory.*;
+import static org.apache.plc4x.java.spi.codegen.io.DataWriterFactory.*;
+import static org.apache.plc4x.java.spi.generation.StaticHelper.*;
+
+import java.time.*;
+import java.util.*;
+import org.apache.plc4x.java.api.exceptions.*;
+import org.apache.plc4x.java.api.value.*;
+import org.apache.plc4x.java.spi.codegen.*;
+import org.apache.plc4x.java.spi.codegen.fields.*;
+import org.apache.plc4x.java.spi.codegen.io.*;
+import org.apache.plc4x.java.spi.generation.*;
+
+// Code generated by code-generation. DO NOT EDIT.
+
+public class ArrayTypeTest implements Message {
+
+ // Properties.
+ protected final List<Boolean> bitField;
+ protected final byte[] byteField;
+ protected final List<Byte> intField;
+ protected final List<Short> uintField;
+ protected final List<Float> floatField;
+ protected final List<Double> doubleField;
+ protected final List<String> stringField;
+
+ public ArrayTypeTest(
+ List<Boolean> bitField,
+ byte[] byteField,
+ List<Byte> intField,
+ List<Short> uintField,
+ List<Float> floatField,
+ List<Double> doubleField,
+ List<String> stringField) {
+ super();
+ this.bitField = bitField;
+ this.byteField = byteField;
+ this.intField = intField;
+ this.uintField = uintField;
+ this.floatField = floatField;
+ this.doubleField = doubleField;
+ this.stringField = stringField;
+ }
+
+ public List<Boolean> getBitField() {
+ return bitField;
+ }
+
+ public byte[] getByteField() {
+ return byteField;
+ }
+
+ public List<Byte> getIntField() {
+ return intField;
+ }
+
+ public List<Short> getUintField() {
+ return uintField;
+ }
+
+ public List<Float> getFloatField() {
+ return floatField;
+ }
+
+ public List<Double> getDoubleField() {
+ return doubleField;
+ }
+
+ public List<String> getStringField() {
+ return stringField;
+ }
+
+ public void serialize(WriteBuffer writeBuffer) throws SerializationException {
+ PositionAware positionAware = writeBuffer;
+ int startPos = positionAware.getPos();
+ writeBuffer.pushContext("ArrayTypeTest");
+
+ // Array Field (bitField)
+ writeSimpleTypeArrayField("bitField", bitField, writeBoolean(writeBuffer));
+
+ // Array Field (byteField)
+ writeByteArrayField("byteField", byteField, writeByteArray(writeBuffer, 8));
+
+ // Array Field (intField)
+ writeSimpleTypeArrayField("intField", intField, writeSignedByte(writeBuffer, 8));
+
+ // Array Field (uintField)
+ writeSimpleTypeArrayField("uintField", uintField, writeUnsignedShort(writeBuffer, 8));
+
+ // Array Field (floatField)
+ writeSimpleTypeArrayField("floatField", floatField, writeFloat(writeBuffer, 32));
+
+ // Array Field (doubleField)
+ writeSimpleTypeArrayField("doubleField", doubleField, writeDouble(writeBuffer, 64));
+
+ // Array Field (stringField)
+ writeSimpleTypeArrayField("stringField", stringField, writeString(writeBuffer, 8));
+
+ writeBuffer.popContext("ArrayTypeTest");
+ }
+
+ @Override
+ public int getLengthInBytes() {
+ return (int) Math.ceil((float) getLengthInBits() / 8.0);
+ }
+
+ @Override
+ public int getLengthInBits() {
+ int lengthInBits = 0;
+ ArrayTypeTest _value = this;
+
+ // Array field
+ if (bitField != null) {
+ lengthInBits += 1 * bitField.size();
+ }
+
+ // Array field
+ if (byteField != null) {
+ lengthInBits += 8 * byteField.length;
+ }
+
+ // Array field
+ if (intField != null) {
+ lengthInBits += 8 * intField.size();
+ }
+
+ // Array field
+ if (uintField != null) {
+ lengthInBits += 8 * uintField.size();
+ }
+
+ // Array field
+ if (floatField != null) {
+ lengthInBits += 32 * floatField.size();
+ }
+
+ // Array field
+ if (doubleField != null) {
+ lengthInBits += 64 * doubleField.size();
+ }
+
+ // Array field
+ if (stringField != null) {
+ lengthInBits += 8 * stringField.size();
+ }
+
+ return lengthInBits;
+ }
+
+ public static ArrayTypeTest staticParse(ReadBuffer readBuffer, Object... args)
+ throws ParseException {
+ PositionAware positionAware = readBuffer;
+ return staticParse(readBuffer);
+ }
+
+ public static ArrayTypeTest staticParse(ReadBuffer readBuffer) throws ParseException {
+ readBuffer.pullContext("ArrayTypeTest");
+ PositionAware positionAware = readBuffer;
+ int startPos = positionAware.getPos();
+ int curPos;
+
+ List<Boolean> bitField = readCountArrayField("bitField", readBoolean(readBuffer), 5);
+
+ byte[] byteField = readBuffer.readByteArray("byteField", Math.toIntExact(5));
+
+ List<Byte> intField = readCountArrayField("intField", readSignedByte(readBuffer, 8), 5);
+
+ List<Short> uintField = readCountArrayField("uintField", readUnsignedShort(readBuffer, 8), 5);
+
+ List<Float> floatField = readCountArrayField("floatField", readFloat(readBuffer, 32), 5);
+
+ List<Double> doubleField = readCountArrayField("doubleField", readDouble(readBuffer, 64), 5);
+
+ List<String> stringField = readCountArrayField("stringField", readString(readBuffer, 8), 5);
+
+ readBuffer.closeContext("ArrayTypeTest");
+ // Create the instance
+ ArrayTypeTest _arrayTypeTest;
+ _arrayTypeTest =
+ new ArrayTypeTest(
+ bitField, byteField, intField, uintField, floatField, doubleField, stringField);
+ return _arrayTypeTest;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (!(o instanceof ArrayTypeTest)) {
+ return false;
+ }
+ ArrayTypeTest that = (ArrayTypeTest) o;
+ return (getBitField() == that.getBitField())
+ && (getByteField() == that.getByteField())
+ && (getIntField() == that.getIntField())
+ && (getUintField() == that.getUintField())
+ && (getFloatField() == that.getFloatField())
+ && (getDoubleField() == that.getDoubleField())
+ && (getStringField() == that.getStringField())
+ && true;
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(
+ getBitField(),
+ getByteField(),
+ getIntField(),
+ getUintField(),
+ getFloatField(),
+ getDoubleField(),
+ getStringField());
+ }
+
+ @Override
+ public String toString() {
+ WriteBufferBoxBased writeBufferBoxBased = new WriteBufferBoxBased(true, true);
+ try {
+ writeBufferBoxBased.writeSerializable(this);
+ } catch (SerializationException e) {
+ throw new RuntimeException(e);
+ }
+ return "\n" + writeBufferBoxBased.getBox().toString() + "\n";
+ }
+}
diff --git a/plc4j/drivers/s7/src/main/generated/org/apache/plc4x/java/s7/readwrite/S7Address.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/CheckSumTypeTest.java
similarity index 59%
copy from plc4j/drivers/s7/src/main/generated/org/apache/plc4x/java/s7/readwrite/S7Address.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/CheckSumTypeTest.java
index 4fbed10ec8..30e53828fd 100644
--- a/plc4j/drivers/s7/src/main/generated/org/apache/plc4x/java/s7/readwrite/S7Address.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/CheckSumTypeTest.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.s7.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,30 +35,30 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public abstract class S7Address implements Message {
+public class CheckSumTypeTest implements Message {
- // Abstract accessors for discriminator values.
- public abstract Short getAddressType();
-
- public S7Address() {
+ public CheckSumTypeTest() {
super();
}
- protected abstract void serializeS7AddressChild(WriteBuffer writeBuffer)
- throws SerializationException;
-
public void serialize(WriteBuffer writeBuffer) throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("S7Address");
+ writeBuffer.pushContext("CheckSumTypeTest");
- // Discriminator Field (addressType) (Used as input to a switch field)
- writeDiscriminatorField("addressType", getAddressType(), writeUnsignedShort(writeBuffer, 8));
+ // Checksum Field (checksum) (Calculated)
+ writeChecksumField(
+ "intField",
+ (byte) (org.apache.plc4x.java.test.readwrite.utils.StaticHelper.crcInt8(-(23))),
+ writeSignedByte(writeBuffer, 8));
- // Switch field (Serialize the sub-type)
- serializeS7AddressChild(writeBuffer);
+ // Checksum Field (checksum) (Calculated)
+ writeChecksumField(
+ "uintField",
+ (short) (org.apache.plc4x.java.test.readwrite.utils.StaticHelper.crcUint8(42)),
+ writeUnsignedShort(writeBuffer, 8));
- writeBuffer.popContext("S7Address");
+ writeBuffer.popContext("CheckSumTypeTest");
}
@Override
@@ -69,51 +69,46 @@ public abstract class S7Address implements Message {
@Override
public int getLengthInBits() {
int lengthInBits = 0;
- S7Address _value = this;
+ CheckSumTypeTest _value = this;
- // Discriminator Field (addressType)
+ // Checksum Field (checksum)
lengthInBits += 8;
- // Length of sub-type elements will be added by sub-type...
+ // Checksum Field (checksum)
+ lengthInBits += 8;
return lengthInBits;
}
- public static S7Address staticParse(ReadBuffer readBuffer, Object... args) throws ParseException {
+ public static CheckSumTypeTest staticParse(ReadBuffer readBuffer, Object... args)
+ throws ParseException {
PositionAware positionAware = readBuffer;
return staticParse(readBuffer);
}
- public static S7Address staticParse(ReadBuffer readBuffer) throws ParseException {
- readBuffer.pullContext("S7Address");
+ public static CheckSumTypeTest staticParse(ReadBuffer readBuffer) throws ParseException {
+ readBuffer.pullContext("CheckSumTypeTest");
PositionAware positionAware = readBuffer;
int startPos = positionAware.getPos();
int curPos;
- short addressType = readDiscriminatorField("addressType", readUnsignedShort(readBuffer, 8));
+ byte intField =
+ readChecksumField(
+ "intField",
+ readSignedByte(readBuffer, 8),
+ (byte) (org.apache.plc4x.java.test.readwrite.utils.StaticHelper.crcInt8(-(23))));
- // Switch Field (Depending on the discriminator values, passes the instantiation to a sub-type)
- S7AddressBuilder builder = null;
- if (EvaluationHelper.equals(addressType, (short) 0x10)) {
- builder = S7AddressAny.staticParseBuilder(readBuffer);
- }
- if (builder == null) {
- throw new ParseException(
- "Unsupported case for discriminated type"
- + " parameters ["
- + "addressType="
- + addressType
- + "]");
- }
+ short uintField =
+ readChecksumField(
+ "uintField",
+ readUnsignedShort(readBuffer, 8),
+ (short) (org.apache.plc4x.java.test.readwrite.utils.StaticHelper.crcUint8(42)));
- readBuffer.closeContext("S7Address");
+ readBuffer.closeContext("CheckSumTypeTest");
// Create the instance
- S7Address _s7Address = builder.build();
- return _s7Address;
- }
-
- public static interface S7AddressBuilder {
- S7Address build();
+ CheckSumTypeTest _checkSumTypeTest;
+ _checkSumTypeTest = new CheckSumTypeTest();
+ return _checkSumTypeTest;
}
@Override
@@ -121,10 +116,10 @@ public abstract class S7Address implements Message {
if (this == o) {
return true;
}
- if (!(o instanceof S7Address)) {
+ if (!(o instanceof CheckSumTypeTest)) {
return false;
}
- S7Address that = (S7Address) o;
+ CheckSumTypeTest that = (CheckSumTypeTest) o;
return true;
}
diff --git a/plc4j/drivers/profinet/src/main/generated/org/apache/plc4x/java/profinet/readwrite/PnDcp_Block_ALLSelector.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ComplexOfComplexUsageA.java
similarity index 60%
copy from plc4j/drivers/profinet/src/main/generated/org/apache/plc4x/java/profinet/readwrite/PnDcp_Block_ALLSelector.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ComplexOfComplexUsageA.java
index a4b2a26fcb..d3b3c8a8f2 100644
--- a/plc4j/drivers/profinet/src/main/generated/org/apache/plc4x/java/profinet/readwrite/PnDcp_Block_ALLSelector.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ComplexOfComplexUsageA.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.profinet.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,28 +35,29 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public class PnDcp_Block_ALLSelector extends PnDcp_Block implements Message {
+public class ComplexOfComplexUsageA implements Message {
- // Accessors for discriminator values.
- public PnDcp_BlockOptions getOption() {
- return PnDcp_BlockOptions.ALL_SELECTOR_OPTION;
- }
+ // Properties.
+ protected final ComplexOfComplexUsageB b;
- public Short getSuboption() {
- return (short) 0xFF;
+ public ComplexOfComplexUsageA(ComplexOfComplexUsageB b) {
+ super();
+ this.b = b;
}
- public PnDcp_Block_ALLSelector() {
- super();
+ public ComplexOfComplexUsageB getB() {
+ return b;
}
- @Override
- protected void serializePnDcp_BlockChild(WriteBuffer writeBuffer) throws SerializationException {
+ public void serialize(WriteBuffer writeBuffer) throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("PnDcp_Block_ALLSelector");
+ writeBuffer.pushContext("ComplexOfComplexUsageA");
- writeBuffer.popContext("PnDcp_Block_ALLSelector");
+ // Simple Field (b)
+ writeSimpleField("b", b, new DataWriterComplexDefault<>(writeBuffer));
+
+ writeBuffer.popContext("ComplexOfComplexUsageA");
}
@Override
@@ -66,32 +67,38 @@ public class PnDcp_Block_ALLSelector extends PnDcp_Block implements Message {
@Override
public int getLengthInBits() {
- int lengthInBits = super.getLengthInBits();
- PnDcp_Block_ALLSelector _value = this;
+ int lengthInBits = 0;
+ ComplexOfComplexUsageA _value = this;
+
+ // Simple field (b)
+ lengthInBits += b.getLengthInBits();
return lengthInBits;
}
- public static PnDcp_Block_ALLSelectorBuilder staticParseBuilder(ReadBuffer readBuffer)
+ public static ComplexOfComplexUsageA staticParse(ReadBuffer readBuffer, Object... args)
throws ParseException {
- readBuffer.pullContext("PnDcp_Block_ALLSelector");
PositionAware positionAware = readBuffer;
- int startPos = positionAware.getPos();
- int curPos;
-
- readBuffer.closeContext("PnDcp_Block_ALLSelector");
- // Create the instance
- return new PnDcp_Block_ALLSelectorBuilder();
+ return staticParse(readBuffer);
}
- public static class PnDcp_Block_ALLSelectorBuilder implements PnDcp_Block.PnDcp_BlockBuilder {
+ public static ComplexOfComplexUsageA staticParse(ReadBuffer readBuffer) throws ParseException {
+ readBuffer.pullContext("ComplexOfComplexUsageA");
+ PositionAware positionAware = readBuffer;
+ int startPos = positionAware.getPos();
+ int curPos;
- public PnDcp_Block_ALLSelectorBuilder() {}
+ ComplexOfComplexUsageB b =
+ readSimpleField(
+ "b",
+ new DataReaderComplexDefault<>(
+ () -> ComplexOfComplexUsageB.staticParse(readBuffer), readBuffer));
- public PnDcp_Block_ALLSelector build() {
- PnDcp_Block_ALLSelector pnDcp_Block_ALLSelector = new PnDcp_Block_ALLSelector();
- return pnDcp_Block_ALLSelector;
- }
+ readBuffer.closeContext("ComplexOfComplexUsageA");
+ // Create the instance
+ ComplexOfComplexUsageA _complexOfComplexUsageA;
+ _complexOfComplexUsageA = new ComplexOfComplexUsageA(b);
+ return _complexOfComplexUsageA;
}
@Override
@@ -99,16 +106,16 @@ public class PnDcp_Block_ALLSelector extends PnDcp_Block implements Message {
if (this == o) {
return true;
}
- if (!(o instanceof PnDcp_Block_ALLSelector)) {
+ if (!(o instanceof ComplexOfComplexUsageA)) {
return false;
}
- PnDcp_Block_ALLSelector that = (PnDcp_Block_ALLSelector) o;
- return super.equals(that) && true;
+ ComplexOfComplexUsageA that = (ComplexOfComplexUsageA) o;
+ return (getB() == that.getB()) && true;
}
@Override
public int hashCode() {
- return Objects.hash(super.hashCode());
+ return Objects.hash(getB());
}
@Override
diff --git a/plc4j/drivers/c-bus/src/main/generated/org/apache/plc4x/java/cbus/readwrite/StatusRequest.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ComplexOfComplexUsageB.java
similarity index 55%
copy from plc4j/drivers/c-bus/src/main/generated/org/apache/plc4x/java/cbus/readwrite/StatusRequest.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ComplexOfComplexUsageB.java
index 1420a5c375..9fe642e7f1 100644
--- a/plc4j/drivers/c-bus/src/main/generated/org/apache/plc4x/java/cbus/readwrite/StatusRequest.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ComplexOfComplexUsageB.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.cbus.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,34 +35,38 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public abstract class StatusRequest implements Message {
-
- // Abstract accessors for discriminator values.
+public class ComplexOfComplexUsageB implements Message {
// Properties.
- protected final byte statusType;
+ protected final ComplexOfComplexUsageC c;
+ protected final List<ComplexOfComplexUsageD> ds;
- public StatusRequest(byte statusType) {
+ public ComplexOfComplexUsageB(ComplexOfComplexUsageC c, List<ComplexOfComplexUsageD> ds) {
super();
- this.statusType = statusType;
+ this.c = c;
+ this.ds = ds;
}
- public byte getStatusType() {
- return statusType;
+ public ComplexOfComplexUsageC getC() {
+ return c;
}
- protected abstract void serializeStatusRequestChild(WriteBuffer writeBuffer)
- throws SerializationException;
+ public List<ComplexOfComplexUsageD> getDs() {
+ return ds;
+ }
public void serialize(WriteBuffer writeBuffer) throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("StatusRequest");
+ writeBuffer.pushContext("ComplexOfComplexUsageB");
+
+ // Optional Field (c) (Can be skipped, if the value is null)
+ writeOptionalField("c", c, new DataWriterComplexDefault<>(writeBuffer));
- // Switch field (Serialize the sub-type)
- serializeStatusRequestChild(writeBuffer);
+ // Array Field (ds)
+ writeComplexTypeArrayField("ds", ds, writeBuffer);
- writeBuffer.popContext("StatusRequest");
+ writeBuffer.popContext("ComplexOfComplexUsageB");
}
@Override
@@ -73,53 +77,55 @@ public abstract class StatusRequest implements Message {
@Override
public int getLengthInBits() {
int lengthInBits = 0;
- StatusRequest _value = this;
+ ComplexOfComplexUsageB _value = this;
+
+ // Optional Field (c)
+ if (c != null) {
+ lengthInBits += c.getLengthInBits();
+ }
- // Length of sub-type elements will be added by sub-type...
+ // Array field
+ if (ds != null) {
+ int i = 0;
+ for (ComplexOfComplexUsageD element : ds) {
+ boolean last = ++i >= ds.size();
+ lengthInBits += element.getLengthInBits();
+ }
+ }
return lengthInBits;
}
- public static StatusRequest staticParse(ReadBuffer readBuffer, Object... args)
+ public static ComplexOfComplexUsageB staticParse(ReadBuffer readBuffer, Object... args)
throws ParseException {
PositionAware positionAware = readBuffer;
return staticParse(readBuffer);
}
- public static StatusRequest staticParse(ReadBuffer readBuffer) throws ParseException {
- readBuffer.pullContext("StatusRequest");
+ public static ComplexOfComplexUsageB staticParse(ReadBuffer readBuffer) throws ParseException {
+ readBuffer.pullContext("ComplexOfComplexUsageB");
PositionAware positionAware = readBuffer;
int startPos = positionAware.getPos();
int curPos;
- byte statusType = readPeekField("statusType", readByte(readBuffer, 8));
+ ComplexOfComplexUsageC c =
+ readOptionalField(
+ "c",
+ new DataReaderComplexDefault<>(
+ () -> ComplexOfComplexUsageC.staticParse(readBuffer), readBuffer));
- // Switch Field (Depending on the discriminator values, passes the instantiation to a sub-type)
- StatusRequestBuilder builder = null;
- if (EvaluationHelper.equals(statusType, (byte) 0x7A)) {
- builder = StatusRequestBinaryState.staticParseBuilder(readBuffer);
- } else if (EvaluationHelper.equals(statusType, (byte) 0xFA)) {
- builder = StatusRequestBinaryStateDeprecated.staticParseBuilder(readBuffer);
- } else if (EvaluationHelper.equals(statusType, (byte) 0x73)) {
- builder = StatusRequestLevel.staticParseBuilder(readBuffer);
- }
- if (builder == null) {
- throw new ParseException(
- "Unsupported case for discriminated type"
- + " parameters ["
- + "statusType="
- + statusType
- + "]");
- }
+ List<ComplexOfComplexUsageD> ds =
+ readCountArrayField(
+ "ds",
+ new DataReaderComplexDefault<>(
+ () -> ComplexOfComplexUsageD.staticParse(readBuffer), readBuffer),
+ 5);
- readBuffer.closeContext("StatusRequest");
+ readBuffer.closeContext("ComplexOfComplexUsageB");
// Create the instance
- StatusRequest _statusRequest = builder.build(statusType);
- return _statusRequest;
- }
-
- public static interface StatusRequestBuilder {
- StatusRequest build(byte statusType);
+ ComplexOfComplexUsageB _complexOfComplexUsageB;
+ _complexOfComplexUsageB = new ComplexOfComplexUsageB(c, ds);
+ return _complexOfComplexUsageB;
}
@Override
@@ -127,16 +133,16 @@ public abstract class StatusRequest implements Message {
if (this == o) {
return true;
}
- if (!(o instanceof StatusRequest)) {
+ if (!(o instanceof ComplexOfComplexUsageB)) {
return false;
}
- StatusRequest that = (StatusRequest) o;
- return (getStatusType() == that.getStatusType()) && true;
+ ComplexOfComplexUsageB that = (ComplexOfComplexUsageB) o;
+ return (getC() == that.getC()) && (getDs() == that.getDs()) && true;
}
@Override
public int hashCode() {
- return Objects.hash(getStatusType());
+ return Objects.hash(getC(), getDs());
}
@Override
diff --git a/plc4j/drivers/knxnetip/src/main/generated/org/apache/plc4x/java/knxnetip/readwrite/TDataIndividualInd.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ComplexOfComplexUsageC.java
similarity index 62%
copy from plc4j/drivers/knxnetip/src/main/generated/org/apache/plc4x/java/knxnetip/readwrite/TDataIndividualInd.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ComplexOfComplexUsageC.java
index 979834ea88..fc1778d5ed 100644
--- a/plc4j/drivers/knxnetip/src/main/generated/org/apache/plc4x/java/knxnetip/readwrite/TDataIndividualInd.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ComplexOfComplexUsageC.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.knxnetip.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,28 +35,29 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public class TDataIndividualInd extends CEMI implements Message {
+public class ComplexOfComplexUsageC implements Message {
- // Accessors for discriminator values.
- public Short getMessageCode() {
- return (short) 0x94;
- }
+ // Properties.
+ protected final short irrelevant;
- // Arguments.
- protected final Integer size;
+ public ComplexOfComplexUsageC(short irrelevant) {
+ super();
+ this.irrelevant = irrelevant;
+ }
- public TDataIndividualInd(Integer size) {
- super(size);
- this.size = size;
+ public short getIrrelevant() {
+ return irrelevant;
}
- @Override
- protected void serializeCEMIChild(WriteBuffer writeBuffer) throws SerializationException {
+ public void serialize(WriteBuffer writeBuffer) throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("TDataIndividualInd");
+ writeBuffer.pushContext("ComplexOfComplexUsageC");
- writeBuffer.popContext("TDataIndividualInd");
+ // Simple Field (irrelevant)
+ writeSimpleField("irrelevant", irrelevant, writeUnsignedShort(writeBuffer, 8));
+
+ writeBuffer.popContext("ComplexOfComplexUsageC");
}
@Override
@@ -66,38 +67,34 @@ public class TDataIndividualInd extends CEMI implements Message {
@Override
public int getLengthInBits() {
- int lengthInBits = super.getLengthInBits();
- TDataIndividualInd _value = this;
+ int lengthInBits = 0;
+ ComplexOfComplexUsageC _value = this;
+
+ // Simple field (irrelevant)
+ lengthInBits += 8;
return lengthInBits;
}
- public static TDataIndividualIndBuilder staticParseBuilder(ReadBuffer readBuffer, Integer size)
+ public static ComplexOfComplexUsageC staticParse(ReadBuffer readBuffer, Object... args)
throws ParseException {
- readBuffer.pullContext("TDataIndividualInd");
PositionAware positionAware = readBuffer;
- int startPos = positionAware.getPos();
- int curPos;
-
- readBuffer.closeContext("TDataIndividualInd");
- // Create the instance
- return new TDataIndividualIndBuilder(size);
+ return staticParse(readBuffer);
}
- public static class TDataIndividualIndBuilder implements CEMI.CEMIBuilder {
- private final Integer size;
-
- public TDataIndividualIndBuilder(Integer size) {
-
- this.size = size;
- }
-
- public TDataIndividualInd build(Integer size) {
+ public static ComplexOfComplexUsageC staticParse(ReadBuffer readBuffer) throws ParseException {
+ readBuffer.pullContext("ComplexOfComplexUsageC");
+ PositionAware positionAware = readBuffer;
+ int startPos = positionAware.getPos();
+ int curPos;
- TDataIndividualInd tDataIndividualInd = new TDataIndividualInd(size);
+ short irrelevant = readSimpleField("irrelevant", readUnsignedShort(readBuffer, 8));
- return tDataIndividualInd;
- }
+ readBuffer.closeContext("ComplexOfComplexUsageC");
+ // Create the instance
+ ComplexOfComplexUsageC _complexOfComplexUsageC;
+ _complexOfComplexUsageC = new ComplexOfComplexUsageC(irrelevant);
+ return _complexOfComplexUsageC;
}
@Override
@@ -105,16 +102,16 @@ public class TDataIndividualInd extends CEMI implements Message {
if (this == o) {
return true;
}
- if (!(o instanceof TDataIndividualInd)) {
+ if (!(o instanceof ComplexOfComplexUsageC)) {
return false;
}
- TDataIndividualInd that = (TDataIndividualInd) o;
- return super.equals(that) && true;
+ ComplexOfComplexUsageC that = (ComplexOfComplexUsageC) o;
+ return (getIrrelevant() == that.getIrrelevant()) && true;
}
@Override
public int hashCode() {
- return Objects.hash(super.hashCode());
+ return Objects.hash(getIrrelevant());
}
@Override
diff --git a/plc4j/drivers/profinet/src/main/generated/org/apache/plc4x/java/profinet/readwrite/PnDcp_Block_ALLSelector.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ComplexOfComplexUsageD.java
similarity index 61%
copy from plc4j/drivers/profinet/src/main/generated/org/apache/plc4x/java/profinet/readwrite/PnDcp_Block_ALLSelector.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ComplexOfComplexUsageD.java
index a4b2a26fcb..1ae7e04b52 100644
--- a/plc4j/drivers/profinet/src/main/generated/org/apache/plc4x/java/profinet/readwrite/PnDcp_Block_ALLSelector.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ComplexOfComplexUsageD.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.profinet.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,28 +35,29 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public class PnDcp_Block_ALLSelector extends PnDcp_Block implements Message {
+public class ComplexOfComplexUsageD implements Message {
- // Accessors for discriminator values.
- public PnDcp_BlockOptions getOption() {
- return PnDcp_BlockOptions.ALL_SELECTOR_OPTION;
- }
+ // Properties.
+ protected final short irrelevant;
- public Short getSuboption() {
- return (short) 0xFF;
+ public ComplexOfComplexUsageD(short irrelevant) {
+ super();
+ this.irrelevant = irrelevant;
}
- public PnDcp_Block_ALLSelector() {
- super();
+ public short getIrrelevant() {
+ return irrelevant;
}
- @Override
- protected void serializePnDcp_BlockChild(WriteBuffer writeBuffer) throws SerializationException {
+ public void serialize(WriteBuffer writeBuffer) throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("PnDcp_Block_ALLSelector");
+ writeBuffer.pushContext("ComplexOfComplexUsageD");
- writeBuffer.popContext("PnDcp_Block_ALLSelector");
+ // Simple Field (irrelevant)
+ writeSimpleField("irrelevant", irrelevant, writeUnsignedShort(writeBuffer, 8));
+
+ writeBuffer.popContext("ComplexOfComplexUsageD");
}
@Override
@@ -66,32 +67,34 @@ public class PnDcp_Block_ALLSelector extends PnDcp_Block implements Message {
@Override
public int getLengthInBits() {
- int lengthInBits = super.getLengthInBits();
- PnDcp_Block_ALLSelector _value = this;
+ int lengthInBits = 0;
+ ComplexOfComplexUsageD _value = this;
+
+ // Simple field (irrelevant)
+ lengthInBits += 8;
return lengthInBits;
}
- public static PnDcp_Block_ALLSelectorBuilder staticParseBuilder(ReadBuffer readBuffer)
+ public static ComplexOfComplexUsageD staticParse(ReadBuffer readBuffer, Object... args)
throws ParseException {
- readBuffer.pullContext("PnDcp_Block_ALLSelector");
PositionAware positionAware = readBuffer;
- int startPos = positionAware.getPos();
- int curPos;
-
- readBuffer.closeContext("PnDcp_Block_ALLSelector");
- // Create the instance
- return new PnDcp_Block_ALLSelectorBuilder();
+ return staticParse(readBuffer);
}
- public static class PnDcp_Block_ALLSelectorBuilder implements PnDcp_Block.PnDcp_BlockBuilder {
+ public static ComplexOfComplexUsageD staticParse(ReadBuffer readBuffer) throws ParseException {
+ readBuffer.pullContext("ComplexOfComplexUsageD");
+ PositionAware positionAware = readBuffer;
+ int startPos = positionAware.getPos();
+ int curPos;
- public PnDcp_Block_ALLSelectorBuilder() {}
+ short irrelevant = readSimpleField("irrelevant", readUnsignedShort(readBuffer, 8));
- public PnDcp_Block_ALLSelector build() {
- PnDcp_Block_ALLSelector pnDcp_Block_ALLSelector = new PnDcp_Block_ALLSelector();
- return pnDcp_Block_ALLSelector;
- }
+ readBuffer.closeContext("ComplexOfComplexUsageD");
+ // Create the instance
+ ComplexOfComplexUsageD _complexOfComplexUsageD;
+ _complexOfComplexUsageD = new ComplexOfComplexUsageD(irrelevant);
+ return _complexOfComplexUsageD;
}
@Override
@@ -99,16 +102,16 @@ public class PnDcp_Block_ALLSelector extends PnDcp_Block implements Message {
if (this == o) {
return true;
}
- if (!(o instanceof PnDcp_Block_ALLSelector)) {
+ if (!(o instanceof ComplexOfComplexUsageD)) {
return false;
}
- PnDcp_Block_ALLSelector that = (PnDcp_Block_ALLSelector) o;
- return super.equals(that) && true;
+ ComplexOfComplexUsageD that = (ComplexOfComplexUsageD) o;
+ return (getIrrelevant() == that.getIrrelevant()) && true;
}
@Override
public int hashCode() {
- return Objects.hash(super.hashCode());
+ return Objects.hash(getIrrelevant());
}
@Override
diff --git a/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ConstTypeTest.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ConstTypeTest.java
new file mode 100644
index 0000000000..170cd18df5
--- /dev/null
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ConstTypeTest.java
@@ -0,0 +1,196 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.plc4x.java.test.readwrite;
+
+import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
+import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
+import static org.apache.plc4x.java.spi.codegen.io.DataReaderFactory.*;
+import static org.apache.plc4x.java.spi.codegen.io.DataWriterFactory.*;
+import static org.apache.plc4x.java.spi.generation.StaticHelper.*;
+
+import java.time.*;
+import java.util.*;
+import org.apache.plc4x.java.api.exceptions.*;
+import org.apache.plc4x.java.api.value.*;
+import org.apache.plc4x.java.spi.codegen.*;
+import org.apache.plc4x.java.spi.codegen.fields.*;
+import org.apache.plc4x.java.spi.codegen.io.*;
+import org.apache.plc4x.java.spi.generation.*;
+
+// Code generated by code-generation. DO NOT EDIT.
+
+public class ConstTypeTest implements Message {
+
+ // Constant values.
+ public static final Boolean BITFIELD = true;
+ public static final Byte INTFIELD = 100;
+ public static final Short UINTFIELD = 100;
+ public static final Float FLOATFIELD = 100.0F;
+ public static final Double DOUBLEFIELD = 100.0;
+ public static final String STRINGFIELD = "HELLO TODDY";
+
+ public ConstTypeTest() {
+ super();
+ }
+
+ public boolean getBitField() {
+ return BITFIELD;
+ }
+
+ public byte getIntField() {
+ return INTFIELD;
+ }
+
+ public short getUintField() {
+ return UINTFIELD;
+ }
+
+ public float getFloatField() {
+ return FLOATFIELD;
+ }
+
+ public double getDoubleField() {
+ return DOUBLEFIELD;
+ }
+
+ public String getStringField() {
+ return STRINGFIELD;
+ }
+
+ public void serialize(WriteBuffer writeBuffer) throws SerializationException {
+ PositionAware positionAware = writeBuffer;
+ int startPos = positionAware.getPos();
+ writeBuffer.pushContext("ConstTypeTest");
+
+ // Const Field (bitField)
+ writeConstField("bitField", BITFIELD, writeBoolean(writeBuffer));
+
+ // Const Field (intField)
+ writeConstField("intField", INTFIELD, writeSignedByte(writeBuffer, 8));
+
+ // Const Field (uintField)
+ writeConstField("uintField", UINTFIELD, writeUnsignedShort(writeBuffer, 8));
+
+ // Const Field (floatField)
+ writeConstField("floatField", FLOATFIELD, writeFloat(writeBuffer, 32));
+
+ // Const Field (doubleField)
+ writeConstField("doubleField", DOUBLEFIELD, writeDouble(writeBuffer, 64));
+
+ // Const Field (stringField)
+ writeConstField("stringField", STRINGFIELD, writeString(writeBuffer, 8));
+
+ writeBuffer.popContext("ConstTypeTest");
+ }
+
+ @Override
+ public int getLengthInBytes() {
+ return (int) Math.ceil((float) getLengthInBits() / 8.0);
+ }
+
+ @Override
+ public int getLengthInBits() {
+ int lengthInBits = 0;
+ ConstTypeTest _value = this;
+
+ // Const Field (bitField)
+ lengthInBits += 1;
+
+ // Const Field (intField)
+ lengthInBits += 8;
+
+ // Const Field (uintField)
+ lengthInBits += 8;
+
+ // Const Field (floatField)
+ lengthInBits += 32;
+
+ // Const Field (doubleField)
+ lengthInBits += 64;
+
+ // Const Field (stringField)
+ lengthInBits += 8;
+
+ return lengthInBits;
+ }
+
+ public static ConstTypeTest staticParse(ReadBuffer readBuffer, Object... args)
+ throws ParseException {
+ PositionAware positionAware = readBuffer;
+ return staticParse(readBuffer);
+ }
+
+ public static ConstTypeTest staticParse(ReadBuffer readBuffer) throws ParseException {
+ readBuffer.pullContext("ConstTypeTest");
+ PositionAware positionAware = readBuffer;
+ int startPos = positionAware.getPos();
+ int curPos;
+
+ boolean bitField = readConstField("bitField", readBoolean(readBuffer), ConstTypeTest.BITFIELD);
+
+ byte intField =
+ readConstField("intField", readSignedByte(readBuffer, 8), ConstTypeTest.INTFIELD);
+
+ short uintField =
+ readConstField("uintField", readUnsignedShort(readBuffer, 8), ConstTypeTest.UINTFIELD);
+
+ float floatField =
+ readConstField("floatField", readFloat(readBuffer, 32), ConstTypeTest.FLOATFIELD);
+
+ double doubleField =
+ readConstField("doubleField", readDouble(readBuffer, 64), ConstTypeTest.DOUBLEFIELD);
+
+ String stringField =
+ readConstField("stringField", readString(readBuffer, 8), ConstTypeTest.STRINGFIELD);
+
+ readBuffer.closeContext("ConstTypeTest");
+ // Create the instance
+ ConstTypeTest _constTypeTest;
+ _constTypeTest = new ConstTypeTest();
+ return _constTypeTest;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (!(o instanceof ConstTypeTest)) {
+ return false;
+ }
+ ConstTypeTest that = (ConstTypeTest) o;
+ return true;
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash();
+ }
+
+ @Override
+ public String toString() {
+ WriteBufferBoxBased writeBufferBoxBased = new WriteBufferBoxBased(true, true);
+ try {
+ writeBufferBoxBased.writeSerializable(this);
+ } catch (SerializationException e) {
+ throw new RuntimeException(e);
+ }
+ return "\n" + writeBufferBoxBased.getBox().toString() + "\n";
+ }
+}
diff --git a/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/DataIOType.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/DataIOType.java
new file mode 100644
index 0000000000..4872ae7fd4
--- /dev/null
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/DataIOType.java
@@ -0,0 +1,110 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.plc4x.java.test.readwrite;
+
+import static org.apache.plc4x.java.spi.generation.StaticHelper.*;
+
+import java.time.*;
+import java.util.*;
+import org.apache.plc4x.java.api.value.*;
+import org.apache.plc4x.java.spi.generation.ByteOrder;
+import org.apache.plc4x.java.spi.generation.EvaluationHelper;
+import org.apache.plc4x.java.spi.generation.ParseException;
+import org.apache.plc4x.java.spi.generation.ReadBuffer;
+import org.apache.plc4x.java.spi.generation.SerializationException;
+import org.apache.plc4x.java.spi.generation.WriteBuffer;
+import org.apache.plc4x.java.spi.values.*;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+// Code generated by code-generation. DO NOT EDIT.
+
+public class DataIOType {
+
+ private static final Logger LOGGER = LoggerFactory.getLogger(DataIOType.class);
+
+ public static PlcValue staticParse(ReadBuffer readBuffer, EnumType dataType)
+ throws ParseException {
+ if (EvaluationHelper.equals(dataType, EnumType.BOOL)) { // BOOL
+
+ // Simple Field (value)
+ Boolean value = /*TODO: migrate me*/ /*TODO: migrate me*/ readBuffer.readBit("");
+
+ return new PlcBOOL(value);
+ } else if (EvaluationHelper.equals(dataType, EnumType.UINT)) { // USINT
+
+ // Simple Field (value)
+ Short value = /*TODO: migrate me*/ /*TODO: migrate me*/ readBuffer.readUnsignedShort("", 8);
+
+ return new PlcUSINT(value);
+ } else if (EvaluationHelper.equals(dataType, EnumType.INT)) { // UINT
+
+ // Simple Field (value)
+ Integer value = /*TODO: migrate me*/ /*TODO: migrate me*/ readBuffer.readUnsignedInt("", 16);
+
+ return new PlcUINT(value);
+ }
+ return null;
+ }
+
+ public static void staticSerialize(WriteBuffer writeBuffer, PlcValue _value, EnumType dataType)
+ throws SerializationException {
+ staticSerialize(writeBuffer, _value, dataType, ByteOrder.BIG_ENDIAN);
+ }
+
+ public static void staticSerialize(
+ WriteBuffer writeBuffer, PlcValue _value, EnumType dataType, ByteOrder byteOrder)
+ throws SerializationException {
+ if (EvaluationHelper.equals(dataType, EnumType.BOOL)) { // BOOL
+ // Simple Field (value)
+ boolean value = (boolean) _value.getBoolean();
+ /*TODO: migrate me*/
+ /*TODO: migrate me*/ writeBuffer.writeBit("", (boolean) (value));
+ } else if (EvaluationHelper.equals(dataType, EnumType.UINT)) { // USINT
+ // Simple Field (value)
+ short value = (short) _value.getShort();
+ /*TODO: migrate me*/
+ /*TODO: migrate me*/ writeBuffer.writeUnsignedShort("", 8, ((Number) (value)).shortValue());
+ } else if (EvaluationHelper.equals(dataType, EnumType.INT)) { // UINT
+ // Simple Field (value)
+ int value = (int) _value.getInt();
+ /*TODO: migrate me*/
+ /*TODO: migrate me*/ writeBuffer.writeUnsignedInt("", 16, ((Number) (value)).intValue());
+ }
+ }
+
+ public static int getLengthInBytes(PlcValue _value, EnumType dataType) {
+ return (int) Math.ceil((float) getLengthInBits(_value, dataType) / 8.0);
+ }
+
+ public static int getLengthInBits(PlcValue _value, EnumType dataType) {
+ int sizeInBits = 0;
+ if (EvaluationHelper.equals(dataType, EnumType.BOOL)) { // BOOL
+ // Simple Field (value)
+ sizeInBits += 1;
+ } else if (EvaluationHelper.equals(dataType, EnumType.UINT)) { // USINT
+ // Simple Field (value)
+ sizeInBits += 8;
+ } else if (EvaluationHelper.equals(dataType, EnumType.INT)) { // UINT
+ // Simple Field (value)
+ sizeInBits += 16;
+ }
+ return sizeInBits;
+ }
+}
diff --git a/plc4j/drivers/profinet/src/main/generated/org/apache/plc4x/java/profinet/readwrite/Ethernet_FramePayload.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedType.java
similarity index 60%
copy from plc4j/drivers/profinet/src/main/generated/org/apache/plc4x/java/profinet/readwrite/Ethernet_FramePayload.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedType.java
index d73fc7480c..5f3acacec1 100644
--- a/plc4j/drivers/profinet/src/main/generated/org/apache/plc4x/java/profinet/readwrite/Ethernet_FramePayload.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedType.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.profinet.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,30 +35,35 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public abstract class Ethernet_FramePayload implements Message {
+public abstract class EnumDiscriminatedType implements Message {
// Abstract accessors for discriminator values.
- public abstract Integer getPacketType();
+ public abstract EnumType getDiscr();
- public Ethernet_FramePayload() {
+ public EnumDiscriminatedType() {
super();
}
- protected abstract void serializeEthernet_FramePayloadChild(WriteBuffer writeBuffer)
+ protected abstract void serializeEnumDiscriminatedTypeChild(WriteBuffer writeBuffer)
throws SerializationException;
public void serialize(WriteBuffer writeBuffer) throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("Ethernet_FramePayload");
+ writeBuffer.pushContext("EnumDiscriminatedType");
- // Discriminator Field (packetType) (Used as input to a switch field)
- writeDiscriminatorField("packetType", getPacketType(), writeUnsignedInt(writeBuffer, 16));
+ // Discriminator Field (discr) (Used as input to a switch field)
+ writeDiscriminatorEnumField(
+ "discr",
+ "EnumType",
+ getDiscr(),
+ new DataWriterEnumDefault<>(
+ EnumType::getValue, EnumType::name, writeUnsignedShort(writeBuffer, 8)));
// Switch field (Serialize the sub-type)
- serializeEthernet_FramePayloadChild(writeBuffer);
+ serializeEnumDiscriminatedTypeChild(writeBuffer);
- writeBuffer.popContext("Ethernet_FramePayload");
+ writeBuffer.popContext("EnumDiscriminatedType");
}
@Override
@@ -69,56 +74,55 @@ public abstract class Ethernet_FramePayload implements Message {
@Override
public int getLengthInBits() {
int lengthInBits = 0;
- Ethernet_FramePayload _value = this;
+ EnumDiscriminatedType _value = this;
- // Discriminator Field (packetType)
- lengthInBits += 16;
+ // Discriminator Field (discr)
+ lengthInBits += 8;
// Length of sub-type elements will be added by sub-type...
return lengthInBits;
}
- public static Ethernet_FramePayload staticParse(ReadBuffer readBuffer, Object... args)
+ public static EnumDiscriminatedType staticParse(ReadBuffer readBuffer, Object... args)
throws ParseException {
PositionAware positionAware = readBuffer;
return staticParse(readBuffer);
}
- public static Ethernet_FramePayload staticParse(ReadBuffer readBuffer) throws ParseException {
- readBuffer.pullContext("Ethernet_FramePayload");
+ public static EnumDiscriminatedType staticParse(ReadBuffer readBuffer) throws ParseException {
+ readBuffer.pullContext("EnumDiscriminatedType");
PositionAware positionAware = readBuffer;
int startPos = positionAware.getPos();
int curPos;
- int packetType = readDiscriminatorField("packetType", readUnsignedInt(readBuffer, 16));
+ EnumType discr =
+ readDiscriminatorField(
+ "discr",
+ new DataReaderEnumDefault<>(EnumType::enumForValue, readUnsignedShort(readBuffer, 8)));
// Switch Field (Depending on the discriminator values, passes the instantiation to a sub-type)
- Ethernet_FramePayloadBuilder builder = null;
- if (EvaluationHelper.equals(packetType, (int) 0x0800)) {
- builder = Ethernet_FramePayload_IPv4.staticParseBuilder(readBuffer);
- } else if (EvaluationHelper.equals(packetType, (int) 0x8100)) {
- builder = Ethernet_FramePayload_VirtualLan.staticParseBuilder(readBuffer);
- } else if (EvaluationHelper.equals(packetType, (int) 0x8892)) {
- builder = Ethernet_FramePayload_PnDcp.staticParseBuilder(readBuffer);
+ EnumDiscriminatedTypeBuilder builder = null;
+ if (EvaluationHelper.equals(discr, EnumType.BOOL)) {
+ builder = EnumDiscriminatedTypeA.staticParseEnumDiscriminatedTypeBuilder(readBuffer);
+ } else if (EvaluationHelper.equals(discr, EnumType.UINT)) {
+ builder = EnumDiscriminatedTypeB.staticParseEnumDiscriminatedTypeBuilder(readBuffer);
+ } else if (EvaluationHelper.equals(discr, EnumType.INT)) {
+ builder = EnumDiscriminatedTypeC.staticParseEnumDiscriminatedTypeBuilder(readBuffer);
}
if (builder == null) {
throw new ParseException(
- "Unsupported case for discriminated type"
- + " parameters ["
- + "packetType="
- + packetType
- + "]");
+ "Unsupported case for discriminated type" + " parameters [" + "discr=" + discr + "]");
}
- readBuffer.closeContext("Ethernet_FramePayload");
+ readBuffer.closeContext("EnumDiscriminatedType");
// Create the instance
- Ethernet_FramePayload _ethernet_FramePayload = builder.build();
- return _ethernet_FramePayload;
+ EnumDiscriminatedType _enumDiscriminatedType = builder.build();
+ return _enumDiscriminatedType;
}
- public static interface Ethernet_FramePayloadBuilder {
- Ethernet_FramePayload build();
+ public interface EnumDiscriminatedTypeBuilder {
+ EnumDiscriminatedType build();
}
@Override
@@ -126,10 +130,10 @@ public abstract class Ethernet_FramePayload implements Message {
if (this == o) {
return true;
}
- if (!(o instanceof Ethernet_FramePayload)) {
+ if (!(o instanceof EnumDiscriminatedType)) {
return false;
}
- Ethernet_FramePayload that = (Ethernet_FramePayload) o;
+ EnumDiscriminatedType that = (EnumDiscriminatedType) o;
return true;
}
diff --git a/plc4j/drivers/profinet/src/main/generated/org/apache/plc4x/java/profinet/readwrite/DceRpc_InterfaceUuid_ParameterInterface.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeA.java
similarity index 60%
copy from plc4j/drivers/profinet/src/main/generated/org/apache/plc4x/java/profinet/readwrite/DceRpc_InterfaceUuid_ParameterInterface.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeA.java
index 944efcc8f2..9cc198650a 100644
--- a/plc4j/drivers/profinet/src/main/generated/org/apache/plc4x/java/profinet/readwrite/DceRpc_InterfaceUuid_ParameterInterface.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeA.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.profinet.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,26 +35,36 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public class DceRpc_InterfaceUuid_ParameterInterface extends DceRpc_InterfaceUuid
- implements Message {
+public class EnumDiscriminatedTypeA extends EnumDiscriminatedType implements Message {
// Accessors for discriminator values.
- public Long getInterfaceType() {
- return (long) 0xDEA00004L;
+ public EnumType getDiscr() {
+ return EnumType.BOOL;
}
- public DceRpc_InterfaceUuid_ParameterInterface() {
+ // Properties.
+ protected final short simpA;
+
+ public EnumDiscriminatedTypeA(short simpA) {
super();
+ this.simpA = simpA;
+ }
+
+ public short getSimpA() {
+ return simpA;
}
@Override
- protected void serializeDceRpc_InterfaceUuidChild(WriteBuffer writeBuffer)
+ protected void serializeEnumDiscriminatedTypeChild(WriteBuffer writeBuffer)
throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("DceRpc_InterfaceUuid_ParameterInterface");
+ writeBuffer.pushContext("EnumDiscriminatedTypeA");
+
+ // Simple Field (simpA)
+ writeSimpleField("simpA", simpA, writeUnsignedShort(writeBuffer, 8));
- writeBuffer.popContext("DceRpc_InterfaceUuid_ParameterInterface");
+ writeBuffer.popContext("EnumDiscriminatedTypeA");
}
@Override
@@ -65,32 +75,40 @@ public class DceRpc_InterfaceUuid_ParameterInterface extends DceRpc_InterfaceUui
@Override
public int getLengthInBits() {
int lengthInBits = super.getLengthInBits();
- DceRpc_InterfaceUuid_ParameterInterface _value = this;
+ EnumDiscriminatedTypeA _value = this;
+
+ // Simple field (simpA)
+ lengthInBits += 8;
return lengthInBits;
}
- public static DceRpc_InterfaceUuid_ParameterInterfaceBuilder staticParseBuilder(
+ public static EnumDiscriminatedTypeBuilder staticParseEnumDiscriminatedTypeBuilder(
ReadBuffer readBuffer) throws ParseException {
- readBuffer.pullContext("DceRpc_InterfaceUuid_ParameterInterface");
+ readBuffer.pullContext("EnumDiscriminatedTypeA");
PositionAware positionAware = readBuffer;
int startPos = positionAware.getPos();
int curPos;
- readBuffer.closeContext("DceRpc_InterfaceUuid_ParameterInterface");
+ short simpA = readSimpleField("simpA", readUnsignedShort(readBuffer, 8));
+
+ readBuffer.closeContext("EnumDiscriminatedTypeA");
// Create the instance
- return new DceRpc_InterfaceUuid_ParameterInterfaceBuilder();
+ return new EnumDiscriminatedTypeABuilderImpl(simpA);
}
- public static class DceRpc_InterfaceUuid_ParameterInterfaceBuilder
- implements DceRpc_InterfaceUuid.DceRpc_InterfaceUuidBuilder {
+ public static class EnumDiscriminatedTypeABuilderImpl
+ implements EnumDiscriminatedType.EnumDiscriminatedTypeBuilder {
+ private final short simpA;
- public DceRpc_InterfaceUuid_ParameterInterfaceBuilder() {}
+ public EnumDiscriminatedTypeABuilderImpl(short simpA) {
+
+ this.simpA = simpA;
+ }
- public DceRpc_InterfaceUuid_ParameterInterface build() {
- DceRpc_InterfaceUuid_ParameterInterface dceRpc_InterfaceUuid_ParameterInterface =
- new DceRpc_InterfaceUuid_ParameterInterface();
- return dceRpc_InterfaceUuid_ParameterInterface;
+ public EnumDiscriminatedTypeA build() {
+ EnumDiscriminatedTypeA enumDiscriminatedTypeA = new EnumDiscriminatedTypeA(simpA);
+ return enumDiscriminatedTypeA;
}
}
@@ -99,16 +117,16 @@ public class DceRpc_InterfaceUuid_ParameterInterface extends DceRpc_InterfaceUui
if (this == o) {
return true;
}
- if (!(o instanceof DceRpc_InterfaceUuid_ParameterInterface)) {
+ if (!(o instanceof EnumDiscriminatedTypeA)) {
return false;
}
- DceRpc_InterfaceUuid_ParameterInterface that = (DceRpc_InterfaceUuid_ParameterInterface) o;
- return super.equals(that) && true;
+ EnumDiscriminatedTypeA that = (EnumDiscriminatedTypeA) o;
+ return (getSimpA() == that.getSimpA()) && super.equals(that) && true;
}
@Override
public int hashCode() {
- return Objects.hash(super.hashCode());
+ return Objects.hash(super.hashCode(), getSimpA());
}
@Override
diff --git a/plc4j/drivers/profinet/src/main/generated/org/apache/plc4x/java/profinet/readwrite/DceRpc_InterfaceUuid_ParameterInterface.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeB.java
similarity index 60%
copy from plc4j/drivers/profinet/src/main/generated/org/apache/plc4x/java/profinet/readwrite/DceRpc_InterfaceUuid_ParameterInterface.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeB.java
index 944efcc8f2..09a5b9644d 100644
--- a/plc4j/drivers/profinet/src/main/generated/org/apache/plc4x/java/profinet/readwrite/DceRpc_InterfaceUuid_ParameterInterface.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeB.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.profinet.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,26 +35,36 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public class DceRpc_InterfaceUuid_ParameterInterface extends DceRpc_InterfaceUuid
- implements Message {
+public class EnumDiscriminatedTypeB extends EnumDiscriminatedType implements Message {
// Accessors for discriminator values.
- public Long getInterfaceType() {
- return (long) 0xDEA00004L;
+ public EnumType getDiscr() {
+ return EnumType.UINT;
}
- public DceRpc_InterfaceUuid_ParameterInterface() {
+ // Properties.
+ protected final short simpB;
+
+ public EnumDiscriminatedTypeB(short simpB) {
super();
+ this.simpB = simpB;
+ }
+
+ public short getSimpB() {
+ return simpB;
}
@Override
- protected void serializeDceRpc_InterfaceUuidChild(WriteBuffer writeBuffer)
+ protected void serializeEnumDiscriminatedTypeChild(WriteBuffer writeBuffer)
throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("DceRpc_InterfaceUuid_ParameterInterface");
+ writeBuffer.pushContext("EnumDiscriminatedTypeB");
+
+ // Simple Field (simpB)
+ writeSimpleField("simpB", simpB, writeUnsignedShort(writeBuffer, 8));
- writeBuffer.popContext("DceRpc_InterfaceUuid_ParameterInterface");
+ writeBuffer.popContext("EnumDiscriminatedTypeB");
}
@Override
@@ -65,32 +75,40 @@ public class DceRpc_InterfaceUuid_ParameterInterface extends DceRpc_InterfaceUui
@Override
public int getLengthInBits() {
int lengthInBits = super.getLengthInBits();
- DceRpc_InterfaceUuid_ParameterInterface _value = this;
+ EnumDiscriminatedTypeB _value = this;
+
+ // Simple field (simpB)
+ lengthInBits += 8;
return lengthInBits;
}
- public static DceRpc_InterfaceUuid_ParameterInterfaceBuilder staticParseBuilder(
+ public static EnumDiscriminatedTypeBuilder staticParseEnumDiscriminatedTypeBuilder(
ReadBuffer readBuffer) throws ParseException {
- readBuffer.pullContext("DceRpc_InterfaceUuid_ParameterInterface");
+ readBuffer.pullContext("EnumDiscriminatedTypeB");
PositionAware positionAware = readBuffer;
int startPos = positionAware.getPos();
int curPos;
- readBuffer.closeContext("DceRpc_InterfaceUuid_ParameterInterface");
+ short simpB = readSimpleField("simpB", readUnsignedShort(readBuffer, 8));
+
+ readBuffer.closeContext("EnumDiscriminatedTypeB");
// Create the instance
- return new DceRpc_InterfaceUuid_ParameterInterfaceBuilder();
+ return new EnumDiscriminatedTypeBBuilderImpl(simpB);
}
- public static class DceRpc_InterfaceUuid_ParameterInterfaceBuilder
- implements DceRpc_InterfaceUuid.DceRpc_InterfaceUuidBuilder {
+ public static class EnumDiscriminatedTypeBBuilderImpl
+ implements EnumDiscriminatedType.EnumDiscriminatedTypeBuilder {
+ private final short simpB;
- public DceRpc_InterfaceUuid_ParameterInterfaceBuilder() {}
+ public EnumDiscriminatedTypeBBuilderImpl(short simpB) {
+
+ this.simpB = simpB;
+ }
- public DceRpc_InterfaceUuid_ParameterInterface build() {
- DceRpc_InterfaceUuid_ParameterInterface dceRpc_InterfaceUuid_ParameterInterface =
- new DceRpc_InterfaceUuid_ParameterInterface();
- return dceRpc_InterfaceUuid_ParameterInterface;
+ public EnumDiscriminatedTypeB build() {
+ EnumDiscriminatedTypeB enumDiscriminatedTypeB = new EnumDiscriminatedTypeB(simpB);
+ return enumDiscriminatedTypeB;
}
}
@@ -99,16 +117,16 @@ public class DceRpc_InterfaceUuid_ParameterInterface extends DceRpc_InterfaceUui
if (this == o) {
return true;
}
- if (!(o instanceof DceRpc_InterfaceUuid_ParameterInterface)) {
+ if (!(o instanceof EnumDiscriminatedTypeB)) {
return false;
}
- DceRpc_InterfaceUuid_ParameterInterface that = (DceRpc_InterfaceUuid_ParameterInterface) o;
- return super.equals(that) && true;
+ EnumDiscriminatedTypeB that = (EnumDiscriminatedTypeB) o;
+ return (getSimpB() == that.getSimpB()) && super.equals(that) && true;
}
@Override
public int hashCode() {
- return Objects.hash(super.hashCode());
+ return Objects.hash(super.hashCode(), getSimpB());
}
@Override
diff --git a/plc4j/drivers/profinet/src/main/generated/org/apache/plc4x/java/profinet/readwrite/DceRpc_InterfaceUuid_ParameterInterface.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeC.java
similarity index 60%
copy from plc4j/drivers/profinet/src/main/generated/org/apache/plc4x/java/profinet/readwrite/DceRpc_InterfaceUuid_ParameterInterface.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeC.java
index 944efcc8f2..81fb9d0399 100644
--- a/plc4j/drivers/profinet/src/main/generated/org/apache/plc4x/java/profinet/readwrite/DceRpc_InterfaceUuid_ParameterInterface.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeC.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.profinet.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,26 +35,36 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public class DceRpc_InterfaceUuid_ParameterInterface extends DceRpc_InterfaceUuid
- implements Message {
+public class EnumDiscriminatedTypeC extends EnumDiscriminatedType implements Message {
// Accessors for discriminator values.
- public Long getInterfaceType() {
- return (long) 0xDEA00004L;
+ public EnumType getDiscr() {
+ return EnumType.INT;
}
- public DceRpc_InterfaceUuid_ParameterInterface() {
+ // Properties.
+ protected final short simpC;
+
+ public EnumDiscriminatedTypeC(short simpC) {
super();
+ this.simpC = simpC;
+ }
+
+ public short getSimpC() {
+ return simpC;
}
@Override
- protected void serializeDceRpc_InterfaceUuidChild(WriteBuffer writeBuffer)
+ protected void serializeEnumDiscriminatedTypeChild(WriteBuffer writeBuffer)
throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("DceRpc_InterfaceUuid_ParameterInterface");
+ writeBuffer.pushContext("EnumDiscriminatedTypeC");
+
+ // Simple Field (simpC)
+ writeSimpleField("simpC", simpC, writeUnsignedShort(writeBuffer, 8));
- writeBuffer.popContext("DceRpc_InterfaceUuid_ParameterInterface");
+ writeBuffer.popContext("EnumDiscriminatedTypeC");
}
@Override
@@ -65,32 +75,40 @@ public class DceRpc_InterfaceUuid_ParameterInterface extends DceRpc_InterfaceUui
@Override
public int getLengthInBits() {
int lengthInBits = super.getLengthInBits();
- DceRpc_InterfaceUuid_ParameterInterface _value = this;
+ EnumDiscriminatedTypeC _value = this;
+
+ // Simple field (simpC)
+ lengthInBits += 8;
return lengthInBits;
}
- public static DceRpc_InterfaceUuid_ParameterInterfaceBuilder staticParseBuilder(
+ public static EnumDiscriminatedTypeBuilder staticParseEnumDiscriminatedTypeBuilder(
ReadBuffer readBuffer) throws ParseException {
- readBuffer.pullContext("DceRpc_InterfaceUuid_ParameterInterface");
+ readBuffer.pullContext("EnumDiscriminatedTypeC");
PositionAware positionAware = readBuffer;
int startPos = positionAware.getPos();
int curPos;
- readBuffer.closeContext("DceRpc_InterfaceUuid_ParameterInterface");
+ short simpC = readSimpleField("simpC", readUnsignedShort(readBuffer, 8));
+
+ readBuffer.closeContext("EnumDiscriminatedTypeC");
// Create the instance
- return new DceRpc_InterfaceUuid_ParameterInterfaceBuilder();
+ return new EnumDiscriminatedTypeCBuilderImpl(simpC);
}
- public static class DceRpc_InterfaceUuid_ParameterInterfaceBuilder
- implements DceRpc_InterfaceUuid.DceRpc_InterfaceUuidBuilder {
+ public static class EnumDiscriminatedTypeCBuilderImpl
+ implements EnumDiscriminatedType.EnumDiscriminatedTypeBuilder {
+ private final short simpC;
- public DceRpc_InterfaceUuid_ParameterInterfaceBuilder() {}
+ public EnumDiscriminatedTypeCBuilderImpl(short simpC) {
+
+ this.simpC = simpC;
+ }
- public DceRpc_InterfaceUuid_ParameterInterface build() {
- DceRpc_InterfaceUuid_ParameterInterface dceRpc_InterfaceUuid_ParameterInterface =
- new DceRpc_InterfaceUuid_ParameterInterface();
- return dceRpc_InterfaceUuid_ParameterInterface;
+ public EnumDiscriminatedTypeC build() {
+ EnumDiscriminatedTypeC enumDiscriminatedTypeC = new EnumDiscriminatedTypeC(simpC);
+ return enumDiscriminatedTypeC;
}
}
@@ -99,16 +117,16 @@ public class DceRpc_InterfaceUuid_ParameterInterface extends DceRpc_InterfaceUui
if (this == o) {
return true;
}
- if (!(o instanceof DceRpc_InterfaceUuid_ParameterInterface)) {
+ if (!(o instanceof EnumDiscriminatedTypeC)) {
return false;
}
- DceRpc_InterfaceUuid_ParameterInterface that = (DceRpc_InterfaceUuid_ParameterInterface) o;
- return super.equals(that) && true;
+ EnumDiscriminatedTypeC that = (EnumDiscriminatedTypeC) o;
+ return (getSimpC() == that.getSimpC()) && super.equals(that) && true;
}
@Override
public int hashCode() {
- return Objects.hash(super.hashCode());
+ return Objects.hash(super.hashCode(), getSimpC());
}
@Override
diff --git a/plc4j/drivers/opcua/src/main/generated/org/apache/plc4x/java/opcua/readwrite/NodeIdTypeDefinition.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeMultiple.java
similarity index 51%
copy from plc4j/drivers/opcua/src/main/generated/org/apache/plc4x/java/opcua/readwrite/NodeIdTypeDefinition.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeMultiple.java
index 785e1ef1d9..00b74dc91f 100644
--- a/plc4j/drivers/opcua/src/main/generated/org/apache/plc4x/java/opcua/readwrite/NodeIdTypeDefinition.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeMultiple.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.opcua.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,37 +35,45 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public abstract class NodeIdTypeDefinition implements Message {
+public abstract class EnumDiscriminatedTypeMultiple implements Message {
// Abstract accessors for discriminator values.
- public abstract NodeIdType getNodeType();
+ public abstract EnumType getDiscr1();
- public NodeIdTypeDefinition() {
+ public abstract EnumTypeInt getDiscr2();
+
+ public EnumDiscriminatedTypeMultiple() {
super();
}
- public abstract String getIdentifier();
-
- protected abstract void serializeNodeIdTypeDefinitionChild(WriteBuffer writeBuffer)
+ protected abstract void serializeEnumDiscriminatedTypeMultipleChild(WriteBuffer writeBuffer)
throws SerializationException;
public void serialize(WriteBuffer writeBuffer) throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("NodeIdTypeDefinition");
+ writeBuffer.pushContext("EnumDiscriminatedTypeMultiple");
+
+ // Discriminator Field (discr1) (Used as input to a switch field)
+ writeDiscriminatorEnumField(
+ "discr1",
+ "EnumType",
+ getDiscr1(),
+ new DataWriterEnumDefault<>(
+ EnumType::getValue, EnumType::name, writeUnsignedShort(writeBuffer, 8)));
- // Discriminator Field (nodeType) (Used as input to a switch field)
+ // Discriminator Field (discr2) (Used as input to a switch field)
writeDiscriminatorEnumField(
- "nodeType",
- "NodeIdType",
- getNodeType(),
+ "discr2",
+ "EnumTypeInt",
+ getDiscr2(),
new DataWriterEnumDefault<>(
- NodeIdType::getValue, NodeIdType::name, writeUnsignedShort(writeBuffer, 6)));
+ EnumTypeInt::getValue, EnumTypeInt::name, writeSignedByte(writeBuffer, 8)));
// Switch field (Serialize the sub-type)
- serializeNodeIdTypeDefinitionChild(writeBuffer);
+ serializeEnumDiscriminatedTypeMultipleChild(writeBuffer);
- writeBuffer.popContext("NodeIdTypeDefinition");
+ writeBuffer.popContext("EnumDiscriminatedTypeMultiple");
}
@Override
@@ -76,66 +84,80 @@ public abstract class NodeIdTypeDefinition implements Message {
@Override
public int getLengthInBits() {
int lengthInBits = 0;
- NodeIdTypeDefinition _value = this;
+ EnumDiscriminatedTypeMultiple _value = this;
- // Discriminator Field (nodeType)
- lengthInBits += 6;
+ // Discriminator Field (discr1)
+ lengthInBits += 8;
+
+ // Discriminator Field (discr2)
+ lengthInBits += 8;
// Length of sub-type elements will be added by sub-type...
return lengthInBits;
}
- public static NodeIdTypeDefinition staticParse(ReadBuffer readBuffer, Object... args)
+ public static EnumDiscriminatedTypeMultiple staticParse(ReadBuffer readBuffer, Object... args)
throws ParseException {
PositionAware positionAware = readBuffer;
return staticParse(readBuffer);
}
- public static NodeIdTypeDefinition staticParse(ReadBuffer readBuffer) throws ParseException {
- readBuffer.pullContext("NodeIdTypeDefinition");
+ public static EnumDiscriminatedTypeMultiple staticParse(ReadBuffer readBuffer)
+ throws ParseException {
+ readBuffer.pullContext("EnumDiscriminatedTypeMultiple");
PositionAware positionAware = readBuffer;
int startPos = positionAware.getPos();
int curPos;
- NodeIdType nodeType =
+ EnumType discr1 =
+ readDiscriminatorField(
+ "discr1",
+ new DataReaderEnumDefault<>(EnumType::enumForValue, readUnsignedShort(readBuffer, 8)));
+
+ EnumTypeInt discr2 =
readDiscriminatorField(
- "nodeType",
- new DataReaderEnumDefault<>(
- NodeIdType::enumForValue, readUnsignedShort(readBuffer, 6)));
+ "discr2",
+ new DataReaderEnumDefault<>(EnumTypeInt::enumForValue, readSignedByte(readBuffer, 8)));
// Switch Field (Depending on the discriminator values, passes the instantiation to a sub-type)
- NodeIdTypeDefinitionBuilder builder = null;
- if (EvaluationHelper.equals(nodeType, NodeIdType.nodeIdTypeTwoByte)) {
- builder = NodeIdTwoByte.staticParseBuilder(readBuffer);
- } else if (EvaluationHelper.equals(nodeType, NodeIdType.nodeIdTypeFourByte)) {
- builder = NodeIdFourByte.staticParseBuilder(readBuffer);
- } else if (EvaluationHelper.equals(nodeType, NodeIdType.nodeIdTypeNumeric)) {
- builder = NodeIdNumeric.staticParseBuilder(readBuffer);
- } else if (EvaluationHelper.equals(nodeType, NodeIdType.nodeIdTypeString)) {
- builder = NodeIdString.staticParseBuilder(readBuffer);
- } else if (EvaluationHelper.equals(nodeType, NodeIdType.nodeIdTypeGuid)) {
- builder = NodeIdGuid.staticParseBuilder(readBuffer);
- } else if (EvaluationHelper.equals(nodeType, NodeIdType.nodeIdTypeByteString)) {
- builder = NodeIdByteString.staticParseBuilder(readBuffer);
+ EnumDiscriminatedTypeMultipleBuilder builder = null;
+ if (EvaluationHelper.equals(discr1, EnumType.BOOL)
+ && EvaluationHelper.equals(discr2, EnumTypeInt.BOOLINT)) {
+ builder =
+ EnumDiscriminatedTypeMultipleA.staticParseEnumDiscriminatedTypeMultipleBuilder(
+ readBuffer);
+ } else if (EvaluationHelper.equals(discr1, EnumType.UINT)
+ && EvaluationHelper.equals(discr2, EnumTypeInt.UINTINT)) {
+ builder =
+ EnumDiscriminatedTypeMultipleB.staticParseEnumDiscriminatedTypeMultipleBuilder(
+ readBuffer);
+ } else if (EvaluationHelper.equals(discr1, EnumType.INT)
+ && EvaluationHelper.equals(discr2, EnumTypeInt.INTINT)) {
+ builder =
+ EnumDiscriminatedTypeMultipleC.staticParseEnumDiscriminatedTypeMultipleBuilder(
+ readBuffer);
}
if (builder == null) {
throw new ParseException(
"Unsupported case for discriminated type"
+ " parameters ["
- + "nodeType="
- + nodeType
+ + "discr1="
+ + discr1
+ + " "
+ + "discr2="
+ + discr2
+ "]");
}
- readBuffer.closeContext("NodeIdTypeDefinition");
+ readBuffer.closeContext("EnumDiscriminatedTypeMultiple");
// Create the instance
- NodeIdTypeDefinition _nodeIdTypeDefinition = builder.build();
- return _nodeIdTypeDefinition;
+ EnumDiscriminatedTypeMultiple _enumDiscriminatedTypeMultiple = builder.build();
+ return _enumDiscriminatedTypeMultiple;
}
- public static interface NodeIdTypeDefinitionBuilder {
- NodeIdTypeDefinition build();
+ public interface EnumDiscriminatedTypeMultipleBuilder {
+ EnumDiscriminatedTypeMultiple build();
}
@Override
@@ -143,10 +165,10 @@ public abstract class NodeIdTypeDefinition implements Message {
if (this == o) {
return true;
}
- if (!(o instanceof NodeIdTypeDefinition)) {
+ if (!(o instanceof EnumDiscriminatedTypeMultiple)) {
return false;
}
- NodeIdTypeDefinition that = (NodeIdTypeDefinition) o;
+ EnumDiscriminatedTypeMultiple that = (EnumDiscriminatedTypeMultiple) o;
return true;
}
diff --git a/plc4j/drivers/canopen/src/main/generated/org/apache/plc4x/java/canopen/readwrite/CANOpenHeartbeatPayload.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeMultipleA.java
similarity index 57%
copy from plc4j/drivers/canopen/src/main/generated/org/apache/plc4x/java/canopen/readwrite/CANOpenHeartbeatPayload.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeMultipleA.java
index eb4f353360..e0613a8b70 100644
--- a/plc4j/drivers/canopen/src/main/generated/org/apache/plc4x/java/canopen/readwrite/CANOpenHeartbeatPayload.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeMultipleA.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.canopen.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,41 +35,41 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public class CANOpenHeartbeatPayload extends CANOpenPayload implements Message {
+public class EnumDiscriminatedTypeMultipleA extends EnumDiscriminatedTypeMultiple
+ implements Message {
// Accessors for discriminator values.
- public CANOpenService getService() {
- return CANOpenService.HEARTBEAT;
+ public EnumType getDiscr1() {
+ return EnumType.BOOL;
+ }
+
+ public EnumTypeInt getDiscr2() {
+ return EnumTypeInt.BOOLINT;
}
// Properties.
- protected final NMTState state;
+ protected final short simpA;
- public CANOpenHeartbeatPayload(NMTState state) {
+ public EnumDiscriminatedTypeMultipleA(short simpA) {
super();
- this.state = state;
+ this.simpA = simpA;
}
- public NMTState getState() {
- return state;
+ public short getSimpA() {
+ return simpA;
}
@Override
- protected void serializeCANOpenPayloadChild(WriteBuffer writeBuffer)
+ protected void serializeEnumDiscriminatedTypeMultipleChild(WriteBuffer writeBuffer)
throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("CANOpenHeartbeatPayload");
+ writeBuffer.pushContext("EnumDiscriminatedTypeMultipleA");
- // Simple Field (state)
- writeSimpleEnumField(
- "state",
- "NMTState",
- state,
- new DataWriterEnumDefault<>(
- NMTState::getValue, NMTState::name, writeUnsignedShort(writeBuffer, 8)));
+ // Simple Field (simpA)
+ writeSimpleField("simpA", simpA, writeUnsignedShort(writeBuffer, 8));
- writeBuffer.popContext("CANOpenHeartbeatPayload");
+ writeBuffer.popContext("EnumDiscriminatedTypeMultipleA");
}
@Override
@@ -80,44 +80,41 @@ public class CANOpenHeartbeatPayload extends CANOpenPayload implements Message {
@Override
public int getLengthInBits() {
int lengthInBits = super.getLengthInBits();
- CANOpenHeartbeatPayload _value = this;
+ EnumDiscriminatedTypeMultipleA _value = this;
- // Simple field (state)
+ // Simple field (simpA)
lengthInBits += 8;
return lengthInBits;
}
- public static CANOpenHeartbeatPayloadBuilder staticParseBuilder(
- ReadBuffer readBuffer, CANOpenService service) throws ParseException {
- readBuffer.pullContext("CANOpenHeartbeatPayload");
+ public static EnumDiscriminatedTypeMultipleBuilder
+ staticParseEnumDiscriminatedTypeMultipleBuilder(ReadBuffer readBuffer) throws ParseException {
+ readBuffer.pullContext("EnumDiscriminatedTypeMultipleA");
PositionAware positionAware = readBuffer;
int startPos = positionAware.getPos();
int curPos;
- NMTState state =
- readEnumField(
- "state",
- "NMTState",
- new DataReaderEnumDefault<>(NMTState::enumForValue, readUnsignedShort(readBuffer, 8)));
+ short simpA = readSimpleField("simpA", readUnsignedShort(readBuffer, 8));
- readBuffer.closeContext("CANOpenHeartbeatPayload");
+ readBuffer.closeContext("EnumDiscriminatedTypeMultipleA");
// Create the instance
- return new CANOpenHeartbeatPayloadBuilder(state);
+ return new EnumDiscriminatedTypeMultipleABuilderImpl(simpA);
}
- public static class CANOpenHeartbeatPayloadBuilder
- implements CANOpenPayload.CANOpenPayloadBuilder {
- private final NMTState state;
+ public static class EnumDiscriminatedTypeMultipleABuilderImpl
+ implements EnumDiscriminatedTypeMultiple.EnumDiscriminatedTypeMultipleBuilder {
+ private final short simpA;
- public CANOpenHeartbeatPayloadBuilder(NMTState state) {
+ public EnumDiscriminatedTypeMultipleABuilderImpl(short simpA) {
- this.state = state;
+ this.simpA = simpA;
}
- public CANOpenHeartbeatPayload build() {
- CANOpenHeartbeatPayload cANOpenHeartbeatPayload = new CANOpenHeartbeatPayload(state);
- return cANOpenHeartbeatPayload;
+ public EnumDiscriminatedTypeMultipleA build() {
+ EnumDiscriminatedTypeMultipleA enumDiscriminatedTypeMultipleA =
+ new EnumDiscriminatedTypeMultipleA(simpA);
+ return enumDiscriminatedTypeMultipleA;
}
}
@@ -126,16 +123,16 @@ public class CANOpenHeartbeatPayload extends CANOpenPayload implements Message {
if (this == o) {
return true;
}
- if (!(o instanceof CANOpenHeartbeatPayload)) {
+ if (!(o instanceof EnumDiscriminatedTypeMultipleA)) {
return false;
}
- CANOpenHeartbeatPayload that = (CANOpenHeartbeatPayload) o;
- return (getState() == that.getState()) && super.equals(that) && true;
+ EnumDiscriminatedTypeMultipleA that = (EnumDiscriminatedTypeMultipleA) o;
+ return (getSimpA() == that.getSimpA()) && super.equals(that) && true;
}
@Override
public int hashCode() {
- return Objects.hash(super.hashCode(), getState());
+ return Objects.hash(super.hashCode(), getSimpA());
}
@Override
diff --git a/plc4j/drivers/canopen/src/main/generated/org/apache/plc4x/java/canopen/readwrite/CANOpenHeartbeatPayload.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeMultipleB.java
similarity index 57%
copy from plc4j/drivers/canopen/src/main/generated/org/apache/plc4x/java/canopen/readwrite/CANOpenHeartbeatPayload.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeMultipleB.java
index eb4f353360..bcbbb85515 100644
--- a/plc4j/drivers/canopen/src/main/generated/org/apache/plc4x/java/canopen/readwrite/CANOpenHeartbeatPayload.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeMultipleB.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.canopen.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,41 +35,41 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public class CANOpenHeartbeatPayload extends CANOpenPayload implements Message {
+public class EnumDiscriminatedTypeMultipleB extends EnumDiscriminatedTypeMultiple
+ implements Message {
// Accessors for discriminator values.
- public CANOpenService getService() {
- return CANOpenService.HEARTBEAT;
+ public EnumType getDiscr1() {
+ return EnumType.UINT;
+ }
+
+ public EnumTypeInt getDiscr2() {
+ return EnumTypeInt.UINTINT;
}
// Properties.
- protected final NMTState state;
+ protected final short simpB;
- public CANOpenHeartbeatPayload(NMTState state) {
+ public EnumDiscriminatedTypeMultipleB(short simpB) {
super();
- this.state = state;
+ this.simpB = simpB;
}
- public NMTState getState() {
- return state;
+ public short getSimpB() {
+ return simpB;
}
@Override
- protected void serializeCANOpenPayloadChild(WriteBuffer writeBuffer)
+ protected void serializeEnumDiscriminatedTypeMultipleChild(WriteBuffer writeBuffer)
throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("CANOpenHeartbeatPayload");
+ writeBuffer.pushContext("EnumDiscriminatedTypeMultipleB");
- // Simple Field (state)
- writeSimpleEnumField(
- "state",
- "NMTState",
- state,
- new DataWriterEnumDefault<>(
- NMTState::getValue, NMTState::name, writeUnsignedShort(writeBuffer, 8)));
+ // Simple Field (simpB)
+ writeSimpleField("simpB", simpB, writeUnsignedShort(writeBuffer, 8));
- writeBuffer.popContext("CANOpenHeartbeatPayload");
+ writeBuffer.popContext("EnumDiscriminatedTypeMultipleB");
}
@Override
@@ -80,44 +80,41 @@ public class CANOpenHeartbeatPayload extends CANOpenPayload implements Message {
@Override
public int getLengthInBits() {
int lengthInBits = super.getLengthInBits();
- CANOpenHeartbeatPayload _value = this;
+ EnumDiscriminatedTypeMultipleB _value = this;
- // Simple field (state)
+ // Simple field (simpB)
lengthInBits += 8;
return lengthInBits;
}
- public static CANOpenHeartbeatPayloadBuilder staticParseBuilder(
- ReadBuffer readBuffer, CANOpenService service) throws ParseException {
- readBuffer.pullContext("CANOpenHeartbeatPayload");
+ public static EnumDiscriminatedTypeMultipleBuilder
+ staticParseEnumDiscriminatedTypeMultipleBuilder(ReadBuffer readBuffer) throws ParseException {
+ readBuffer.pullContext("EnumDiscriminatedTypeMultipleB");
PositionAware positionAware = readBuffer;
int startPos = positionAware.getPos();
int curPos;
- NMTState state =
- readEnumField(
- "state",
- "NMTState",
- new DataReaderEnumDefault<>(NMTState::enumForValue, readUnsignedShort(readBuffer, 8)));
+ short simpB = readSimpleField("simpB", readUnsignedShort(readBuffer, 8));
- readBuffer.closeContext("CANOpenHeartbeatPayload");
+ readBuffer.closeContext("EnumDiscriminatedTypeMultipleB");
// Create the instance
- return new CANOpenHeartbeatPayloadBuilder(state);
+ return new EnumDiscriminatedTypeMultipleBBuilderImpl(simpB);
}
- public static class CANOpenHeartbeatPayloadBuilder
- implements CANOpenPayload.CANOpenPayloadBuilder {
- private final NMTState state;
+ public static class EnumDiscriminatedTypeMultipleBBuilderImpl
+ implements EnumDiscriminatedTypeMultiple.EnumDiscriminatedTypeMultipleBuilder {
+ private final short simpB;
- public CANOpenHeartbeatPayloadBuilder(NMTState state) {
+ public EnumDiscriminatedTypeMultipleBBuilderImpl(short simpB) {
- this.state = state;
+ this.simpB = simpB;
}
- public CANOpenHeartbeatPayload build() {
- CANOpenHeartbeatPayload cANOpenHeartbeatPayload = new CANOpenHeartbeatPayload(state);
- return cANOpenHeartbeatPayload;
+ public EnumDiscriminatedTypeMultipleB build() {
+ EnumDiscriminatedTypeMultipleB enumDiscriminatedTypeMultipleB =
+ new EnumDiscriminatedTypeMultipleB(simpB);
+ return enumDiscriminatedTypeMultipleB;
}
}
@@ -126,16 +123,16 @@ public class CANOpenHeartbeatPayload extends CANOpenPayload implements Message {
if (this == o) {
return true;
}
- if (!(o instanceof CANOpenHeartbeatPayload)) {
+ if (!(o instanceof EnumDiscriminatedTypeMultipleB)) {
return false;
}
- CANOpenHeartbeatPayload that = (CANOpenHeartbeatPayload) o;
- return (getState() == that.getState()) && super.equals(that) && true;
+ EnumDiscriminatedTypeMultipleB that = (EnumDiscriminatedTypeMultipleB) o;
+ return (getSimpB() == that.getSimpB()) && super.equals(that) && true;
}
@Override
public int hashCode() {
- return Objects.hash(super.hashCode(), getState());
+ return Objects.hash(super.hashCode(), getSimpB());
}
@Override
diff --git a/plc4j/drivers/canopen/src/main/generated/org/apache/plc4x/java/canopen/readwrite/CANOpenHeartbeatPayload.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeMultipleC.java
similarity index 57%
copy from plc4j/drivers/canopen/src/main/generated/org/apache/plc4x/java/canopen/readwrite/CANOpenHeartbeatPayload.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeMultipleC.java
index eb4f353360..4d6fc2498b 100644
--- a/plc4j/drivers/canopen/src/main/generated/org/apache/plc4x/java/canopen/readwrite/CANOpenHeartbeatPayload.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeMultipleC.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.canopen.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,41 +35,41 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public class CANOpenHeartbeatPayload extends CANOpenPayload implements Message {
+public class EnumDiscriminatedTypeMultipleC extends EnumDiscriminatedTypeMultiple
+ implements Message {
// Accessors for discriminator values.
- public CANOpenService getService() {
- return CANOpenService.HEARTBEAT;
+ public EnumType getDiscr1() {
+ return EnumType.INT;
+ }
+
+ public EnumTypeInt getDiscr2() {
+ return EnumTypeInt.INTINT;
}
// Properties.
- protected final NMTState state;
+ protected final short simpC;
- public CANOpenHeartbeatPayload(NMTState state) {
+ public EnumDiscriminatedTypeMultipleC(short simpC) {
super();
- this.state = state;
+ this.simpC = simpC;
}
- public NMTState getState() {
- return state;
+ public short getSimpC() {
+ return simpC;
}
@Override
- protected void serializeCANOpenPayloadChild(WriteBuffer writeBuffer)
+ protected void serializeEnumDiscriminatedTypeMultipleChild(WriteBuffer writeBuffer)
throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("CANOpenHeartbeatPayload");
+ writeBuffer.pushContext("EnumDiscriminatedTypeMultipleC");
- // Simple Field (state)
- writeSimpleEnumField(
- "state",
- "NMTState",
- state,
- new DataWriterEnumDefault<>(
- NMTState::getValue, NMTState::name, writeUnsignedShort(writeBuffer, 8)));
+ // Simple Field (simpC)
+ writeSimpleField("simpC", simpC, writeUnsignedShort(writeBuffer, 8));
- writeBuffer.popContext("CANOpenHeartbeatPayload");
+ writeBuffer.popContext("EnumDiscriminatedTypeMultipleC");
}
@Override
@@ -80,44 +80,41 @@ public class CANOpenHeartbeatPayload extends CANOpenPayload implements Message {
@Override
public int getLengthInBits() {
int lengthInBits = super.getLengthInBits();
- CANOpenHeartbeatPayload _value = this;
+ EnumDiscriminatedTypeMultipleC _value = this;
- // Simple field (state)
+ // Simple field (simpC)
lengthInBits += 8;
return lengthInBits;
}
- public static CANOpenHeartbeatPayloadBuilder staticParseBuilder(
- ReadBuffer readBuffer, CANOpenService service) throws ParseException {
- readBuffer.pullContext("CANOpenHeartbeatPayload");
+ public static EnumDiscriminatedTypeMultipleBuilder
+ staticParseEnumDiscriminatedTypeMultipleBuilder(ReadBuffer readBuffer) throws ParseException {
+ readBuffer.pullContext("EnumDiscriminatedTypeMultipleC");
PositionAware positionAware = readBuffer;
int startPos = positionAware.getPos();
int curPos;
- NMTState state =
- readEnumField(
- "state",
- "NMTState",
- new DataReaderEnumDefault<>(NMTState::enumForValue, readUnsignedShort(readBuffer, 8)));
+ short simpC = readSimpleField("simpC", readUnsignedShort(readBuffer, 8));
- readBuffer.closeContext("CANOpenHeartbeatPayload");
+ readBuffer.closeContext("EnumDiscriminatedTypeMultipleC");
// Create the instance
- return new CANOpenHeartbeatPayloadBuilder(state);
+ return new EnumDiscriminatedTypeMultipleCBuilderImpl(simpC);
}
- public static class CANOpenHeartbeatPayloadBuilder
- implements CANOpenPayload.CANOpenPayloadBuilder {
- private final NMTState state;
+ public static class EnumDiscriminatedTypeMultipleCBuilderImpl
+ implements EnumDiscriminatedTypeMultiple.EnumDiscriminatedTypeMultipleBuilder {
+ private final short simpC;
- public CANOpenHeartbeatPayloadBuilder(NMTState state) {
+ public EnumDiscriminatedTypeMultipleCBuilderImpl(short simpC) {
- this.state = state;
+ this.simpC = simpC;
}
- public CANOpenHeartbeatPayload build() {
- CANOpenHeartbeatPayload cANOpenHeartbeatPayload = new CANOpenHeartbeatPayload(state);
- return cANOpenHeartbeatPayload;
+ public EnumDiscriminatedTypeMultipleC build() {
+ EnumDiscriminatedTypeMultipleC enumDiscriminatedTypeMultipleC =
+ new EnumDiscriminatedTypeMultipleC(simpC);
+ return enumDiscriminatedTypeMultipleC;
}
}
@@ -126,16 +123,16 @@ public class CANOpenHeartbeatPayload extends CANOpenPayload implements Message {
if (this == o) {
return true;
}
- if (!(o instanceof CANOpenHeartbeatPayload)) {
+ if (!(o instanceof EnumDiscriminatedTypeMultipleC)) {
return false;
}
- CANOpenHeartbeatPayload that = (CANOpenHeartbeatPayload) o;
- return (getState() == that.getState()) && super.equals(that) && true;
+ EnumDiscriminatedTypeMultipleC that = (EnumDiscriminatedTypeMultipleC) o;
+ return (getSimpC() == that.getSimpC()) && super.equals(that) && true;
}
@Override
public int hashCode() {
- return Objects.hash(super.hashCode(), getState());
+ return Objects.hash(super.hashCode(), getSimpC());
}
@Override
diff --git a/plc4j/drivers/profinet/src/main/generated/org/apache/plc4x/java/profinet/readwrite/PnIoCm_Packet.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeParameter.java
similarity index 61%
copy from plc4j/drivers/profinet/src/main/generated/org/apache/plc4x/java/profinet/readwrite/PnIoCm_Packet.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeParameter.java
index 390b6ca1b5..cf8c30ac85 100644
--- a/plc4j/drivers/profinet/src/main/generated/org/apache/plc4x/java/profinet/readwrite/PnIoCm_Packet.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeParameter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.profinet.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,27 +35,27 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public abstract class PnIoCm_Packet implements Message {
+public abstract class EnumDiscriminatedTypeParameter implements Message {
// Abstract accessors for discriminator values.
- public abstract DceRpc_PacketType getPacketType();
+ public abstract EnumType getDiscr();
- public PnIoCm_Packet() {
+ public EnumDiscriminatedTypeParameter() {
super();
}
- protected abstract void serializePnIoCm_PacketChild(WriteBuffer writeBuffer)
+ protected abstract void serializeEnumDiscriminatedTypeParameterChild(WriteBuffer writeBuffer)
throws SerializationException;
public void serialize(WriteBuffer writeBuffer) throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("PnIoCm_Packet");
+ writeBuffer.pushContext("EnumDiscriminatedTypeParameter");
// Switch field (Serialize the sub-type)
- serializePnIoCm_PacketChild(writeBuffer);
+ serializeEnumDiscriminatedTypeParameterChild(writeBuffer);
- writeBuffer.popContext("PnIoCm_Packet");
+ writeBuffer.popContext("EnumDiscriminatedTypeParameter");
}
@Override
@@ -66,67 +66,68 @@ public abstract class PnIoCm_Packet implements Message {
@Override
public int getLengthInBits() {
int lengthInBits = 0;
- PnIoCm_Packet _value = this;
+ EnumDiscriminatedTypeParameter _value = this;
// Length of sub-type elements will be added by sub-type...
return lengthInBits;
}
- public static PnIoCm_Packet staticParse(ReadBuffer readBuffer, Object... args)
+ public static EnumDiscriminatedTypeParameter staticParse(ReadBuffer readBuffer, Object... args)
throws ParseException {
PositionAware positionAware = readBuffer;
if ((args == null) || (args.length != 1)) {
throw new PlcRuntimeException(
"Wrong number of arguments, expected 1, but got " + args.length);
}
- DceRpc_PacketType packetType;
- if (args[0] instanceof DceRpc_PacketType) {
- packetType = (DceRpc_PacketType) args[0];
+ EnumType discr;
+ if (args[0] instanceof EnumType) {
+ discr = (EnumType) args[0];
} else if (args[0] instanceof String) {
- packetType = DceRpc_PacketType.valueOf((String) args[0]);
+ discr = EnumType.valueOf((String) args[0]);
} else {
throw new PlcRuntimeException(
- "Argument 0 expected to be of type DceRpc_PacketType or a string which is parseable but"
- + " was "
+ "Argument 0 expected to be of type EnumType or a string which is parseable but was "
+ args[0].getClass().getName());
}
- return staticParse(readBuffer, packetType);
+ return staticParse(readBuffer, discr);
}
- public static PnIoCm_Packet staticParse(ReadBuffer readBuffer, DceRpc_PacketType packetType)
+ public static EnumDiscriminatedTypeParameter staticParse(ReadBuffer readBuffer, EnumType discr)
throws ParseException {
- readBuffer.pullContext("PnIoCm_Packet");
+ readBuffer.pullContext("EnumDiscriminatedTypeParameter");
PositionAware positionAware = readBuffer;
int startPos = positionAware.getPos();
int curPos;
// Switch Field (Depending on the discriminator values, passes the instantiation to a sub-type)
- PnIoCm_PacketBuilder builder = null;
- if (EvaluationHelper.equals(packetType, DceRpc_PacketType.REQUEST)) {
- builder = PnIoCm_Packet_Req.staticParseBuilder(readBuffer, packetType);
- } else if (EvaluationHelper.equals(packetType, DceRpc_PacketType.RESPONSE)) {
- builder = PnIoCm_Packet_Res.staticParseBuilder(readBuffer, packetType);
- } else if (EvaluationHelper.equals(packetType, DceRpc_PacketType.REJECT)) {
- builder = PnIoCm_Packet_Rej.staticParseBuilder(readBuffer, packetType);
+ EnumDiscriminatedTypeParameterBuilder builder = null;
+ if (EvaluationHelper.equals(discr, EnumType.BOOL)) {
+ builder =
+ EnumDiscriminatedTypeParameterA.staticParseEnumDiscriminatedTypeParameterBuilder(
+ readBuffer, discr);
+ } else if (EvaluationHelper.equals(discr, EnumType.UINT)) {
+ builder =
+ EnumDiscriminatedTypeParameterB.staticParseEnumDiscriminatedTypeParameterBuilder(
+ readBuffer, discr);
+ } else if (EvaluationHelper.equals(discr, EnumType.INT)) {
+ builder =
+ EnumDiscriminatedTypeParameterC.staticParseEnumDiscriminatedTypeParameterBuilder(
+ readBuffer, discr);
}
if (builder == null) {
throw new ParseException(
- "Unsupported case for discriminated type"
- + " parameters ["
- + "packetType="
- + packetType
- + "]");
+ "Unsupported case for discriminated type" + " parameters [" + "discr=" + discr + "]");
}
- readBuffer.closeContext("PnIoCm_Packet");
+ readBuffer.closeContext("EnumDiscriminatedTypeParameter");
// Create the instance
- PnIoCm_Packet _pnIoCm_Packet = builder.build();
- return _pnIoCm_Packet;
+ EnumDiscriminatedTypeParameter _enumDiscriminatedTypeParameter = builder.build();
+ return _enumDiscriminatedTypeParameter;
}
- public static interface PnIoCm_PacketBuilder {
- PnIoCm_Packet build();
+ public interface EnumDiscriminatedTypeParameterBuilder {
+ EnumDiscriminatedTypeParameter build();
}
@Override
@@ -134,10 +135,10 @@ public abstract class PnIoCm_Packet implements Message {
if (this == o) {
return true;
}
- if (!(o instanceof PnIoCm_Packet)) {
+ if (!(o instanceof EnumDiscriminatedTypeParameter)) {
return false;
}
- PnIoCm_Packet that = (PnIoCm_Packet) o;
+ EnumDiscriminatedTypeParameter that = (EnumDiscriminatedTypeParameter) o;
return true;
}
diff --git a/plc4j/drivers/canopen/src/main/generated/org/apache/plc4x/java/canopen/readwrite/CANOpenHeartbeatPayload.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeParameterA.java
similarity index 57%
copy from plc4j/drivers/canopen/src/main/generated/org/apache/plc4x/java/canopen/readwrite/CANOpenHeartbeatPayload.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeParameterA.java
index eb4f353360..882edf9efc 100644
--- a/plc4j/drivers/canopen/src/main/generated/org/apache/plc4x/java/canopen/readwrite/CANOpenHeartbeatPayload.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeParameterA.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.canopen.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,41 +35,37 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public class CANOpenHeartbeatPayload extends CANOpenPayload implements Message {
+public class EnumDiscriminatedTypeParameterA extends EnumDiscriminatedTypeParameter
+ implements Message {
// Accessors for discriminator values.
- public CANOpenService getService() {
- return CANOpenService.HEARTBEAT;
+ public EnumType getDiscr() {
+ return EnumType.BOOL;
}
// Properties.
- protected final NMTState state;
+ protected final short simpA;
- public CANOpenHeartbeatPayload(NMTState state) {
+ public EnumDiscriminatedTypeParameterA(short simpA) {
super();
- this.state = state;
+ this.simpA = simpA;
}
- public NMTState getState() {
- return state;
+ public short getSimpA() {
+ return simpA;
}
@Override
- protected void serializeCANOpenPayloadChild(WriteBuffer writeBuffer)
+ protected void serializeEnumDiscriminatedTypeParameterChild(WriteBuffer writeBuffer)
throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("CANOpenHeartbeatPayload");
+ writeBuffer.pushContext("EnumDiscriminatedTypeParameterA");
- // Simple Field (state)
- writeSimpleEnumField(
- "state",
- "NMTState",
- state,
- new DataWriterEnumDefault<>(
- NMTState::getValue, NMTState::name, writeUnsignedShort(writeBuffer, 8)));
+ // Simple Field (simpA)
+ writeSimpleField("simpA", simpA, writeUnsignedShort(writeBuffer, 8));
- writeBuffer.popContext("CANOpenHeartbeatPayload");
+ writeBuffer.popContext("EnumDiscriminatedTypeParameterA");
}
@Override
@@ -80,44 +76,42 @@ public class CANOpenHeartbeatPayload extends CANOpenPayload implements Message {
@Override
public int getLengthInBits() {
int lengthInBits = super.getLengthInBits();
- CANOpenHeartbeatPayload _value = this;
+ EnumDiscriminatedTypeParameterA _value = this;
- // Simple field (state)
+ // Simple field (simpA)
lengthInBits += 8;
return lengthInBits;
}
- public static CANOpenHeartbeatPayloadBuilder staticParseBuilder(
- ReadBuffer readBuffer, CANOpenService service) throws ParseException {
- readBuffer.pullContext("CANOpenHeartbeatPayload");
+ public static EnumDiscriminatedTypeParameterBuilder
+ staticParseEnumDiscriminatedTypeParameterBuilder(ReadBuffer readBuffer, EnumType discr)
+ throws ParseException {
+ readBuffer.pullContext("EnumDiscriminatedTypeParameterA");
PositionAware positionAware = readBuffer;
int startPos = positionAware.getPos();
int curPos;
- NMTState state =
- readEnumField(
- "state",
- "NMTState",
- new DataReaderEnumDefault<>(NMTState::enumForValue, readUnsignedShort(readBuffer, 8)));
+ short simpA = readSimpleField("simpA", readUnsignedShort(readBuffer, 8));
- readBuffer.closeContext("CANOpenHeartbeatPayload");
+ readBuffer.closeContext("EnumDiscriminatedTypeParameterA");
// Create the instance
- return new CANOpenHeartbeatPayloadBuilder(state);
+ return new EnumDiscriminatedTypeParameterABuilderImpl(simpA);
}
- public static class CANOpenHeartbeatPayloadBuilder
- implements CANOpenPayload.CANOpenPayloadBuilder {
- private final NMTState state;
+ public static class EnumDiscriminatedTypeParameterABuilderImpl
+ implements EnumDiscriminatedTypeParameter.EnumDiscriminatedTypeParameterBuilder {
+ private final short simpA;
- public CANOpenHeartbeatPayloadBuilder(NMTState state) {
+ public EnumDiscriminatedTypeParameterABuilderImpl(short simpA) {
- this.state = state;
+ this.simpA = simpA;
}
- public CANOpenHeartbeatPayload build() {
- CANOpenHeartbeatPayload cANOpenHeartbeatPayload = new CANOpenHeartbeatPayload(state);
- return cANOpenHeartbeatPayload;
+ public EnumDiscriminatedTypeParameterA build() {
+ EnumDiscriminatedTypeParameterA enumDiscriminatedTypeParameterA =
+ new EnumDiscriminatedTypeParameterA(simpA);
+ return enumDiscriminatedTypeParameterA;
}
}
@@ -126,16 +120,16 @@ public class CANOpenHeartbeatPayload extends CANOpenPayload implements Message {
if (this == o) {
return true;
}
- if (!(o instanceof CANOpenHeartbeatPayload)) {
+ if (!(o instanceof EnumDiscriminatedTypeParameterA)) {
return false;
}
- CANOpenHeartbeatPayload that = (CANOpenHeartbeatPayload) o;
- return (getState() == that.getState()) && super.equals(that) && true;
+ EnumDiscriminatedTypeParameterA that = (EnumDiscriminatedTypeParameterA) o;
+ return (getSimpA() == that.getSimpA()) && super.equals(that) && true;
}
@Override
public int hashCode() {
- return Objects.hash(super.hashCode(), getState());
+ return Objects.hash(super.hashCode(), getSimpA());
}
@Override
diff --git a/plc4j/drivers/canopen/src/main/generated/org/apache/plc4x/java/canopen/readwrite/CANOpenHeartbeatPayload.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeParameterB.java
similarity index 57%
copy from plc4j/drivers/canopen/src/main/generated/org/apache/plc4x/java/canopen/readwrite/CANOpenHeartbeatPayload.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeParameterB.java
index eb4f353360..29e63cbda8 100644
--- a/plc4j/drivers/canopen/src/main/generated/org/apache/plc4x/java/canopen/readwrite/CANOpenHeartbeatPayload.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeParameterB.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.canopen.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,41 +35,37 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public class CANOpenHeartbeatPayload extends CANOpenPayload implements Message {
+public class EnumDiscriminatedTypeParameterB extends EnumDiscriminatedTypeParameter
+ implements Message {
// Accessors for discriminator values.
- public CANOpenService getService() {
- return CANOpenService.HEARTBEAT;
+ public EnumType getDiscr() {
+ return EnumType.UINT;
}
// Properties.
- protected final NMTState state;
+ protected final short simpB;
- public CANOpenHeartbeatPayload(NMTState state) {
+ public EnumDiscriminatedTypeParameterB(short simpB) {
super();
- this.state = state;
+ this.simpB = simpB;
}
- public NMTState getState() {
- return state;
+ public short getSimpB() {
+ return simpB;
}
@Override
- protected void serializeCANOpenPayloadChild(WriteBuffer writeBuffer)
+ protected void serializeEnumDiscriminatedTypeParameterChild(WriteBuffer writeBuffer)
throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("CANOpenHeartbeatPayload");
+ writeBuffer.pushContext("EnumDiscriminatedTypeParameterB");
- // Simple Field (state)
- writeSimpleEnumField(
- "state",
- "NMTState",
- state,
- new DataWriterEnumDefault<>(
- NMTState::getValue, NMTState::name, writeUnsignedShort(writeBuffer, 8)));
+ // Simple Field (simpB)
+ writeSimpleField("simpB", simpB, writeUnsignedShort(writeBuffer, 8));
- writeBuffer.popContext("CANOpenHeartbeatPayload");
+ writeBuffer.popContext("EnumDiscriminatedTypeParameterB");
}
@Override
@@ -80,44 +76,42 @@ public class CANOpenHeartbeatPayload extends CANOpenPayload implements Message {
@Override
public int getLengthInBits() {
int lengthInBits = super.getLengthInBits();
- CANOpenHeartbeatPayload _value = this;
+ EnumDiscriminatedTypeParameterB _value = this;
- // Simple field (state)
+ // Simple field (simpB)
lengthInBits += 8;
return lengthInBits;
}
- public static CANOpenHeartbeatPayloadBuilder staticParseBuilder(
- ReadBuffer readBuffer, CANOpenService service) throws ParseException {
- readBuffer.pullContext("CANOpenHeartbeatPayload");
+ public static EnumDiscriminatedTypeParameterBuilder
+ staticParseEnumDiscriminatedTypeParameterBuilder(ReadBuffer readBuffer, EnumType discr)
+ throws ParseException {
+ readBuffer.pullContext("EnumDiscriminatedTypeParameterB");
PositionAware positionAware = readBuffer;
int startPos = positionAware.getPos();
int curPos;
- NMTState state =
- readEnumField(
- "state",
- "NMTState",
- new DataReaderEnumDefault<>(NMTState::enumForValue, readUnsignedShort(readBuffer, 8)));
+ short simpB = readSimpleField("simpB", readUnsignedShort(readBuffer, 8));
- readBuffer.closeContext("CANOpenHeartbeatPayload");
+ readBuffer.closeContext("EnumDiscriminatedTypeParameterB");
// Create the instance
- return new CANOpenHeartbeatPayloadBuilder(state);
+ return new EnumDiscriminatedTypeParameterBBuilderImpl(simpB);
}
- public static class CANOpenHeartbeatPayloadBuilder
- implements CANOpenPayload.CANOpenPayloadBuilder {
- private final NMTState state;
+ public static class EnumDiscriminatedTypeParameterBBuilderImpl
+ implements EnumDiscriminatedTypeParameter.EnumDiscriminatedTypeParameterBuilder {
+ private final short simpB;
- public CANOpenHeartbeatPayloadBuilder(NMTState state) {
+ public EnumDiscriminatedTypeParameterBBuilderImpl(short simpB) {
- this.state = state;
+ this.simpB = simpB;
}
- public CANOpenHeartbeatPayload build() {
- CANOpenHeartbeatPayload cANOpenHeartbeatPayload = new CANOpenHeartbeatPayload(state);
- return cANOpenHeartbeatPayload;
+ public EnumDiscriminatedTypeParameterB build() {
+ EnumDiscriminatedTypeParameterB enumDiscriminatedTypeParameterB =
+ new EnumDiscriminatedTypeParameterB(simpB);
+ return enumDiscriminatedTypeParameterB;
}
}
@@ -126,16 +120,16 @@ public class CANOpenHeartbeatPayload extends CANOpenPayload implements Message {
if (this == o) {
return true;
}
- if (!(o instanceof CANOpenHeartbeatPayload)) {
+ if (!(o instanceof EnumDiscriminatedTypeParameterB)) {
return false;
}
- CANOpenHeartbeatPayload that = (CANOpenHeartbeatPayload) o;
- return (getState() == that.getState()) && super.equals(that) && true;
+ EnumDiscriminatedTypeParameterB that = (EnumDiscriminatedTypeParameterB) o;
+ return (getSimpB() == that.getSimpB()) && super.equals(that) && true;
}
@Override
public int hashCode() {
- return Objects.hash(super.hashCode(), getState());
+ return Objects.hash(super.hashCode(), getSimpB());
}
@Override
diff --git a/plc4j/drivers/knxnetip/src/main/generated/org/apache/plc4x/java/knxnetip/readwrite/KnxNetRemoteLogging.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeParameterC.java
similarity index 57%
copy from plc4j/drivers/knxnetip/src/main/generated/org/apache/plc4x/java/knxnetip/readwrite/KnxNetRemoteLogging.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeParameterC.java
index d5cde72c42..7fb1c26c91 100644
--- a/plc4j/drivers/knxnetip/src/main/generated/org/apache/plc4x/java/knxnetip/readwrite/KnxNetRemoteLogging.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeParameterC.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.knxnetip.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,35 +35,37 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public class KnxNetRemoteLogging extends ServiceId implements Message {
+public class EnumDiscriminatedTypeParameterC extends EnumDiscriminatedTypeParameter
+ implements Message {
// Accessors for discriminator values.
- public Short getServiceType() {
- return (short) 0x06;
+ public EnumType getDiscr() {
+ return EnumType.INT;
}
// Properties.
- protected final short version;
+ protected final short simpC;
- public KnxNetRemoteLogging(short version) {
+ public EnumDiscriminatedTypeParameterC(short simpC) {
super();
- this.version = version;
+ this.simpC = simpC;
}
- public short getVersion() {
- return version;
+ public short getSimpC() {
+ return simpC;
}
@Override
- protected void serializeServiceIdChild(WriteBuffer writeBuffer) throws SerializationException {
+ protected void serializeEnumDiscriminatedTypeParameterChild(WriteBuffer writeBuffer)
+ throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("KnxNetRemoteLogging");
+ writeBuffer.pushContext("EnumDiscriminatedTypeParameterC");
- // Simple Field (version)
- writeSimpleField("version", version, writeUnsignedShort(writeBuffer, 8));
+ // Simple Field (simpC)
+ writeSimpleField("simpC", simpC, writeUnsignedShort(writeBuffer, 8));
- writeBuffer.popContext("KnxNetRemoteLogging");
+ writeBuffer.popContext("EnumDiscriminatedTypeParameterC");
}
@Override
@@ -74,39 +76,42 @@ public class KnxNetRemoteLogging extends ServiceId implements Message {
@Override
public int getLengthInBits() {
int lengthInBits = super.getLengthInBits();
- KnxNetRemoteLogging _value = this;
+ EnumDiscriminatedTypeParameterC _value = this;
- // Simple field (version)
+ // Simple field (simpC)
lengthInBits += 8;
return lengthInBits;
}
- public static KnxNetRemoteLoggingBuilder staticParseBuilder(ReadBuffer readBuffer)
- throws ParseException {
- readBuffer.pullContext("KnxNetRemoteLogging");
+ public static EnumDiscriminatedTypeParameterBuilder
+ staticParseEnumDiscriminatedTypeParameterBuilder(ReadBuffer readBuffer, EnumType discr)
+ throws ParseException {
+ readBuffer.pullContext("EnumDiscriminatedTypeParameterC");
PositionAware positionAware = readBuffer;
int startPos = positionAware.getPos();
int curPos;
- short version = readSimpleField("version", readUnsignedShort(readBuffer, 8));
+ short simpC = readSimpleField("simpC", readUnsignedShort(readBuffer, 8));
- readBuffer.closeContext("KnxNetRemoteLogging");
+ readBuffer.closeContext("EnumDiscriminatedTypeParameterC");
// Create the instance
- return new KnxNetRemoteLoggingBuilder(version);
+ return new EnumDiscriminatedTypeParameterCBuilderImpl(simpC);
}
- public static class KnxNetRemoteLoggingBuilder implements ServiceId.ServiceIdBuilder {
- private final short version;
+ public static class EnumDiscriminatedTypeParameterCBuilderImpl
+ implements EnumDiscriminatedTypeParameter.EnumDiscriminatedTypeParameterBuilder {
+ private final short simpC;
- public KnxNetRemoteLoggingBuilder(short version) {
+ public EnumDiscriminatedTypeParameterCBuilderImpl(short simpC) {
- this.version = version;
+ this.simpC = simpC;
}
- public KnxNetRemoteLogging build() {
- KnxNetRemoteLogging knxNetRemoteLogging = new KnxNetRemoteLogging(version);
- return knxNetRemoteLogging;
+ public EnumDiscriminatedTypeParameterC build() {
+ EnumDiscriminatedTypeParameterC enumDiscriminatedTypeParameterC =
+ new EnumDiscriminatedTypeParameterC(simpC);
+ return enumDiscriminatedTypeParameterC;
}
}
@@ -115,16 +120,16 @@ public class KnxNetRemoteLogging extends ServiceId implements Message {
if (this == o) {
return true;
}
- if (!(o instanceof KnxNetRemoteLogging)) {
+ if (!(o instanceof EnumDiscriminatedTypeParameterC)) {
return false;
}
- KnxNetRemoteLogging that = (KnxNetRemoteLogging) o;
- return (getVersion() == that.getVersion()) && super.equals(that) && true;
+ EnumDiscriminatedTypeParameterC that = (EnumDiscriminatedTypeParameterC) o;
+ return (getSimpC() == that.getSimpC()) && super.equals(that) && true;
}
@Override
public int hashCode() {
- return Objects.hash(super.hashCode(), getVersion());
+ return Objects.hash(super.hashCode(), getSimpC());
}
@Override
diff --git a/plc4j/drivers/s7/src/main/generated/org/apache/plc4x/java/s7/readwrite/S7Payload.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeParameterMultiple.java
similarity index 53%
copy from plc4j/drivers/s7/src/main/generated/org/apache/plc4x/java/s7/readwrite/S7Payload.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeParameterMultiple.java
index 6e7e5aa558..a5aa522d53 100644
--- a/plc4j/drivers/s7/src/main/generated/org/apache/plc4x/java/s7/readwrite/S7Payload.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeParameterMultiple.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.s7.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,33 +35,29 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public abstract class S7Payload implements Message {
+public abstract class EnumDiscriminatedTypeParameterMultiple implements Message {
// Abstract accessors for discriminator values.
- public abstract Short getMessageType();
+ public abstract EnumType getDiscr1();
- public abstract Short getParameterParameterType();
+ public abstract EnumTypeInt getDiscr2();
- // Arguments.
- protected final S7Parameter parameter;
-
- public S7Payload(S7Parameter parameter) {
+ public EnumDiscriminatedTypeParameterMultiple() {
super();
- this.parameter = parameter;
}
- protected abstract void serializeS7PayloadChild(WriteBuffer writeBuffer)
- throws SerializationException;
+ protected abstract void serializeEnumDiscriminatedTypeParameterMultipleChild(
+ WriteBuffer writeBuffer) throws SerializationException;
public void serialize(WriteBuffer writeBuffer) throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("S7Payload");
+ writeBuffer.pushContext("EnumDiscriminatedTypeParameterMultiple");
// Switch field (Serialize the sub-type)
- serializeS7PayloadChild(writeBuffer);
+ serializeEnumDiscriminatedTypeParameterMultipleChild(writeBuffer);
- writeBuffer.popContext("S7Payload");
+ writeBuffer.popContext("EnumDiscriminatedTypeParameterMultiple");
}
@Override
@@ -72,83 +68,89 @@ public abstract class S7Payload implements Message {
@Override
public int getLengthInBits() {
int lengthInBits = 0;
- S7Payload _value = this;
+ EnumDiscriminatedTypeParameterMultiple _value = this;
// Length of sub-type elements will be added by sub-type...
return lengthInBits;
}
- public static S7Payload staticParse(ReadBuffer readBuffer, Object... args) throws ParseException {
+ public static EnumDiscriminatedTypeParameterMultiple staticParse(
+ ReadBuffer readBuffer, Object... args) throws ParseException {
PositionAware positionAware = readBuffer;
if ((args == null) || (args.length != 2)) {
throw new PlcRuntimeException(
"Wrong number of arguments, expected 2, but got " + args.length);
}
- Short messageType;
- if (args[0] instanceof Short) {
- messageType = (Short) args[0];
+ EnumType discr1;
+ if (args[0] instanceof EnumType) {
+ discr1 = (EnumType) args[0];
} else if (args[0] instanceof String) {
- messageType = Short.valueOf((String) args[0]);
+ discr1 = EnumType.valueOf((String) args[0]);
} else {
throw new PlcRuntimeException(
- "Argument 0 expected to be of type Short or a string which is parseable but was "
+ "Argument 0 expected to be of type EnumType or a string which is parseable but was "
+ args[0].getClass().getName());
}
- S7Parameter parameter;
- if (args[1] instanceof S7Parameter) {
- parameter = (S7Parameter) args[1];
+ EnumTypeInt discr2;
+ if (args[1] instanceof EnumTypeInt) {
+ discr2 = (EnumTypeInt) args[1];
+ } else if (args[1] instanceof String) {
+ discr2 = EnumTypeInt.valueOf((String) args[1]);
} else {
throw new PlcRuntimeException(
- "Argument 1 expected to be of type S7Parameter or a string which is parseable but was "
+ "Argument 1 expected to be of type EnumTypeInt or a string which is parseable but was "
+ args[1].getClass().getName());
}
- return staticParse(readBuffer, messageType, parameter);
+ return staticParse(readBuffer, discr1, discr2);
}
- public static S7Payload staticParse(
- ReadBuffer readBuffer, Short messageType, S7Parameter parameter) throws ParseException {
- readBuffer.pullContext("S7Payload");
+ public static EnumDiscriminatedTypeParameterMultiple staticParse(
+ ReadBuffer readBuffer, EnumType discr1, EnumTypeInt discr2) throws ParseException {
+ readBuffer.pullContext("EnumDiscriminatedTypeParameterMultiple");
PositionAware positionAware = readBuffer;
int startPos = positionAware.getPos();
int curPos;
// Switch Field (Depending on the discriminator values, passes the instantiation to a sub-type)
- S7PayloadBuilder builder = null;
- if (EvaluationHelper.equals(parameter.getParameterType(), (short) 0x04)
- && EvaluationHelper.equals(messageType, (short) 0x03)) {
- builder = S7PayloadReadVarResponse.staticParseBuilder(readBuffer, messageType, parameter);
- } else if (EvaluationHelper.equals(parameter.getParameterType(), (short) 0x05)
- && EvaluationHelper.equals(messageType, (short) 0x01)) {
- builder = S7PayloadWriteVarRequest.staticParseBuilder(readBuffer, messageType, parameter);
- } else if (EvaluationHelper.equals(parameter.getParameterType(), (short) 0x05)
- && EvaluationHelper.equals(messageType, (short) 0x03)) {
- builder = S7PayloadWriteVarResponse.staticParseBuilder(readBuffer, messageType, parameter);
- } else if (EvaluationHelper.equals(parameter.getParameterType(), (short) 0x00)
- && EvaluationHelper.equals(messageType, (short) 0x07)) {
- builder = S7PayloadUserData.staticParseBuilder(readBuffer, messageType, parameter);
+ EnumDiscriminatedTypeParameterMultipleBuilder builder = null;
+ if (EvaluationHelper.equals(discr1, EnumType.BOOL)
+ && EvaluationHelper.equals(discr2, EnumTypeInt.BOOLINT)) {
+ builder =
+ EnumDiscriminatedTypeParameterMultipleA
+ .staticParseEnumDiscriminatedTypeParameterMultipleBuilder(readBuffer, discr1, discr2);
+ } else if (EvaluationHelper.equals(discr1, EnumType.UINT)
+ && EvaluationHelper.equals(discr2, EnumTypeInt.UINTINT)) {
+ builder =
+ EnumDiscriminatedTypeParameterMultipleB
+ .staticParseEnumDiscriminatedTypeParameterMultipleBuilder(readBuffer, discr1, discr2);
+ } else if (EvaluationHelper.equals(discr1, EnumType.INT)
+ && EvaluationHelper.equals(discr2, EnumTypeInt.INTINT)) {
+ builder =
+ EnumDiscriminatedTypeParameterMultipleC
+ .staticParseEnumDiscriminatedTypeParameterMultipleBuilder(readBuffer, discr1, discr2);
}
if (builder == null) {
throw new ParseException(
"Unsupported case for discriminated type"
+ " parameters ["
- + "parameterparameterType="
- + parameter.getParameterType()
+ + "discr1="
+ + discr1
+ " "
- + "messageType="
- + messageType
+ + "discr2="
+ + discr2
+ "]");
}
- readBuffer.closeContext("S7Payload");
+ readBuffer.closeContext("EnumDiscriminatedTypeParameterMultiple");
// Create the instance
- S7Payload _s7Payload = builder.build(parameter);
-
- return _s7Payload;
+ EnumDiscriminatedTypeParameterMultiple _enumDiscriminatedTypeParameterMultiple =
+ builder.build();
+ return _enumDiscriminatedTypeParameterMultiple;
}
- public static interface S7PayloadBuilder {
- S7Payload build(S7Parameter parameter);
+ public interface EnumDiscriminatedTypeParameterMultipleBuilder {
+ EnumDiscriminatedTypeParameterMultiple build();
}
@Override
@@ -156,10 +158,10 @@ public abstract class S7Payload implements Message {
if (this == o) {
return true;
}
- if (!(o instanceof S7Payload)) {
+ if (!(o instanceof EnumDiscriminatedTypeParameterMultiple)) {
return false;
}
- S7Payload that = (S7Payload) o;
+ EnumDiscriminatedTypeParameterMultiple that = (EnumDiscriminatedTypeParameterMultiple) o;
return true;
}
diff --git a/plc4j/drivers/modbus/src/main/generated/org/apache/plc4x/java/modbus/readwrite/ModbusPDUError.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeParameterMultipleA.java
similarity index 54%
copy from plc4j/drivers/modbus/src/main/generated/org/apache/plc4x/java/modbus/readwrite/ModbusPDUError.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeParameterMultipleA.java
index 1f91461099..463e50d90a 100644
--- a/plc4j/drivers/modbus/src/main/generated/org/apache/plc4x/java/modbus/readwrite/ModbusPDUError.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeParameterMultipleA.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.modbus.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,48 +35,41 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public class ModbusPDUError extends ModbusPDU implements Message {
+public class EnumDiscriminatedTypeParameterMultipleA extends EnumDiscriminatedTypeParameterMultiple
+ implements Message {
// Accessors for discriminator values.
- public Boolean getErrorFlag() {
- return (boolean) true;
+ public EnumType getDiscr1() {
+ return EnumType.BOOL;
}
- public Short getFunctionFlag() {
- return 0;
- }
-
- public Boolean getResponse() {
- return false;
+ public EnumTypeInt getDiscr2() {
+ return EnumTypeInt.BOOLINT;
}
// Properties.
- protected final ModbusErrorCode exceptionCode;
+ protected final short simpA;
- public ModbusPDUError(ModbusErrorCode exceptionCode) {
+ public EnumDiscriminatedTypeParameterMultipleA(short simpA) {
super();
- this.exceptionCode = exceptionCode;
+ this.simpA = simpA;
}
- public ModbusErrorCode getExceptionCode() {
- return exceptionCode;
+ public short getSimpA() {
+ return simpA;
}
@Override
- protected void serializeModbusPDUChild(WriteBuffer writeBuffer) throws SerializationException {
+ protected void serializeEnumDiscriminatedTypeParameterMultipleChild(WriteBuffer writeBuffer)
+ throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("ModbusPDUError");
+ writeBuffer.pushContext("EnumDiscriminatedTypeParameterMultipleA");
- // Simple Field (exceptionCode)
- writeSimpleEnumField(
- "exceptionCode",
- "ModbusErrorCode",
- exceptionCode,
- new DataWriterEnumDefault<>(
- ModbusErrorCode::getValue, ModbusErrorCode::name, writeUnsignedShort(writeBuffer, 8)));
+ // Simple Field (simpA)
+ writeSimpleField("simpA", simpA, writeUnsignedShort(writeBuffer, 8));
- writeBuffer.popContext("ModbusPDUError");
+ writeBuffer.popContext("EnumDiscriminatedTypeParameterMultipleA");
}
@Override
@@ -87,44 +80,43 @@ public class ModbusPDUError extends ModbusPDU implements Message {
@Override
public int getLengthInBits() {
int lengthInBits = super.getLengthInBits();
- ModbusPDUError _value = this;
+ EnumDiscriminatedTypeParameterMultipleA _value = this;
- // Simple field (exceptionCode)
+ // Simple field (simpA)
lengthInBits += 8;
return lengthInBits;
}
- public static ModbusPDUErrorBuilder staticParseBuilder(ReadBuffer readBuffer, Boolean response)
- throws ParseException {
- readBuffer.pullContext("ModbusPDUError");
+ public static EnumDiscriminatedTypeParameterMultipleBuilder
+ staticParseEnumDiscriminatedTypeParameterMultipleBuilder(
+ ReadBuffer readBuffer, EnumType discr1, EnumTypeInt discr2) throws ParseException {
+ readBuffer.pullContext("EnumDiscriminatedTypeParameterMultipleA");
PositionAware positionAware = readBuffer;
int startPos = positionAware.getPos();
int curPos;
- ModbusErrorCode exceptionCode =
- readEnumField(
- "exceptionCode",
- "ModbusErrorCode",
- new DataReaderEnumDefault<>(
- ModbusErrorCode::enumForValue, readUnsignedShort(readBuffer, 8)));
+ short simpA = readSimpleField("simpA", readUnsignedShort(readBuffer, 8));
- readBuffer.closeContext("ModbusPDUError");
+ readBuffer.closeContext("EnumDiscriminatedTypeParameterMultipleA");
// Create the instance
- return new ModbusPDUErrorBuilder(exceptionCode);
+ return new EnumDiscriminatedTypeParameterMultipleABuilderImpl(simpA);
}
- public static class ModbusPDUErrorBuilder implements ModbusPDU.ModbusPDUBuilder {
- private final ModbusErrorCode exceptionCode;
+ public static class EnumDiscriminatedTypeParameterMultipleABuilderImpl
+ implements EnumDiscriminatedTypeParameterMultiple
+ .EnumDiscriminatedTypeParameterMultipleBuilder {
+ private final short simpA;
- public ModbusPDUErrorBuilder(ModbusErrorCode exceptionCode) {
+ public EnumDiscriminatedTypeParameterMultipleABuilderImpl(short simpA) {
- this.exceptionCode = exceptionCode;
+ this.simpA = simpA;
}
- public ModbusPDUError build() {
- ModbusPDUError modbusPDUError = new ModbusPDUError(exceptionCode);
- return modbusPDUError;
+ public EnumDiscriminatedTypeParameterMultipleA build() {
+ EnumDiscriminatedTypeParameterMultipleA enumDiscriminatedTypeParameterMultipleA =
+ new EnumDiscriminatedTypeParameterMultipleA(simpA);
+ return enumDiscriminatedTypeParameterMultipleA;
}
}
@@ -133,16 +125,16 @@ public class ModbusPDUError extends ModbusPDU implements Message {
if (this == o) {
return true;
}
- if (!(o instanceof ModbusPDUError)) {
+ if (!(o instanceof EnumDiscriminatedTypeParameterMultipleA)) {
return false;
}
- ModbusPDUError that = (ModbusPDUError) o;
- return (getExceptionCode() == that.getExceptionCode()) && super.equals(that) && true;
+ EnumDiscriminatedTypeParameterMultipleA that = (EnumDiscriminatedTypeParameterMultipleA) o;
+ return (getSimpA() == that.getSimpA()) && super.equals(that) && true;
}
@Override
public int hashCode() {
- return Objects.hash(super.hashCode(), getExceptionCode());
+ return Objects.hash(super.hashCode(), getSimpA());
}
@Override
diff --git a/plc4j/drivers/canopen/src/main/generated/org/apache/plc4x/java/canopen/readwrite/CANOpenHeartbeatPayload.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeParameterMultipleB.java
similarity index 54%
copy from plc4j/drivers/canopen/src/main/generated/org/apache/plc4x/java/canopen/readwrite/CANOpenHeartbeatPayload.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeParameterMultipleB.java
index eb4f353360..934a1e2f7f 100644
--- a/plc4j/drivers/canopen/src/main/generated/org/apache/plc4x/java/canopen/readwrite/CANOpenHeartbeatPayload.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeParameterMultipleB.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.canopen.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,41 +35,41 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public class CANOpenHeartbeatPayload extends CANOpenPayload implements Message {
+public class EnumDiscriminatedTypeParameterMultipleB extends EnumDiscriminatedTypeParameterMultiple
+ implements Message {
// Accessors for discriminator values.
- public CANOpenService getService() {
- return CANOpenService.HEARTBEAT;
+ public EnumType getDiscr1() {
+ return EnumType.UINT;
+ }
+
+ public EnumTypeInt getDiscr2() {
+ return EnumTypeInt.UINTINT;
}
// Properties.
- protected final NMTState state;
+ protected final short simpB;
- public CANOpenHeartbeatPayload(NMTState state) {
+ public EnumDiscriminatedTypeParameterMultipleB(short simpB) {
super();
- this.state = state;
+ this.simpB = simpB;
}
- public NMTState getState() {
- return state;
+ public short getSimpB() {
+ return simpB;
}
@Override
- protected void serializeCANOpenPayloadChild(WriteBuffer writeBuffer)
+ protected void serializeEnumDiscriminatedTypeParameterMultipleChild(WriteBuffer writeBuffer)
throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("CANOpenHeartbeatPayload");
+ writeBuffer.pushContext("EnumDiscriminatedTypeParameterMultipleB");
- // Simple Field (state)
- writeSimpleEnumField(
- "state",
- "NMTState",
- state,
- new DataWriterEnumDefault<>(
- NMTState::getValue, NMTState::name, writeUnsignedShort(writeBuffer, 8)));
+ // Simple Field (simpB)
+ writeSimpleField("simpB", simpB, writeUnsignedShort(writeBuffer, 8));
- writeBuffer.popContext("CANOpenHeartbeatPayload");
+ writeBuffer.popContext("EnumDiscriminatedTypeParameterMultipleB");
}
@Override
@@ -80,44 +80,43 @@ public class CANOpenHeartbeatPayload extends CANOpenPayload implements Message {
@Override
public int getLengthInBits() {
int lengthInBits = super.getLengthInBits();
- CANOpenHeartbeatPayload _value = this;
+ EnumDiscriminatedTypeParameterMultipleB _value = this;
- // Simple field (state)
+ // Simple field (simpB)
lengthInBits += 8;
return lengthInBits;
}
- public static CANOpenHeartbeatPayloadBuilder staticParseBuilder(
- ReadBuffer readBuffer, CANOpenService service) throws ParseException {
- readBuffer.pullContext("CANOpenHeartbeatPayload");
+ public static EnumDiscriminatedTypeParameterMultipleBuilder
+ staticParseEnumDiscriminatedTypeParameterMultipleBuilder(
+ ReadBuffer readBuffer, EnumType discr1, EnumTypeInt discr2) throws ParseException {
+ readBuffer.pullContext("EnumDiscriminatedTypeParameterMultipleB");
PositionAware positionAware = readBuffer;
int startPos = positionAware.getPos();
int curPos;
- NMTState state =
- readEnumField(
- "state",
- "NMTState",
- new DataReaderEnumDefault<>(NMTState::enumForValue, readUnsignedShort(readBuffer, 8)));
+ short simpB = readSimpleField("simpB", readUnsignedShort(readBuffer, 8));
- readBuffer.closeContext("CANOpenHeartbeatPayload");
+ readBuffer.closeContext("EnumDiscriminatedTypeParameterMultipleB");
// Create the instance
- return new CANOpenHeartbeatPayloadBuilder(state);
+ return new EnumDiscriminatedTypeParameterMultipleBBuilderImpl(simpB);
}
- public static class CANOpenHeartbeatPayloadBuilder
- implements CANOpenPayload.CANOpenPayloadBuilder {
- private final NMTState state;
+ public static class EnumDiscriminatedTypeParameterMultipleBBuilderImpl
+ implements EnumDiscriminatedTypeParameterMultiple
+ .EnumDiscriminatedTypeParameterMultipleBuilder {
+ private final short simpB;
- public CANOpenHeartbeatPayloadBuilder(NMTState state) {
+ public EnumDiscriminatedTypeParameterMultipleBBuilderImpl(short simpB) {
- this.state = state;
+ this.simpB = simpB;
}
- public CANOpenHeartbeatPayload build() {
- CANOpenHeartbeatPayload cANOpenHeartbeatPayload = new CANOpenHeartbeatPayload(state);
- return cANOpenHeartbeatPayload;
+ public EnumDiscriminatedTypeParameterMultipleB build() {
+ EnumDiscriminatedTypeParameterMultipleB enumDiscriminatedTypeParameterMultipleB =
+ new EnumDiscriminatedTypeParameterMultipleB(simpB);
+ return enumDiscriminatedTypeParameterMultipleB;
}
}
@@ -126,16 +125,16 @@ public class CANOpenHeartbeatPayload extends CANOpenPayload implements Message {
if (this == o) {
return true;
}
- if (!(o instanceof CANOpenHeartbeatPayload)) {
+ if (!(o instanceof EnumDiscriminatedTypeParameterMultipleB)) {
return false;
}
- CANOpenHeartbeatPayload that = (CANOpenHeartbeatPayload) o;
- return (getState() == that.getState()) && super.equals(that) && true;
+ EnumDiscriminatedTypeParameterMultipleB that = (EnumDiscriminatedTypeParameterMultipleB) o;
+ return (getSimpB() == that.getSimpB()) && super.equals(that) && true;
}
@Override
public int hashCode() {
- return Objects.hash(super.hashCode(), getState());
+ return Objects.hash(super.hashCode(), getSimpB());
}
@Override
diff --git a/plc4j/drivers/canopen/src/main/generated/org/apache/plc4x/java/canopen/readwrite/CANOpenHeartbeatPayload.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeParameterMultipleC.java
similarity index 54%
copy from plc4j/drivers/canopen/src/main/generated/org/apache/plc4x/java/canopen/readwrite/CANOpenHeartbeatPayload.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeParameterMultipleC.java
index eb4f353360..c3ddc71c3e 100644
--- a/plc4j/drivers/canopen/src/main/generated/org/apache/plc4x/java/canopen/readwrite/CANOpenHeartbeatPayload.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumDiscriminatedTypeParameterMultipleC.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.canopen.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,41 +35,41 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public class CANOpenHeartbeatPayload extends CANOpenPayload implements Message {
+public class EnumDiscriminatedTypeParameterMultipleC extends EnumDiscriminatedTypeParameterMultiple
+ implements Message {
// Accessors for discriminator values.
- public CANOpenService getService() {
- return CANOpenService.HEARTBEAT;
+ public EnumType getDiscr1() {
+ return EnumType.INT;
+ }
+
+ public EnumTypeInt getDiscr2() {
+ return EnumTypeInt.INTINT;
}
// Properties.
- protected final NMTState state;
+ protected final short simpC;
- public CANOpenHeartbeatPayload(NMTState state) {
+ public EnumDiscriminatedTypeParameterMultipleC(short simpC) {
super();
- this.state = state;
+ this.simpC = simpC;
}
- public NMTState getState() {
- return state;
+ public short getSimpC() {
+ return simpC;
}
@Override
- protected void serializeCANOpenPayloadChild(WriteBuffer writeBuffer)
+ protected void serializeEnumDiscriminatedTypeParameterMultipleChild(WriteBuffer writeBuffer)
throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("CANOpenHeartbeatPayload");
+ writeBuffer.pushContext("EnumDiscriminatedTypeParameterMultipleC");
- // Simple Field (state)
- writeSimpleEnumField(
- "state",
- "NMTState",
- state,
- new DataWriterEnumDefault<>(
- NMTState::getValue, NMTState::name, writeUnsignedShort(writeBuffer, 8)));
+ // Simple Field (simpC)
+ writeSimpleField("simpC", simpC, writeUnsignedShort(writeBuffer, 8));
- writeBuffer.popContext("CANOpenHeartbeatPayload");
+ writeBuffer.popContext("EnumDiscriminatedTypeParameterMultipleC");
}
@Override
@@ -80,44 +80,43 @@ public class CANOpenHeartbeatPayload extends CANOpenPayload implements Message {
@Override
public int getLengthInBits() {
int lengthInBits = super.getLengthInBits();
- CANOpenHeartbeatPayload _value = this;
+ EnumDiscriminatedTypeParameterMultipleC _value = this;
- // Simple field (state)
+ // Simple field (simpC)
lengthInBits += 8;
return lengthInBits;
}
- public static CANOpenHeartbeatPayloadBuilder staticParseBuilder(
- ReadBuffer readBuffer, CANOpenService service) throws ParseException {
- readBuffer.pullContext("CANOpenHeartbeatPayload");
+ public static EnumDiscriminatedTypeParameterMultipleBuilder
+ staticParseEnumDiscriminatedTypeParameterMultipleBuilder(
+ ReadBuffer readBuffer, EnumType discr1, EnumTypeInt discr2) throws ParseException {
+ readBuffer.pullContext("EnumDiscriminatedTypeParameterMultipleC");
PositionAware positionAware = readBuffer;
int startPos = positionAware.getPos();
int curPos;
- NMTState state =
- readEnumField(
- "state",
- "NMTState",
- new DataReaderEnumDefault<>(NMTState::enumForValue, readUnsignedShort(readBuffer, 8)));
+ short simpC = readSimpleField("simpC", readUnsignedShort(readBuffer, 8));
- readBuffer.closeContext("CANOpenHeartbeatPayload");
+ readBuffer.closeContext("EnumDiscriminatedTypeParameterMultipleC");
// Create the instance
- return new CANOpenHeartbeatPayloadBuilder(state);
+ return new EnumDiscriminatedTypeParameterMultipleCBuilderImpl(simpC);
}
- public static class CANOpenHeartbeatPayloadBuilder
- implements CANOpenPayload.CANOpenPayloadBuilder {
- private final NMTState state;
+ public static class EnumDiscriminatedTypeParameterMultipleCBuilderImpl
+ implements EnumDiscriminatedTypeParameterMultiple
+ .EnumDiscriminatedTypeParameterMultipleBuilder {
+ private final short simpC;
- public CANOpenHeartbeatPayloadBuilder(NMTState state) {
+ public EnumDiscriminatedTypeParameterMultipleCBuilderImpl(short simpC) {
- this.state = state;
+ this.simpC = simpC;
}
- public CANOpenHeartbeatPayload build() {
- CANOpenHeartbeatPayload cANOpenHeartbeatPayload = new CANOpenHeartbeatPayload(state);
- return cANOpenHeartbeatPayload;
+ public EnumDiscriminatedTypeParameterMultipleC build() {
+ EnumDiscriminatedTypeParameterMultipleC enumDiscriminatedTypeParameterMultipleC =
+ new EnumDiscriminatedTypeParameterMultipleC(simpC);
+ return enumDiscriminatedTypeParameterMultipleC;
}
}
@@ -126,16 +125,16 @@ public class CANOpenHeartbeatPayload extends CANOpenPayload implements Message {
if (this == o) {
return true;
}
- if (!(o instanceof CANOpenHeartbeatPayload)) {
+ if (!(o instanceof EnumDiscriminatedTypeParameterMultipleC)) {
return false;
}
- CANOpenHeartbeatPayload that = (CANOpenHeartbeatPayload) o;
- return (getState() == that.getState()) && super.equals(that) && true;
+ EnumDiscriminatedTypeParameterMultipleC that = (EnumDiscriminatedTypeParameterMultipleC) o;
+ return (getSimpC() == that.getSimpC()) && super.equals(that) && true;
}
@Override
public int hashCode() {
- return Objects.hash(super.hashCode(), getState());
+ return Objects.hash(super.hashCode(), getSimpC());
}
@Override
diff --git a/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumType.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumType.java
new file mode 100644
index 0000000000..b33ec4683f
--- /dev/null
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumType.java
@@ -0,0 +1,57 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.plc4x.java.test.readwrite;
+
+import java.util.HashMap;
+import java.util.Map;
+
+// Code generated by code-generation. DO NOT EDIT.
+
+public enum EnumType {
+ BOOL((short) 0x01),
+ UINT((short) 0x02),
+ INT((short) 0x03),
+ BYTE_ARRAY((short) 0x11);
+ private static final Map<Short, EnumType> map;
+
+ static {
+ map = new HashMap<>();
+ for (EnumType value : EnumType.values()) {
+ map.put((short) value.getValue(), value);
+ }
+ }
+
+ private short value;
+
+ EnumType(short value) {
+ this.value = value;
+ }
+
+ public short getValue() {
+ return value;
+ }
+
+ public static EnumType enumForValue(short value) {
+ return map.get(value);
+ }
+
+ public static Boolean isDefined(short value) {
+ return map.containsKey(value);
+ }
+}
diff --git a/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumTypeBit.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumTypeBit.java
new file mode 100644
index 0000000000..62468467a8
--- /dev/null
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumTypeBit.java
@@ -0,0 +1,55 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.plc4x.java.test.readwrite;
+
+import java.util.HashMap;
+import java.util.Map;
+
+// Code generated by code-generation. DO NOT EDIT.
+
+public enum EnumTypeBit {
+ TRUE((boolean) true),
+ FALSE((boolean) false);
+ private static final Map<Boolean, EnumTypeBit> map;
+
+ static {
+ map = new HashMap<>();
+ for (EnumTypeBit value : EnumTypeBit.values()) {
+ map.put((boolean) value.getValue(), value);
+ }
+ }
+
+ private boolean value;
+
+ EnumTypeBit(boolean value) {
+ this.value = value;
+ }
+
+ public boolean getValue() {
+ return value;
+ }
+
+ public static EnumTypeBit enumForValue(boolean value) {
+ return map.get(value);
+ }
+
+ public static Boolean isDefined(boolean value) {
+ return map.containsKey(value);
+ }
+}
diff --git a/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumTypeInt.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumTypeInt.java
new file mode 100644
index 0000000000..f11326834c
--- /dev/null
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumTypeInt.java
@@ -0,0 +1,56 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.plc4x.java.test.readwrite;
+
+import java.util.HashMap;
+import java.util.Map;
+
+// Code generated by code-generation. DO NOT EDIT.
+
+public enum EnumTypeInt {
+ BOOLINT((byte) 0x01),
+ UINTINT((byte) 0x02),
+ INTINT((byte) 0x03);
+ private static final Map<Byte, EnumTypeInt> map;
+
+ static {
+ map = new HashMap<>();
+ for (EnumTypeInt value : EnumTypeInt.values()) {
+ map.put((byte) value.getValue(), value);
+ }
+ }
+
+ private byte value;
+
+ EnumTypeInt(byte value) {
+ this.value = value;
+ }
+
+ public byte getValue() {
+ return value;
+ }
+
+ public static EnumTypeInt enumForValue(byte value) {
+ return map.get(value);
+ }
+
+ public static Boolean isDefined(byte value) {
+ return map.containsKey(value);
+ }
+}
diff --git a/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumTypeParameters.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumTypeParameters.java
new file mode 100644
index 0000000000..89856065ba
--- /dev/null
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumTypeParameters.java
@@ -0,0 +1,188 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.plc4x.java.test.readwrite;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+// Code generated by code-generation. DO NOT EDIT.
+
+public enum EnumTypeParameters {
+ BOOL((byte) 0x01, (short) 1, (byte) 1, (String) "BOOL", EnumType.BOOL, (boolean) false),
+ BYTE((byte) 0x02, (short) 2, (byte) 2, (String) "BYTE", EnumType.UINT, (boolean) true);
+ private static final Map<Byte, EnumTypeParameters> map;
+
+ static {
+ map = new HashMap<>();
+ for (EnumTypeParameters value : EnumTypeParameters.values()) {
+ map.put((byte) value.getValue(), value);
+ }
+ }
+
+ private byte value;
+ private short uintType;
+ private byte intType;
+ private String stringType;
+ private EnumType enumType;
+ private boolean bitType;
+
+ EnumTypeParameters(
+ byte value,
+ short uintType,
+ byte intType,
+ String stringType,
+ EnumType enumType,
+ boolean bitType) {
+ this.value = value;
+ this.uintType = uintType;
+ this.intType = intType;
+ this.stringType = stringType;
+ this.enumType = enumType;
+ this.bitType = bitType;
+ }
+
+ public byte getValue() {
+ return value;
+ }
+
+ public short getUintType() {
+ return uintType;
+ }
+
+ public static EnumTypeParameters firstEnumForFieldUintType(short fieldValue) {
+ for (EnumTypeParameters _val : EnumTypeParameters.values()) {
+ if (_val.getUintType() == fieldValue) {
+ return _val;
+ }
+ }
+ return null;
+ }
+
+ public static List<EnumTypeParameters> enumsForFieldUintType(short fieldValue) {
+ List<EnumTypeParameters> _values = new ArrayList();
+ for (EnumTypeParameters _val : EnumTypeParameters.values()) {
+ if (_val.getUintType() == fieldValue) {
+ _values.add(_val);
+ }
+ }
+ return _values;
+ }
+
+ public byte getIntType() {
+ return intType;
+ }
+
+ public static EnumTypeParameters firstEnumForFieldIntType(byte fieldValue) {
+ for (EnumTypeParameters _val : EnumTypeParameters.values()) {
+ if (_val.getIntType() == fieldValue) {
+ return _val;
+ }
+ }
+ return null;
+ }
+
+ public static List<EnumTypeParameters> enumsForFieldIntType(byte fieldValue) {
+ List<EnumTypeParameters> _values = new ArrayList();
+ for (EnumTypeParameters _val : EnumTypeParameters.values()) {
+ if (_val.getIntType() == fieldValue) {
+ _values.add(_val);
+ }
+ }
+ return _values;
+ }
+
+ public String getStringType() {
+ return stringType;
+ }
+
+ public static EnumTypeParameters firstEnumForFieldStringType(String fieldValue) {
+ for (EnumTypeParameters _val : EnumTypeParameters.values()) {
+ if (_val.getStringType().equals(fieldValue)) {
+ return _val;
+ }
+ }
+ return null;
+ }
+
+ public static List<EnumTypeParameters> enumsForFieldStringType(String fieldValue) {
+ List<EnumTypeParameters> _values = new ArrayList();
+ for (EnumTypeParameters _val : EnumTypeParameters.values()) {
+ if (_val.getStringType().equals(fieldValue)) {
+ _values.add(_val);
+ }
+ }
+ return _values;
+ }
+
+ public EnumType getEnumType() {
+ return enumType;
+ }
+
+ public static EnumTypeParameters firstEnumForFieldEnumType(EnumType fieldValue) {
+ for (EnumTypeParameters _val : EnumTypeParameters.values()) {
+ if (_val.getEnumType() == fieldValue) {
+ return _val;
+ }
+ }
+ return null;
+ }
+
+ public static List<EnumTypeParameters> enumsForFieldEnumType(EnumType fieldValue) {
+ List<EnumTypeParameters> _values = new ArrayList();
+ for (EnumTypeParameters _val : EnumTypeParameters.values()) {
+ if (_val.getEnumType() == fieldValue) {
+ _values.add(_val);
+ }
+ }
+ return _values;
+ }
+
+ public boolean getBitType() {
+ return bitType;
+ }
+
+ public static EnumTypeParameters firstEnumForFieldBitType(boolean fieldValue) {
+ for (EnumTypeParameters _val : EnumTypeParameters.values()) {
+ if (_val.getBitType() == fieldValue) {
+ return _val;
+ }
+ }
+ return null;
+ }
+
+ public static List<EnumTypeParameters> enumsForFieldBitType(boolean fieldValue) {
+ List<EnumTypeParameters> _values = new ArrayList();
+ for (EnumTypeParameters _val : EnumTypeParameters.values()) {
+ if (_val.getBitType() == fieldValue) {
+ _values.add(_val);
+ }
+ }
+ return _values;
+ }
+
+ public static EnumTypeParameters enumForValue(byte value) {
+ return map.get(value);
+ }
+
+ public static Boolean isDefined(byte value) {
+ return map.containsKey(value);
+ }
+}
diff --git a/plc4j/drivers/knxnetip/src/main/generated/org/apache/plc4x/java/knxnetip/readwrite/KnxNetIpCore.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumTypeTest.java
similarity index 60%
copy from plc4j/drivers/knxnetip/src/main/generated/org/apache/plc4x/java/knxnetip/readwrite/KnxNetIpCore.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumTypeTest.java
index 8f9ab9efaa..e6044da752 100644
--- a/plc4j/drivers/knxnetip/src/main/generated/org/apache/plc4x/java/knxnetip/readwrite/KnxNetIpCore.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/EnumTypeTest.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.knxnetip.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,35 +35,36 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public class KnxNetIpCore extends ServiceId implements Message {
-
- // Accessors for discriminator values.
- public Short getServiceType() {
- return (short) 0x02;
- }
+public class EnumTypeTest implements Message {
// Properties.
- protected final short version;
+ protected final EnumTypeParameters enumField;
- public KnxNetIpCore(short version) {
+ public EnumTypeTest(EnumTypeParameters enumField) {
super();
- this.version = version;
+ this.enumField = enumField;
}
- public short getVersion() {
- return version;
+ public EnumTypeParameters getEnumField() {
+ return enumField;
}
- @Override
- protected void serializeServiceIdChild(WriteBuffer writeBuffer) throws SerializationException {
+ public void serialize(WriteBuffer writeBuffer) throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("KnxNetIpCore");
-
- // Simple Field (version)
- writeSimpleField("version", version, writeUnsignedShort(writeBuffer, 8));
-
- writeBuffer.popContext("KnxNetIpCore");
+ writeBuffer.pushContext("EnumTypeTest");
+
+ // Enum field (enumField)
+ writeEnumField(
+ "enumField",
+ "EnumTypeParameters",
+ enumField,
+ new DataWriterEnumDefault<>(
+ EnumTypeParameters::getIntType,
+ EnumTypeParameters::name,
+ writeSignedByte(writeBuffer, 8)));
+
+ writeBuffer.popContext("EnumTypeTest");
}
@Override
@@ -73,41 +74,38 @@ public class KnxNetIpCore extends ServiceId implements Message {
@Override
public int getLengthInBits() {
- int lengthInBits = super.getLengthInBits();
- KnxNetIpCore _value = this;
+ int lengthInBits = 0;
+ EnumTypeTest _value = this;
- // Simple field (version)
+ // Enum Field (enumField)
lengthInBits += 8;
return lengthInBits;
}
- public static KnxNetIpCoreBuilder staticParseBuilder(ReadBuffer readBuffer)
+ public static EnumTypeTest staticParse(ReadBuffer readBuffer, Object... args)
throws ParseException {
- readBuffer.pullContext("KnxNetIpCore");
+ PositionAware positionAware = readBuffer;
+ return staticParse(readBuffer);
+ }
+
+ public static EnumTypeTest staticParse(ReadBuffer readBuffer) throws ParseException {
+ readBuffer.pullContext("EnumTypeTest");
PositionAware positionAware = readBuffer;
int startPos = positionAware.getPos();
int curPos;
- short version = readSimpleField("version", readUnsignedShort(readBuffer, 8));
+ EnumTypeParameters enumField =
+ readEnumField(
+ "enumField",
+ "EnumTypeParameters",
+ readEnum(EnumTypeParameters::firstEnumForFieldIntType, readSignedByte(readBuffer, 8)));
- readBuffer.closeContext("KnxNetIpCore");
+ readBuffer.closeContext("EnumTypeTest");
// Create the instance
- return new KnxNetIpCoreBuilder(version);
- }
-
- public static class KnxNetIpCoreBuilder implements ServiceId.ServiceIdBuilder {
- private final short version;
-
- public KnxNetIpCoreBuilder(short version) {
-
- this.version = version;
- }
-
- public KnxNetIpCore build() {
- KnxNetIpCore knxNetIpCore = new KnxNetIpCore(version);
- return knxNetIpCore;
- }
+ EnumTypeTest _enumTypeTest;
+ _enumTypeTest = new EnumTypeTest(enumField);
+ return _enumTypeTest;
}
@Override
@@ -115,16 +113,16 @@ public class KnxNetIpCore extends ServiceId implements Message {
if (this == o) {
return true;
}
- if (!(o instanceof KnxNetIpCore)) {
+ if (!(o instanceof EnumTypeTest)) {
return false;
}
- KnxNetIpCore that = (KnxNetIpCore) o;
- return (getVersion() == that.getVersion()) && super.equals(that) && true;
+ EnumTypeTest that = (EnumTypeTest) o;
+ return (getEnumField() == that.getEnumField()) && true;
}
@Override
public int hashCode() {
- return Objects.hash(super.hashCode(), getVersion());
+ return Objects.hash(getEnumField());
}
@Override
diff --git a/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/FieldTypeTest.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/FieldTypeTest.java
new file mode 100644
index 0000000000..2005029990
--- /dev/null
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/FieldTypeTest.java
@@ -0,0 +1,325 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.plc4x.java.test.readwrite;
+
+import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
+import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
+import static org.apache.plc4x.java.spi.codegen.io.DataReaderFactory.*;
+import static org.apache.plc4x.java.spi.codegen.io.DataWriterFactory.*;
+import static org.apache.plc4x.java.spi.generation.StaticHelper.*;
+
+import java.time.*;
+import java.util.*;
+import org.apache.plc4x.java.api.exceptions.*;
+import org.apache.plc4x.java.api.value.*;
+import org.apache.plc4x.java.spi.codegen.*;
+import org.apache.plc4x.java.spi.codegen.fields.*;
+import org.apache.plc4x.java.spi.codegen.io.*;
+import org.apache.plc4x.java.spi.generation.*;
+
+// Code generated by code-generation. DO NOT EDIT.
+
+public class FieldTypeTest implements Message {
+
+ // Constant values.
+ public static final Short CONSTFIELD = 5;
+
+ // Properties.
+ protected final short simpleField;
+ protected final List<Short> arrayFieldCount;
+ protected final List<Short> arrayFieldLength;
+ protected final List<Short> arrayFieldTerminated;
+ protected final short assertField;
+ protected final EnumTypeParameters enumField;
+ protected final short manualField;
+ protected final Short optionalField;
+ protected final short peekField;
+ // Reserved Fields
+ private Short reservedField0;
+
+ public FieldTypeTest(
+ short simpleField,
+ List<Short> arrayFieldCount,
+ List<Short> arrayFieldLength,
+ List<Short> arrayFieldTerminated,
+ short assertField,
+ EnumTypeParameters enumField,
+ short manualField,
+ Short optionalField,
+ short peekField) {
+ super();
+ this.simpleField = simpleField;
+ this.arrayFieldCount = arrayFieldCount;
+ this.arrayFieldLength = arrayFieldLength;
+ this.arrayFieldTerminated = arrayFieldTerminated;
+ this.assertField = assertField;
+ this.enumField = enumField;
+ this.manualField = manualField;
+ this.optionalField = optionalField;
+ this.peekField = peekField;
+ }
+
+ public short getSimpleField() {
+ return simpleField;
+ }
+
+ public List<Short> getArrayFieldCount() {
+ return arrayFieldCount;
+ }
+
+ public List<Short> getArrayFieldLength() {
+ return arrayFieldLength;
+ }
+
+ public List<Short> getArrayFieldTerminated() {
+ return arrayFieldTerminated;
+ }
+
+ public short getAssertField() {
+ return assertField;
+ }
+
+ public EnumTypeParameters getEnumField() {
+ return enumField;
+ }
+
+ public short getManualField() {
+ return manualField;
+ }
+
+ public Short getOptionalField() {
+ return optionalField;
+ }
+
+ public short getPeekField() {
+ return peekField;
+ }
+
+ public short getVirtualField() {
+ return (short) ((getConstField()) + (10));
+ }
+
+ public short getConstField() {
+ return CONSTFIELD;
+ }
+
+ public void serialize(WriteBuffer writeBuffer) throws SerializationException {
+ PositionAware positionAware = writeBuffer;
+ throw new SerializationException("Unknown field not serializable");
+ }
+
+ @Override
+ public int getLengthInBytes() {
+ return (int) Math.ceil((float) getLengthInBits() / 8.0);
+ }
+
+ @Override
+ public int getLengthInBits() {
+ int lengthInBits = 0;
+ FieldTypeTest _value = this;
+
+ // Simple field (simpleField)
+ lengthInBits += 8;
+
+ // Array field
+ if (arrayFieldCount != null) {
+ lengthInBits += 8 * arrayFieldCount.size();
+ }
+
+ // Array field
+ if (arrayFieldLength != null) {
+ lengthInBits += 8 * arrayFieldLength.size();
+ }
+
+ // Array field
+ if (arrayFieldTerminated != null) {
+ lengthInBits += 8 * arrayFieldTerminated.size();
+ }
+
+ // Checksum Field (checksum)
+ lengthInBits += 8;
+
+ // Const Field (constField)
+ lengthInBits += 8;
+
+ // Enum Field (enumField)
+ lengthInBits += 8;
+
+ // Implicit Field (implicitField)
+ lengthInBits += 8;
+
+ // Manual Field (manualField)
+ lengthInBits += (simpleField) * (8);
+
+ // Optional Field (optionalField)
+ if (optionalField != null) {
+ lengthInBits += 8;
+ }
+
+ // Padding Field (padding)
+ int _timesPadding = (int) (simpleField);
+ while (_timesPadding-- > 0) {
+ lengthInBits += 8;
+ }
+
+ // Reserved Field (reserved)
+ lengthInBits += 8;
+
+ // Unknown field
+ lengthInBits += 8;
+
+ // A virtual field doesn't have any in- or output.
+
+ return lengthInBits;
+ }
+
+ public static FieldTypeTest staticParse(ReadBuffer readBuffer, Object... args)
+ throws ParseException {
+ PositionAware positionAware = readBuffer;
+ return staticParse(readBuffer);
+ }
+
+ public static FieldTypeTest staticParse(ReadBuffer readBuffer) throws ParseException {
+ readBuffer.pullContext("FieldTypeTest");
+ PositionAware positionAware = readBuffer;
+ int startPos = positionAware.getPos();
+ int curPos;
+
+ short simpleField = readSimpleField("simpleField", readUnsignedShort(readBuffer, 8));
+
+ List<Short> arrayFieldCount =
+ readCountArrayField("arrayFieldCount", readUnsignedShort(readBuffer, 8), 5);
+
+ List<Short> arrayFieldLength =
+ readLengthArrayField("arrayFieldLength", readUnsignedShort(readBuffer, 8), 5);
+
+ List<Short> arrayFieldTerminated =
+ readTerminatedArrayField(
+ "arrayFieldTerminated", readUnsignedShort(readBuffer, 8), () -> ((boolean) (true)));
+
+ short assertField =
+ readAssertField("assertField", readUnsignedShort(readBuffer, 8), (short) (42));
+
+ short checksumField =
+ readChecksumField(
+ "checksumField",
+ readUnsignedShort(readBuffer, 8),
+ (short) (org.apache.plc4x.java.test.readwrite.utils.StaticHelper.crcUint8(-(23))));
+
+ short constField =
+ readConstField("constField", readUnsignedShort(readBuffer, 8), FieldTypeTest.CONSTFIELD);
+
+ EnumTypeParameters enumField =
+ readEnumField(
+ "enumField",
+ "EnumTypeParameters",
+ readEnum(EnumTypeParameters::firstEnumForFieldIntType, readSignedByte(readBuffer, 8)));
+
+ short implicitField = readImplicitField("implicitField", readUnsignedShort(readBuffer, 8));
+
+ short manualField =
+ readManualField(
+ "manualField",
+ readBuffer,
+ () ->
+ (short)
+ (org.apache.plc4x.java.test.readwrite.utils.StaticHelper.readManualField(
+ readBuffer, simpleField)));
+
+ Short optionalField =
+ readOptionalField("optionalField", readUnsignedShort(readBuffer, 8), (simpleField) == (5));
+
+ readPaddingField(readUnsignedShort(readBuffer, 8), (int) (simpleField));
+
+ Short reservedField0 =
+ readReservedField("reserved", readUnsignedShort(readBuffer, 8), (short) 0x00);
+
+ readUnknownField("unknown", readUnsignedShort(readBuffer, 8));
+ short virtualField = readVirtualField("virtualField", short.class, (constField) + (10));
+ // Validation
+ if (!(false)) {
+ throw new ParseValidationException("Validation Message");
+ }
+
+ short peekField = readPeekField("peekField", readUnsignedShort(readBuffer, 8));
+
+ readBuffer.closeContext("FieldTypeTest");
+ // Create the instance
+ FieldTypeTest _fieldTypeTest;
+ _fieldTypeTest =
+ new FieldTypeTest(
+ simpleField,
+ arrayFieldCount,
+ arrayFieldLength,
+ arrayFieldTerminated,
+ assertField,
+ enumField,
+ manualField,
+ optionalField,
+ peekField);
+ _fieldTypeTest.reservedField0 = reservedField0;
+ return _fieldTypeTest;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (!(o instanceof FieldTypeTest)) {
+ return false;
+ }
+ FieldTypeTest that = (FieldTypeTest) o;
+ return (getSimpleField() == that.getSimpleField())
+ && (getArrayFieldCount() == that.getArrayFieldCount())
+ && (getArrayFieldLength() == that.getArrayFieldLength())
+ && (getArrayFieldTerminated() == that.getArrayFieldTerminated())
+ && (getAssertField() == that.getAssertField())
+ && (getEnumField() == that.getEnumField())
+ && (getManualField() == that.getManualField())
+ && (getOptionalField() == that.getOptionalField())
+ && (getPeekField() == that.getPeekField())
+ && true;
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(
+ getSimpleField(),
+ getArrayFieldCount(),
+ getArrayFieldLength(),
+ getArrayFieldTerminated(),
+ getAssertField(),
+ getEnumField(),
+ getManualField(),
+ getOptionalField(),
+ getPeekField());
+ }
+
+ @Override
+ public String toString() {
+ WriteBufferBoxBased writeBufferBoxBased = new WriteBufferBoxBased(true, true);
+ try {
+ writeBufferBoxBased.writeSerializable(this);
+ } catch (SerializationException e) {
+ throw new RuntimeException(e);
+ }
+ return "\n" + writeBufferBoxBased.getBox().toString() + "\n";
+ }
+}
diff --git a/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/FieldTypeTestWithUnknownField.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/FieldTypeTestWithUnknownField.java
new file mode 100644
index 0000000000..634e3111c4
--- /dev/null
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/FieldTypeTestWithUnknownField.java
@@ -0,0 +1,225 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.plc4x.java.test.readwrite;
+
+import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
+import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
+import static org.apache.plc4x.java.spi.codegen.io.DataReaderFactory.*;
+import static org.apache.plc4x.java.spi.codegen.io.DataWriterFactory.*;
+import static org.apache.plc4x.java.spi.generation.StaticHelper.*;
+
+import java.time.*;
+import java.util.*;
+import org.apache.plc4x.java.api.exceptions.*;
+import org.apache.plc4x.java.api.value.*;
+import org.apache.plc4x.java.spi.codegen.*;
+import org.apache.plc4x.java.spi.codegen.fields.*;
+import org.apache.plc4x.java.spi.codegen.io.*;
+import org.apache.plc4x.java.spi.generation.*;
+
+// Code generated by code-generation. DO NOT EDIT.
+
+public class FieldTypeTestWithUnknownField implements Message {
+
+ // Constant values.
+ public static final Short CONSTFIELD = 5;
+
+ // Properties.
+ protected final short simpleField;
+ protected final List<Short> arrayField;
+ protected final EnumTypeParameters enumField;
+ protected final Short optionalField;
+ // Reserved Fields
+ private Short reservedField0;
+
+ public FieldTypeTestWithUnknownField(
+ short simpleField,
+ List<Short> arrayField,
+ EnumTypeParameters enumField,
+ Short optionalField) {
+ super();
+ this.simpleField = simpleField;
+ this.arrayField = arrayField;
+ this.enumField = enumField;
+ this.optionalField = optionalField;
+ }
+
+ public short getSimpleField() {
+ return simpleField;
+ }
+
+ public List<Short> getArrayField() {
+ return arrayField;
+ }
+
+ public EnumTypeParameters getEnumField() {
+ return enumField;
+ }
+
+ public Short getOptionalField() {
+ return optionalField;
+ }
+
+ public short getConstField() {
+ return CONSTFIELD;
+ }
+
+ public void serialize(WriteBuffer writeBuffer) throws SerializationException {
+ PositionAware positionAware = writeBuffer;
+ throw new SerializationException("Unknown field not serializable");
+ }
+
+ @Override
+ public int getLengthInBytes() {
+ return (int) Math.ceil((float) getLengthInBits() / 8.0);
+ }
+
+ @Override
+ public int getLengthInBits() {
+ int lengthInBits = 0;
+ FieldTypeTestWithUnknownField _value = this;
+
+ // Simple field (simpleField)
+ lengthInBits += 8;
+
+ // Array field
+ if (arrayField != null) {
+ lengthInBits += 8 * arrayField.size();
+ }
+
+ // Checksum Field (checksum)
+ lengthInBits += 8;
+
+ // Const Field (constField)
+ lengthInBits += 8;
+
+ // Enum Field (enumField)
+ lengthInBits += 8;
+
+ // Implicit Field (implicitField)
+ lengthInBits += 8;
+
+ // Optional Field (optionalField)
+ if (optionalField != null) {
+ lengthInBits += 8;
+ }
+
+ // Padding Field (padding)
+ int _timesPadding = (int) (simpleField);
+ while (_timesPadding-- > 0) {
+ lengthInBits += 8;
+ }
+
+ // Reserved Field (reserved)
+ lengthInBits += 8;
+
+ // Unknown field
+ lengthInBits += 16;
+
+ return lengthInBits;
+ }
+
+ public static FieldTypeTestWithUnknownField staticParse(ReadBuffer readBuffer, Object... args)
+ throws ParseException {
+ PositionAware positionAware = readBuffer;
+ return staticParse(readBuffer);
+ }
+
+ public static FieldTypeTestWithUnknownField staticParse(ReadBuffer readBuffer)
+ throws ParseException {
+ readBuffer.pullContext("FieldTypeTestWithUnknownField");
+ PositionAware positionAware = readBuffer;
+ int startPos = positionAware.getPos();
+ int curPos;
+
+ short simpleField = readSimpleField("simpleField", readUnsignedShort(readBuffer, 8));
+
+ List<Short> arrayField = readCountArrayField("arrayField", readUnsignedShort(readBuffer, 8), 5);
+
+ short checksumField =
+ readChecksumField(
+ "checksumField",
+ readUnsignedShort(readBuffer, 8),
+ (short) (org.apache.plc4x.java.test.readwrite.utils.StaticHelper.crcUint8(-(23))));
+
+ short constField =
+ readConstField(
+ "constField",
+ readUnsignedShort(readBuffer, 8),
+ FieldTypeTestWithUnknownField.CONSTFIELD);
+
+ EnumTypeParameters enumField =
+ readEnumField(
+ "enumField",
+ "EnumTypeParameters",
+ readEnum(EnumTypeParameters::firstEnumForFieldIntType, readSignedByte(readBuffer, 8)));
+
+ short implicitField = readImplicitField("implicitField", readUnsignedShort(readBuffer, 8));
+
+ Short optionalField =
+ readOptionalField("optionalField", readUnsignedShort(readBuffer, 8), (simpleField) == (5));
+
+ readPaddingField(readUnsignedShort(readBuffer, 8), (int) (simpleField));
+
+ Short reservedField0 =
+ readReservedField("reserved", readUnsignedShort(readBuffer, 8), (short) 0x00);
+
+ readUnknownField("unknown", readUnsignedInt(readBuffer, 16));
+
+ readBuffer.closeContext("FieldTypeTestWithUnknownField");
+ // Create the instance
+ FieldTypeTestWithUnknownField _fieldTypeTestWithUnknownField;
+ _fieldTypeTestWithUnknownField =
+ new FieldTypeTestWithUnknownField(simpleField, arrayField, enumField, optionalField);
+ _fieldTypeTestWithUnknownField.reservedField0 = reservedField0;
+ return _fieldTypeTestWithUnknownField;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (!(o instanceof FieldTypeTestWithUnknownField)) {
+ return false;
+ }
+ FieldTypeTestWithUnknownField that = (FieldTypeTestWithUnknownField) o;
+ return (getSimpleField() == that.getSimpleField())
+ && (getArrayField() == that.getArrayField())
+ && (getEnumField() == that.getEnumField())
+ && (getOptionalField() == that.getOptionalField())
+ && true;
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(getSimpleField(), getArrayField(), getEnumField(), getOptionalField());
+ }
+
+ @Override
+ public String toString() {
+ WriteBufferBoxBased writeBufferBoxBased = new WriteBufferBoxBased(true, true);
+ try {
+ writeBufferBoxBased.writeSerializable(this);
+ } catch (SerializationException e) {
+ throw new RuntimeException(e);
+ }
+ return "\n" + writeBufferBoxBased.getBox().toString() + "\n";
+ }
+}
diff --git a/plc4j/drivers/s7/src/main/generated/org/apache/plc4x/java/s7/readwrite/S7Address.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ImplicitPascalStringTypeTest.java
similarity index 57%
copy from plc4j/drivers/s7/src/main/generated/org/apache/plc4x/java/s7/readwrite/S7Address.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ImplicitPascalStringTypeTest.java
index 4fbed10ec8..51b4a57d9a 100644
--- a/plc4j/drivers/s7/src/main/generated/org/apache/plc4x/java/s7/readwrite/S7Address.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ImplicitPascalStringTypeTest.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.s7.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,30 +35,34 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public abstract class S7Address implements Message {
+public class ImplicitPascalStringTypeTest implements Message {
- // Abstract accessors for discriminator values.
- public abstract Short getAddressType();
+ // Properties.
+ protected final String stringField;
- public S7Address() {
+ public ImplicitPascalStringTypeTest(String stringField) {
super();
+ this.stringField = stringField;
}
- protected abstract void serializeS7AddressChild(WriteBuffer writeBuffer)
- throws SerializationException;
+ public String getStringField() {
+ return stringField;
+ }
public void serialize(WriteBuffer writeBuffer) throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("S7Address");
+ writeBuffer.pushContext("ImplicitPascalStringTypeTest");
- // Discriminator Field (addressType) (Used as input to a switch field)
- writeDiscriminatorField("addressType", getAddressType(), writeUnsignedShort(writeBuffer, 8));
+ // Implicit Field (stringLength) (Used for parsing, but its value is not stored as it's
+ // implicitly given by the objects content)
+ byte stringLength = (byte) (getStringField().length());
+ writeImplicitField("stringLength", stringLength, writeSignedByte(writeBuffer, 8));
- // Switch field (Serialize the sub-type)
- serializeS7AddressChild(writeBuffer);
+ // Simple Field (stringField)
+ writeSimpleField("stringField", stringField, writeString(writeBuffer, stringLength));
- writeBuffer.popContext("S7Address");
+ writeBuffer.popContext("ImplicitPascalStringTypeTest");
}
@Override
@@ -69,51 +73,39 @@ public abstract class S7Address implements Message {
@Override
public int getLengthInBits() {
int lengthInBits = 0;
- S7Address _value = this;
+ ImplicitPascalStringTypeTest _value = this;
- // Discriminator Field (addressType)
+ // Implicit Field (stringLength)
lengthInBits += 8;
- // Length of sub-type elements will be added by sub-type...
+ // Simple field (stringField)
+ lengthInBits += getStringField().length();
return lengthInBits;
}
- public static S7Address staticParse(ReadBuffer readBuffer, Object... args) throws ParseException {
+ public static ImplicitPascalStringTypeTest staticParse(ReadBuffer readBuffer, Object... args)
+ throws ParseException {
PositionAware positionAware = readBuffer;
return staticParse(readBuffer);
}
- public static S7Address staticParse(ReadBuffer readBuffer) throws ParseException {
- readBuffer.pullContext("S7Address");
+ public static ImplicitPascalStringTypeTest staticParse(ReadBuffer readBuffer)
+ throws ParseException {
+ readBuffer.pullContext("ImplicitPascalStringTypeTest");
PositionAware positionAware = readBuffer;
int startPos = positionAware.getPos();
int curPos;
- short addressType = readDiscriminatorField("addressType", readUnsignedShort(readBuffer, 8));
+ byte stringLength = readImplicitField("stringLength", readSignedByte(readBuffer, 8));
- // Switch Field (Depending on the discriminator values, passes the instantiation to a sub-type)
- S7AddressBuilder builder = null;
- if (EvaluationHelper.equals(addressType, (short) 0x10)) {
- builder = S7AddressAny.staticParseBuilder(readBuffer);
- }
- if (builder == null) {
- throw new ParseException(
- "Unsupported case for discriminated type"
- + " parameters ["
- + "addressType="
- + addressType
- + "]");
- }
+ String stringField = readSimpleField("stringField", readString(readBuffer, stringLength));
- readBuffer.closeContext("S7Address");
+ readBuffer.closeContext("ImplicitPascalStringTypeTest");
// Create the instance
- S7Address _s7Address = builder.build();
- return _s7Address;
- }
-
- public static interface S7AddressBuilder {
- S7Address build();
+ ImplicitPascalStringTypeTest _implicitPascalStringTypeTest;
+ _implicitPascalStringTypeTest = new ImplicitPascalStringTypeTest(stringField);
+ return _implicitPascalStringTypeTest;
}
@Override
@@ -121,16 +113,16 @@ public abstract class S7Address implements Message {
if (this == o) {
return true;
}
- if (!(o instanceof S7Address)) {
+ if (!(o instanceof ImplicitPascalStringTypeTest)) {
return false;
}
- S7Address that = (S7Address) o;
- return true;
+ ImplicitPascalStringTypeTest that = (ImplicitPascalStringTypeTest) o;
+ return (getStringField() == that.getStringField()) && true;
}
@Override
public int hashCode() {
- return Objects.hash();
+ return Objects.hash(getStringField());
}
@Override
diff --git a/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ImplicitTypeTest.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ImplicitTypeTest.java
new file mode 100644
index 0000000000..6d352ce826
--- /dev/null
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ImplicitTypeTest.java
@@ -0,0 +1,187 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.plc4x.java.test.readwrite;
+
+import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
+import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
+import static org.apache.plc4x.java.spi.codegen.io.DataReaderFactory.*;
+import static org.apache.plc4x.java.spi.codegen.io.DataWriterFactory.*;
+import static org.apache.plc4x.java.spi.generation.StaticHelper.*;
+
+import java.time.*;
+import java.util.*;
+import org.apache.plc4x.java.api.exceptions.*;
+import org.apache.plc4x.java.api.value.*;
+import org.apache.plc4x.java.spi.codegen.*;
+import org.apache.plc4x.java.spi.codegen.fields.*;
+import org.apache.plc4x.java.spi.codegen.io.*;
+import org.apache.plc4x.java.spi.generation.*;
+
+// Code generated by code-generation. DO NOT EDIT.
+
+public class ImplicitTypeTest implements Message {
+
+ // Properties.
+ protected final short simpleField;
+
+ public ImplicitTypeTest(short simpleField) {
+ super();
+ this.simpleField = simpleField;
+ }
+
+ public short getSimpleField() {
+ return simpleField;
+ }
+
+ public void serialize(WriteBuffer writeBuffer) throws SerializationException {
+ PositionAware positionAware = writeBuffer;
+ int startPos = positionAware.getPos();
+ writeBuffer.pushContext("ImplicitTypeTest");
+
+ // Simple Field (simpleField)
+ writeSimpleField("simpleField", simpleField, writeUnsignedShort(writeBuffer, 8));
+
+ // Implicit Field (bitField) (Used for parsing, but its value is not stored as it's implicitly
+ // given by the objects content)
+ boolean bitField = (boolean) ((getSimpleField()) > (0));
+ writeImplicitField("bitField", bitField, writeBoolean(writeBuffer));
+
+ // Implicit Field (intField) (Used for parsing, but its value is not stored as it's implicitly
+ // given by the objects content)
+ byte intField = (byte) (getSimpleField());
+ writeImplicitField("intField", intField, writeSignedByte(writeBuffer, 8));
+
+ // Implicit Field (uintField) (Used for parsing, but its value is not stored as it's implicitly
+ // given by the objects content)
+ short uintField = (short) (getSimpleField());
+ writeImplicitField("uintField", uintField, writeUnsignedShort(writeBuffer, 8));
+
+ // Implicit Field (floatField) (Used for parsing, but its value is not stored as it's implicitly
+ // given by the objects content)
+ float floatField = (float) (getSimpleField());
+ writeImplicitField("floatField", floatField, writeFloat(writeBuffer, 32));
+
+ // Implicit Field (doubleField) (Used for parsing, but its value is not stored as it's
+ // implicitly given by the objects content)
+ double doubleField = (double) (getSimpleField());
+ writeImplicitField("doubleField", doubleField, writeDouble(writeBuffer, 64));
+
+ // Implicit Field (stringField) (Used for parsing, but its value is not stored as it's
+ // implicitly given by the objects content)
+ String stringField = (String) ((((getSimpleField()) > (0)) ? "HELLO TODDY" : "BYE TODDY"));
+ writeImplicitField("stringField", stringField, writeString(writeBuffer, 8));
+
+ writeBuffer.popContext("ImplicitTypeTest");
+ }
+
+ @Override
+ public int getLengthInBytes() {
+ return (int) Math.ceil((float) getLengthInBits() / 8.0);
+ }
+
+ @Override
+ public int getLengthInBits() {
+ int lengthInBits = 0;
+ ImplicitTypeTest _value = this;
+
+ // Simple field (simpleField)
+ lengthInBits += 8;
+
+ // Implicit Field (bitField)
+ lengthInBits += 1;
+
+ // Implicit Field (intField)
+ lengthInBits += 8;
+
+ // Implicit Field (uintField)
+ lengthInBits += 8;
+
+ // Implicit Field (floatField)
+ lengthInBits += 32;
+
+ // Implicit Field (doubleField)
+ lengthInBits += 64;
+
+ // Implicit Field (stringField)
+ lengthInBits += 8;
+
+ return lengthInBits;
+ }
+
+ public static ImplicitTypeTest staticParse(ReadBuffer readBuffer, Object... args)
+ throws ParseException {
+ PositionAware positionAware = readBuffer;
+ return staticParse(readBuffer);
+ }
+
+ public static ImplicitTypeTest staticParse(ReadBuffer readBuffer) throws ParseException {
+ readBuffer.pullContext("ImplicitTypeTest");
+ PositionAware positionAware = readBuffer;
+ int startPos = positionAware.getPos();
+ int curPos;
+
+ short simpleField = readSimpleField("simpleField", readUnsignedShort(readBuffer, 8));
+
+ boolean bitField = readImplicitField("bitField", readBoolean(readBuffer));
+
+ byte intField = readImplicitField("intField", readSignedByte(readBuffer, 8));
+
+ short uintField = readImplicitField("uintField", readUnsignedShort(readBuffer, 8));
+
+ float floatField = readImplicitField("floatField", readFloat(readBuffer, 32));
+
+ double doubleField = readImplicitField("doubleField", readDouble(readBuffer, 64));
+
+ String stringField = readImplicitField("stringField", readString(readBuffer, 8));
+
+ readBuffer.closeContext("ImplicitTypeTest");
+ // Create the instance
+ ImplicitTypeTest _implicitTypeTest;
+ _implicitTypeTest = new ImplicitTypeTest(simpleField);
+ return _implicitTypeTest;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (!(o instanceof ImplicitTypeTest)) {
+ return false;
+ }
+ ImplicitTypeTest that = (ImplicitTypeTest) o;
+ return (getSimpleField() == that.getSimpleField()) && true;
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(getSimpleField());
+ }
+
+ @Override
+ public String toString() {
+ WriteBufferBoxBased writeBufferBoxBased = new WriteBufferBoxBased(true, true);
+ try {
+ writeBufferBoxBased.writeSerializable(this);
+ } catch (SerializationException e) {
+ throw new RuntimeException(e);
+ }
+ return "\n" + writeBufferBoxBased.getBox().toString() + "\n";
+ }
+}
diff --git a/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/IntTypeTest.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/IntTypeTest.java
new file mode 100644
index 0000000000..3c08fb6516
--- /dev/null
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/IntTypeTest.java
@@ -0,0 +1,217 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.plc4x.java.test.readwrite;
+
+import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
+import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
+import static org.apache.plc4x.java.spi.codegen.io.DataReaderFactory.*;
+import static org.apache.plc4x.java.spi.codegen.io.DataWriterFactory.*;
+import static org.apache.plc4x.java.spi.generation.StaticHelper.*;
+
+import java.time.*;
+import java.util.*;
+import org.apache.plc4x.java.api.exceptions.*;
+import org.apache.plc4x.java.api.value.*;
+import org.apache.plc4x.java.spi.codegen.*;
+import org.apache.plc4x.java.spi.codegen.fields.*;
+import org.apache.plc4x.java.spi.codegen.io.*;
+import org.apache.plc4x.java.spi.generation.*;
+
+// Code generated by code-generation. DO NOT EDIT.
+
+public class IntTypeTest implements Message {
+
+ // Properties.
+ protected final byte ThreeField;
+ protected final byte ByteField;
+ protected final short WordField;
+ protected final int WordPlusByteField;
+ protected final int DoubleIntField;
+ protected final long QuadIntField;
+
+ public IntTypeTest(
+ byte ThreeField,
+ byte ByteField,
+ short WordField,
+ int WordPlusByteField,
+ int DoubleIntField,
+ long QuadIntField) {
+ super();
+ this.ThreeField = ThreeField;
+ this.ByteField = ByteField;
+ this.WordField = WordField;
+ this.WordPlusByteField = WordPlusByteField;
+ this.DoubleIntField = DoubleIntField;
+ this.QuadIntField = QuadIntField;
+ }
+
+ public byte getThreeField() {
+ return ThreeField;
+ }
+
+ public byte getByteField() {
+ return ByteField;
+ }
+
+ public short getWordField() {
+ return WordField;
+ }
+
+ public int getWordPlusByteField() {
+ return WordPlusByteField;
+ }
+
+ public int getDoubleIntField() {
+ return DoubleIntField;
+ }
+
+ public long getQuadIntField() {
+ return QuadIntField;
+ }
+
+ public void serialize(WriteBuffer writeBuffer) throws SerializationException {
+ PositionAware positionAware = writeBuffer;
+ int startPos = positionAware.getPos();
+ writeBuffer.pushContext("IntTypeTest");
+
+ // Simple Field (ThreeField)
+ writeSimpleField("ThreeField", ThreeField, writeSignedByte(writeBuffer, 3));
+
+ // Simple Field (ByteField)
+ writeSimpleField("ByteField", ByteField, writeSignedByte(writeBuffer, 8));
+
+ // Simple Field (WordField)
+ writeSimpleField("WordField", WordField, writeSignedShort(writeBuffer, 16));
+
+ // Simple Field (WordPlusByteField)
+ writeSimpleField("WordPlusByteField", WordPlusByteField, writeSignedInt(writeBuffer, 24));
+
+ // Simple Field (DoubleIntField)
+ writeSimpleField("DoubleIntField", DoubleIntField, writeSignedInt(writeBuffer, 32));
+
+ // Simple Field (QuadIntField)
+ writeSimpleField("QuadIntField", QuadIntField, writeSignedLong(writeBuffer, 64));
+
+ writeBuffer.popContext("IntTypeTest");
+ }
+
+ @Override
+ public int getLengthInBytes() {
+ return (int) Math.ceil((float) getLengthInBits() / 8.0);
+ }
+
+ @Override
+ public int getLengthInBits() {
+ int lengthInBits = 0;
+ IntTypeTest _value = this;
+
+ // Simple field (ThreeField)
+ lengthInBits += 3;
+
+ // Simple field (ByteField)
+ lengthInBits += 8;
+
+ // Simple field (WordField)
+ lengthInBits += 16;
+
+ // Simple field (WordPlusByteField)
+ lengthInBits += 24;
+
+ // Simple field (DoubleIntField)
+ lengthInBits += 32;
+
+ // Simple field (QuadIntField)
+ lengthInBits += 64;
+
+ return lengthInBits;
+ }
+
+ public static IntTypeTest staticParse(ReadBuffer readBuffer, Object... args)
+ throws ParseException {
+ PositionAware positionAware = readBuffer;
+ return staticParse(readBuffer);
+ }
+
+ public static IntTypeTest staticParse(ReadBuffer readBuffer) throws ParseException {
+ readBuffer.pullContext("IntTypeTest");
+ PositionAware positionAware = readBuffer;
+ int startPos = positionAware.getPos();
+ int curPos;
+
+ byte ThreeField = readSimpleField("ThreeField", readSignedByte(readBuffer, 3));
+
+ byte ByteField = readSimpleField("ByteField", readSignedByte(readBuffer, 8));
+
+ short WordField = readSimpleField("WordField", readSignedShort(readBuffer, 16));
+
+ int WordPlusByteField = readSimpleField("WordPlusByteField", readSignedInt(readBuffer, 24));
+
+ int DoubleIntField = readSimpleField("DoubleIntField", readSignedInt(readBuffer, 32));
+
+ long QuadIntField = readSimpleField("QuadIntField", readSignedLong(readBuffer, 64));
+
+ readBuffer.closeContext("IntTypeTest");
+ // Create the instance
+ IntTypeTest _intTypeTest;
+ _intTypeTest =
+ new IntTypeTest(
+ ThreeField, ByteField, WordField, WordPlusByteField, DoubleIntField, QuadIntField);
+ return _intTypeTest;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (!(o instanceof IntTypeTest)) {
+ return false;
+ }
+ IntTypeTest that = (IntTypeTest) o;
+ return (getThreeField() == that.getThreeField())
+ && (getByteField() == that.getByteField())
+ && (getWordField() == that.getWordField())
+ && (getWordPlusByteField() == that.getWordPlusByteField())
+ && (getDoubleIntField() == that.getDoubleIntField())
+ && (getQuadIntField() == that.getQuadIntField())
+ && true;
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(
+ getThreeField(),
+ getByteField(),
+ getWordField(),
+ getWordPlusByteField(),
+ getDoubleIntField(),
+ getQuadIntField());
+ }
+
+ @Override
+ public String toString() {
+ WriteBufferBoxBased writeBufferBoxBased = new WriteBufferBoxBased(true, true);
+ try {
+ writeBufferBoxBased.writeSerializable(this);
+ } catch (SerializationException e) {
+ throw new RuntimeException(e);
+ }
+ return "\n" + writeBufferBoxBased.getBox().toString() + "\n";
+ }
+}
diff --git a/plc4j/drivers/knxnetip/src/main/generated/org/apache/plc4x/java/knxnetip/readwrite/KnxNetIpCore.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/LengthLoopTest.java
similarity index 58%
copy from plc4j/drivers/knxnetip/src/main/generated/org/apache/plc4x/java/knxnetip/readwrite/KnxNetIpCore.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/LengthLoopTest.java
index 8f9ab9efaa..f85cc8c205 100644
--- a/plc4j/drivers/knxnetip/src/main/generated/org/apache/plc4x/java/knxnetip/readwrite/KnxNetIpCore.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/LengthLoopTest.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.knxnetip.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,35 +35,34 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public class KnxNetIpCore extends ServiceId implements Message {
-
- // Accessors for discriminator values.
- public Short getServiceType() {
- return (short) 0x02;
- }
+public class LengthLoopTest implements Message {
// Properties.
- protected final short version;
+ protected final int commandType;
- public KnxNetIpCore(short version) {
+ public LengthLoopTest(int commandType) {
super();
- this.version = version;
+ this.commandType = commandType;
}
- public short getVersion() {
- return version;
+ public int getCommandType() {
+ return commandType;
}
- @Override
- protected void serializeServiceIdChild(WriteBuffer writeBuffer) throws SerializationException {
+ public void serialize(WriteBuffer writeBuffer) throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("KnxNetIpCore");
+ writeBuffer.pushContext("LengthLoopTest");
+
+ // Simple Field (commandType)
+ writeSimpleField("commandType", commandType, writeUnsignedInt(writeBuffer, 16));
- // Simple Field (version)
- writeSimpleField("version", version, writeUnsignedShort(writeBuffer, 8));
+ // Implicit Field (len) (Used for parsing, but its value is not stored as it's implicitly given
+ // by the objects content)
+ int len = (int) ((getLengthInBytes()) - (8));
+ writeImplicitField("len", len, writeUnsignedInt(writeBuffer, 16));
- writeBuffer.popContext("KnxNetIpCore");
+ writeBuffer.popContext("LengthLoopTest");
}
@Override
@@ -73,41 +72,39 @@ public class KnxNetIpCore extends ServiceId implements Message {
@Override
public int getLengthInBits() {
- int lengthInBits = super.getLengthInBits();
- KnxNetIpCore _value = this;
+ int lengthInBits = 0;
+ LengthLoopTest _value = this;
- // Simple field (version)
- lengthInBits += 8;
+ // Simple field (commandType)
+ lengthInBits += 16;
+
+ // Implicit Field (len)
+ lengthInBits += 16;
return lengthInBits;
}
- public static KnxNetIpCoreBuilder staticParseBuilder(ReadBuffer readBuffer)
+ public static LengthLoopTest staticParse(ReadBuffer readBuffer, Object... args)
throws ParseException {
- readBuffer.pullContext("KnxNetIpCore");
PositionAware positionAware = readBuffer;
- int startPos = positionAware.getPos();
- int curPos;
-
- short version = readSimpleField("version", readUnsignedShort(readBuffer, 8));
-
- readBuffer.closeContext("KnxNetIpCore");
- // Create the instance
- return new KnxNetIpCoreBuilder(version);
+ return staticParse(readBuffer);
}
- public static class KnxNetIpCoreBuilder implements ServiceId.ServiceIdBuilder {
- private final short version;
+ public static LengthLoopTest staticParse(ReadBuffer readBuffer) throws ParseException {
+ readBuffer.pullContext("LengthLoopTest");
+ PositionAware positionAware = readBuffer;
+ int startPos = positionAware.getPos();
+ int curPos;
- public KnxNetIpCoreBuilder(short version) {
+ int commandType = readSimpleField("commandType", readUnsignedInt(readBuffer, 16));
- this.version = version;
- }
+ int len = readImplicitField("len", readUnsignedInt(readBuffer, 16));
- public KnxNetIpCore build() {
- KnxNetIpCore knxNetIpCore = new KnxNetIpCore(version);
- return knxNetIpCore;
- }
+ readBuffer.closeContext("LengthLoopTest");
+ // Create the instance
+ LengthLoopTest _lengthLoopTest;
+ _lengthLoopTest = new LengthLoopTest(commandType);
+ return _lengthLoopTest;
}
@Override
@@ -115,16 +112,16 @@ public class KnxNetIpCore extends ServiceId implements Message {
if (this == o) {
return true;
}
- if (!(o instanceof KnxNetIpCore)) {
+ if (!(o instanceof LengthLoopTest)) {
return false;
}
- KnxNetIpCore that = (KnxNetIpCore) o;
- return (getVersion() == that.getVersion()) && super.equals(that) && true;
+ LengthLoopTest that = (LengthLoopTest) o;
+ return (getCommandType() == that.getCommandType()) && true;
}
@Override
public int hashCode() {
- return Objects.hash(super.hashCode(), getVersion());
+ return Objects.hash(getCommandType());
}
@Override
diff --git a/plc4j/drivers/s7/src/main/generated/org/apache/plc4x/java/s7/readwrite/S7Address.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/OptionalTypeTest.java
similarity index 57%
copy from plc4j/drivers/s7/src/main/generated/org/apache/plc4x/java/s7/readwrite/S7Address.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/OptionalTypeTest.java
index 4fbed10ec8..cc1e7d34d9 100644
--- a/plc4j/drivers/s7/src/main/generated/org/apache/plc4x/java/s7/readwrite/S7Address.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/OptionalTypeTest.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.s7.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,30 +35,42 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public abstract class S7Address implements Message {
+public class OptionalTypeTest implements Message {
- // Abstract accessors for discriminator values.
- public abstract Short getAddressType();
+ // Properties.
+ protected final short simpleField;
+ protected final Short optionalField;
- public S7Address() {
+ public OptionalTypeTest(short simpleField, Short optionalField) {
super();
+ this.simpleField = simpleField;
+ this.optionalField = optionalField;
}
- protected abstract void serializeS7AddressChild(WriteBuffer writeBuffer)
- throws SerializationException;
+ public short getSimpleField() {
+ return simpleField;
+ }
+
+ public Short getOptionalField() {
+ return optionalField;
+ }
public void serialize(WriteBuffer writeBuffer) throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("S7Address");
+ writeBuffer.pushContext("OptionalTypeTest");
- // Discriminator Field (addressType) (Used as input to a switch field)
- writeDiscriminatorField("addressType", getAddressType(), writeUnsignedShort(writeBuffer, 8));
+ // Simple Field (simpleField)
+ writeSimpleField("simpleField", simpleField, writeUnsignedShort(writeBuffer, 8));
- // Switch field (Serialize the sub-type)
- serializeS7AddressChild(writeBuffer);
+ // Optional Field (optionalField) (Can be skipped, if the value is null)
+ writeOptionalField(
+ "optionalField",
+ optionalField,
+ writeUnsignedShort(writeBuffer, 8),
+ (getSimpleField()) == (5));
- writeBuffer.popContext("S7Address");
+ writeBuffer.popContext("OptionalTypeTest");
}
@Override
@@ -69,51 +81,41 @@ public abstract class S7Address implements Message {
@Override
public int getLengthInBits() {
int lengthInBits = 0;
- S7Address _value = this;
+ OptionalTypeTest _value = this;
- // Discriminator Field (addressType)
+ // Simple field (simpleField)
lengthInBits += 8;
- // Length of sub-type elements will be added by sub-type...
+ // Optional Field (optionalField)
+ if (optionalField != null) {
+ lengthInBits += 8;
+ }
return lengthInBits;
}
- public static S7Address staticParse(ReadBuffer readBuffer, Object... args) throws ParseException {
+ public static OptionalTypeTest staticParse(ReadBuffer readBuffer, Object... args)
+ throws ParseException {
PositionAware positionAware = readBuffer;
return staticParse(readBuffer);
}
- public static S7Address staticParse(ReadBuffer readBuffer) throws ParseException {
- readBuffer.pullContext("S7Address");
+ public static OptionalTypeTest staticParse(ReadBuffer readBuffer) throws ParseException {
+ readBuffer.pullContext("OptionalTypeTest");
PositionAware positionAware = readBuffer;
int startPos = positionAware.getPos();
int curPos;
- short addressType = readDiscriminatorField("addressType", readUnsignedShort(readBuffer, 8));
+ short simpleField = readSimpleField("simpleField", readUnsignedShort(readBuffer, 8));
- // Switch Field (Depending on the discriminator values, passes the instantiation to a sub-type)
- S7AddressBuilder builder = null;
- if (EvaluationHelper.equals(addressType, (short) 0x10)) {
- builder = S7AddressAny.staticParseBuilder(readBuffer);
- }
- if (builder == null) {
- throw new ParseException(
- "Unsupported case for discriminated type"
- + " parameters ["
- + "addressType="
- + addressType
- + "]");
- }
+ Short optionalField =
+ readOptionalField("optionalField", readUnsignedShort(readBuffer, 8), (simpleField) == (5));
- readBuffer.closeContext("S7Address");
+ readBuffer.closeContext("OptionalTypeTest");
// Create the instance
- S7Address _s7Address = builder.build();
- return _s7Address;
- }
-
- public static interface S7AddressBuilder {
- S7Address build();
+ OptionalTypeTest _optionalTypeTest;
+ _optionalTypeTest = new OptionalTypeTest(simpleField, optionalField);
+ return _optionalTypeTest;
}
@Override
@@ -121,16 +123,18 @@ public abstract class S7Address implements Message {
if (this == o) {
return true;
}
- if (!(o instanceof S7Address)) {
+ if (!(o instanceof OptionalTypeTest)) {
return false;
}
- S7Address that = (S7Address) o;
- return true;
+ OptionalTypeTest that = (OptionalTypeTest) o;
+ return (getSimpleField() == that.getSimpleField())
+ && (getOptionalField() == that.getOptionalField())
+ && true;
}
@Override
public int hashCode() {
- return Objects.hash();
+ return Objects.hash(getSimpleField(), getOptionalField());
}
@Override
diff --git a/plc4j/drivers/knxnetip/src/main/generated/org/apache/plc4x/java/knxnetip/readwrite/KnxNetIpRouting.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/PaddingTypeTest.java
similarity index 59%
copy from plc4j/drivers/knxnetip/src/main/generated/org/apache/plc4x/java/knxnetip/readwrite/KnxNetIpRouting.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/PaddingTypeTest.java
index c2858cfc65..062bd73421 100644
--- a/plc4j/drivers/knxnetip/src/main/generated/org/apache/plc4x/java/knxnetip/readwrite/KnxNetIpRouting.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/PaddingTypeTest.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.knxnetip.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,35 +35,33 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public class KnxNetIpRouting extends ServiceId implements Message {
-
- // Accessors for discriminator values.
- public Short getServiceType() {
- return (short) 0x05;
- }
+public class PaddingTypeTest implements Message {
// Properties.
- protected final short version;
+ protected final short simpleField;
- public KnxNetIpRouting(short version) {
+ public PaddingTypeTest(short simpleField) {
super();
- this.version = version;
+ this.simpleField = simpleField;
}
- public short getVersion() {
- return version;
+ public short getSimpleField() {
+ return simpleField;
}
- @Override
- protected void serializeServiceIdChild(WriteBuffer writeBuffer) throws SerializationException {
+ public void serialize(WriteBuffer writeBuffer) throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("KnxNetIpRouting");
+ writeBuffer.pushContext("PaddingTypeTest");
- // Simple Field (version)
- writeSimpleField("version", version, writeUnsignedShort(writeBuffer, 8));
+ // Simple Field (simpleField)
+ writeSimpleField("simpleField", simpleField, writeUnsignedShort(writeBuffer, 8));
- writeBuffer.popContext("KnxNetIpRouting");
+ // Padding Field (padding)
+ writePaddingField(
+ "padding", (int) (simpleField), (short) 0x00, writeUnsignedShort(writeBuffer, 8));
+
+ writeBuffer.popContext("PaddingTypeTest");
}
@Override
@@ -73,41 +71,42 @@ public class KnxNetIpRouting extends ServiceId implements Message {
@Override
public int getLengthInBits() {
- int lengthInBits = super.getLengthInBits();
- KnxNetIpRouting _value = this;
+ int lengthInBits = 0;
+ PaddingTypeTest _value = this;
- // Simple field (version)
+ // Simple field (simpleField)
lengthInBits += 8;
+ // Padding Field (padding)
+ int _timesPadding = (int) (simpleField);
+ while (_timesPadding-- > 0) {
+ lengthInBits += 8;
+ }
+
return lengthInBits;
}
- public static KnxNetIpRoutingBuilder staticParseBuilder(ReadBuffer readBuffer)
+ public static PaddingTypeTest staticParse(ReadBuffer readBuffer, Object... args)
throws ParseException {
- readBuffer.pullContext("KnxNetIpRouting");
PositionAware positionAware = readBuffer;
- int startPos = positionAware.getPos();
- int curPos;
-
- short version = readSimpleField("version", readUnsignedShort(readBuffer, 8));
-
- readBuffer.closeContext("KnxNetIpRouting");
- // Create the instance
- return new KnxNetIpRoutingBuilder(version);
+ return staticParse(readBuffer);
}
- public static class KnxNetIpRoutingBuilder implements ServiceId.ServiceIdBuilder {
- private final short version;
+ public static PaddingTypeTest staticParse(ReadBuffer readBuffer) throws ParseException {
+ readBuffer.pullContext("PaddingTypeTest");
+ PositionAware positionAware = readBuffer;
+ int startPos = positionAware.getPos();
+ int curPos;
- public KnxNetIpRoutingBuilder(short version) {
+ short simpleField = readSimpleField("simpleField", readUnsignedShort(readBuffer, 8));
- this.version = version;
- }
+ readPaddingField(readUnsignedShort(readBuffer, 8), (int) (simpleField));
- public KnxNetIpRouting build() {
- KnxNetIpRouting knxNetIpRouting = new KnxNetIpRouting(version);
- return knxNetIpRouting;
- }
+ readBuffer.closeContext("PaddingTypeTest");
+ // Create the instance
+ PaddingTypeTest _paddingTypeTest;
+ _paddingTypeTest = new PaddingTypeTest(simpleField);
+ return _paddingTypeTest;
}
@Override
@@ -115,16 +114,16 @@ public class KnxNetIpRouting extends ServiceId implements Message {
if (this == o) {
return true;
}
- if (!(o instanceof KnxNetIpRouting)) {
+ if (!(o instanceof PaddingTypeTest)) {
return false;
}
- KnxNetIpRouting that = (KnxNetIpRouting) o;
- return (getVersion() == that.getVersion()) && super.equals(that) && true;
+ PaddingTypeTest that = (PaddingTypeTest) o;
+ return (getSimpleField() == that.getSimpleField()) && true;
}
@Override
public int hashCode() {
- return Objects.hash(super.hashCode(), getVersion());
+ return Objects.hash(getSimpleField());
}
@Override
diff --git a/plc4j/drivers/s7/src/main/generated/org/apache/plc4x/java/s7/readwrite/S7Address.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/PascalStringTypeTest.java
similarity index 58%
copy from plc4j/drivers/s7/src/main/generated/org/apache/plc4x/java/s7/readwrite/S7Address.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/PascalStringTypeTest.java
index 4fbed10ec8..79105b5ee1 100644
--- a/plc4j/drivers/s7/src/main/generated/org/apache/plc4x/java/s7/readwrite/S7Address.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/PascalStringTypeTest.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.s7.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,30 +35,38 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public abstract class S7Address implements Message {
+public class PascalStringTypeTest implements Message {
- // Abstract accessors for discriminator values.
- public abstract Short getAddressType();
+ // Properties.
+ protected final byte stringLength;
+ protected final String stringField;
- public S7Address() {
+ public PascalStringTypeTest(byte stringLength, String stringField) {
super();
+ this.stringLength = stringLength;
+ this.stringField = stringField;
}
- protected abstract void serializeS7AddressChild(WriteBuffer writeBuffer)
- throws SerializationException;
+ public byte getStringLength() {
+ return stringLength;
+ }
+
+ public String getStringField() {
+ return stringField;
+ }
public void serialize(WriteBuffer writeBuffer) throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("S7Address");
+ writeBuffer.pushContext("PascalStringTypeTest");
- // Discriminator Field (addressType) (Used as input to a switch field)
- writeDiscriminatorField("addressType", getAddressType(), writeUnsignedShort(writeBuffer, 8));
+ // Simple Field (stringLength)
+ writeSimpleField("stringLength", stringLength, writeSignedByte(writeBuffer, 8));
- // Switch field (Serialize the sub-type)
- serializeS7AddressChild(writeBuffer);
+ // Simple Field (stringField)
+ writeSimpleField("stringField", stringField, writeString(writeBuffer, stringLength));
- writeBuffer.popContext("S7Address");
+ writeBuffer.popContext("PascalStringTypeTest");
}
@Override
@@ -69,51 +77,38 @@ public abstract class S7Address implements Message {
@Override
public int getLengthInBits() {
int lengthInBits = 0;
- S7Address _value = this;
+ PascalStringTypeTest _value = this;
- // Discriminator Field (addressType)
+ // Simple field (stringLength)
lengthInBits += 8;
- // Length of sub-type elements will be added by sub-type...
+ // Simple field (stringField)
+ lengthInBits += getStringLength();
return lengthInBits;
}
- public static S7Address staticParse(ReadBuffer readBuffer, Object... args) throws ParseException {
+ public static PascalStringTypeTest staticParse(ReadBuffer readBuffer, Object... args)
+ throws ParseException {
PositionAware positionAware = readBuffer;
return staticParse(readBuffer);
}
- public static S7Address staticParse(ReadBuffer readBuffer) throws ParseException {
- readBuffer.pullContext("S7Address");
+ public static PascalStringTypeTest staticParse(ReadBuffer readBuffer) throws ParseException {
+ readBuffer.pullContext("PascalStringTypeTest");
PositionAware positionAware = readBuffer;
int startPos = positionAware.getPos();
int curPos;
- short addressType = readDiscriminatorField("addressType", readUnsignedShort(readBuffer, 8));
+ byte stringLength = readSimpleField("stringLength", readSignedByte(readBuffer, 8));
- // Switch Field (Depending on the discriminator values, passes the instantiation to a sub-type)
- S7AddressBuilder builder = null;
- if (EvaluationHelper.equals(addressType, (short) 0x10)) {
- builder = S7AddressAny.staticParseBuilder(readBuffer);
- }
- if (builder == null) {
- throw new ParseException(
- "Unsupported case for discriminated type"
- + " parameters ["
- + "addressType="
- + addressType
- + "]");
- }
+ String stringField = readSimpleField("stringField", readString(readBuffer, stringLength));
- readBuffer.closeContext("S7Address");
+ readBuffer.closeContext("PascalStringTypeTest");
// Create the instance
- S7Address _s7Address = builder.build();
- return _s7Address;
- }
-
- public static interface S7AddressBuilder {
- S7Address build();
+ PascalStringTypeTest _pascalStringTypeTest;
+ _pascalStringTypeTest = new PascalStringTypeTest(stringLength, stringField);
+ return _pascalStringTypeTest;
}
@Override
@@ -121,16 +116,18 @@ public abstract class S7Address implements Message {
if (this == o) {
return true;
}
- if (!(o instanceof S7Address)) {
+ if (!(o instanceof PascalStringTypeTest)) {
return false;
}
- S7Address that = (S7Address) o;
- return true;
+ PascalStringTypeTest that = (PascalStringTypeTest) o;
+ return (getStringLength() == that.getStringLength())
+ && (getStringField() == that.getStringField())
+ && true;
}
@Override
public int hashCode() {
- return Objects.hash();
+ return Objects.hash(getStringLength(), getStringField());
}
@Override
diff --git a/plc4j/drivers/profinet/src/main/generated/org/apache/plc4x/java/profinet/readwrite/PnDcp_Block_FullIpSuite.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ReservedTypeTest.java
similarity index 63%
copy from plc4j/drivers/profinet/src/main/generated/org/apache/plc4x/java/profinet/readwrite/PnDcp_Block_FullIpSuite.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ReservedTypeTest.java
index 355f1fe486..fa0c0d26fd 100644
--- a/plc4j/drivers/profinet/src/main/generated/org/apache/plc4x/java/profinet/readwrite/PnDcp_Block_FullIpSuite.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ReservedTypeTest.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.profinet.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,28 +35,27 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public class PnDcp_Block_FullIpSuite extends PnDcp_Block implements Message {
+public class ReservedTypeTest implements Message {
- // Accessors for discriminator values.
- public PnDcp_BlockOptions getOption() {
- return PnDcp_BlockOptions.IP_OPTION;
- }
-
- public Short getSuboption() {
- return (short) 3;
- }
+ // Reserved Fields
+ private Short reservedField0;
- public PnDcp_Block_FullIpSuite() {
+ public ReservedTypeTest() {
super();
}
- @Override
- protected void serializePnDcp_BlockChild(WriteBuffer writeBuffer) throws SerializationException {
+ public void serialize(WriteBuffer writeBuffer) throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("PnDcp_Block_FullIpSuite");
+ writeBuffer.pushContext("ReservedTypeTest");
- writeBuffer.popContext("PnDcp_Block_FullIpSuite");
+ // Reserved Field (reserved)
+ writeReservedField(
+ "reserved",
+ reservedField0 != null ? reservedField0 : (short) 0x00,
+ writeUnsignedShort(writeBuffer, 8));
+
+ writeBuffer.popContext("ReservedTypeTest");
}
@Override
@@ -66,32 +65,36 @@ public class PnDcp_Block_FullIpSuite extends PnDcp_Block implements Message {
@Override
public int getLengthInBits() {
- int lengthInBits = super.getLengthInBits();
- PnDcp_Block_FullIpSuite _value = this;
+ int lengthInBits = 0;
+ ReservedTypeTest _value = this;
+
+ // Reserved Field (reserved)
+ lengthInBits += 8;
return lengthInBits;
}
- public static PnDcp_Block_FullIpSuiteBuilder staticParseBuilder(ReadBuffer readBuffer)
+ public static ReservedTypeTest staticParse(ReadBuffer readBuffer, Object... args)
throws ParseException {
- readBuffer.pullContext("PnDcp_Block_FullIpSuite");
PositionAware positionAware = readBuffer;
- int startPos = positionAware.getPos();
- int curPos;
-
- readBuffer.closeContext("PnDcp_Block_FullIpSuite");
- // Create the instance
- return new PnDcp_Block_FullIpSuiteBuilder();
+ return staticParse(readBuffer);
}
- public static class PnDcp_Block_FullIpSuiteBuilder implements PnDcp_Block.PnDcp_BlockBuilder {
+ public static ReservedTypeTest staticParse(ReadBuffer readBuffer) throws ParseException {
+ readBuffer.pullContext("ReservedTypeTest");
+ PositionAware positionAware = readBuffer;
+ int startPos = positionAware.getPos();
+ int curPos;
- public PnDcp_Block_FullIpSuiteBuilder() {}
+ Short reservedField0 =
+ readReservedField("reserved", readUnsignedShort(readBuffer, 8), (short) 0x00);
- public PnDcp_Block_FullIpSuite build() {
- PnDcp_Block_FullIpSuite pnDcp_Block_FullIpSuite = new PnDcp_Block_FullIpSuite();
- return pnDcp_Block_FullIpSuite;
- }
+ readBuffer.closeContext("ReservedTypeTest");
+ // Create the instance
+ ReservedTypeTest _reservedTypeTest;
+ _reservedTypeTest = new ReservedTypeTest();
+ _reservedTypeTest.reservedField0 = reservedField0;
+ return _reservedTypeTest;
}
@Override
@@ -99,16 +102,16 @@ public class PnDcp_Block_FullIpSuite extends PnDcp_Block implements Message {
if (this == o) {
return true;
}
- if (!(o instanceof PnDcp_Block_FullIpSuite)) {
+ if (!(o instanceof ReservedTypeTest)) {
return false;
}
- PnDcp_Block_FullIpSuite that = (PnDcp_Block_FullIpSuite) o;
- return super.equals(that) && true;
+ ReservedTypeTest that = (ReservedTypeTest) o;
+ return true;
}
@Override
public int hashCode() {
- return Objects.hash(super.hashCode());
+ return Objects.hash();
}
@Override
diff --git a/plc4j/drivers/knxnetip/src/main/generated/org/apache/plc4x/java/knxnetip/readwrite/ApduDataGroupValueRead.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ReservedTypeTestChild.java
similarity index 65%
copy from plc4j/drivers/knxnetip/src/main/generated/org/apache/plc4x/java/knxnetip/readwrite/ApduDataGroupValueRead.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ReservedTypeTestChild.java
index 2d63e3ccbe..cd2bcd8df9 100644
--- a/plc4j/drivers/knxnetip/src/main/generated/org/apache/plc4x/java/knxnetip/readwrite/ApduDataGroupValueRead.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ReservedTypeTestChild.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.knxnetip.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,36 +35,30 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public class ApduDataGroupValueRead extends ApduData implements Message {
+public class ReservedTypeTestChild extends ReservedTypeTestParent implements Message {
// Accessors for discriminator values.
- public Byte getApciType() {
- return (byte) 0x0;
- }
-
- // Arguments.
- protected final Short dataLength;
// Reserved Fields
private Short reservedField0;
- public ApduDataGroupValueRead(Short dataLength) {
- super(dataLength);
- this.dataLength = dataLength;
+ public ReservedTypeTestChild(short simpleField) {
+ super(simpleField);
}
@Override
- protected void serializeApduDataChild(WriteBuffer writeBuffer) throws SerializationException {
+ protected void serializeReservedTypeTestParentChild(WriteBuffer writeBuffer)
+ throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("ApduDataGroupValueRead");
+ writeBuffer.pushContext("ReservedTypeTestChild");
// Reserved Field (reserved)
writeReservedField(
"reserved",
reservedField0 != null ? reservedField0 : (short) 0x00,
- writeUnsignedShort(writeBuffer, 6));
+ writeUnsignedShort(writeBuffer, 8));
- writeBuffer.popContext("ApduDataGroupValueRead");
+ writeBuffer.popContext("ReservedTypeTestChild");
}
@Override
@@ -75,44 +69,41 @@ public class ApduDataGroupValueRead extends ApduData implements Message {
@Override
public int getLengthInBits() {
int lengthInBits = super.getLengthInBits();
- ApduDataGroupValueRead _value = this;
+ ReservedTypeTestChild _value = this;
// Reserved Field (reserved)
- lengthInBits += 6;
+ lengthInBits += 8;
return lengthInBits;
}
- public static ApduDataGroupValueReadBuilder staticParseBuilder(
- ReadBuffer readBuffer, Short dataLength) throws ParseException {
- readBuffer.pullContext("ApduDataGroupValueRead");
+ public static ReservedTypeTestParentBuilder staticParseReservedTypeTestParentBuilder(
+ ReadBuffer readBuffer) throws ParseException {
+ readBuffer.pullContext("ReservedTypeTestChild");
PositionAware positionAware = readBuffer;
int startPos = positionAware.getPos();
int curPos;
Short reservedField0 =
- readReservedField("reserved", readUnsignedShort(readBuffer, 6), (short) 0x00);
+ readReservedField("reserved", readUnsignedShort(readBuffer, 8), (short) 0x00);
- readBuffer.closeContext("ApduDataGroupValueRead");
+ readBuffer.closeContext("ReservedTypeTestChild");
// Create the instance
- return new ApduDataGroupValueReadBuilder(dataLength, reservedField0);
+ return new ReservedTypeTestChildBuilderImpl(reservedField0);
}
- public static class ApduDataGroupValueReadBuilder implements ApduData.ApduDataBuilder {
- private final Short dataLength;
+ public static class ReservedTypeTestChildBuilderImpl
+ implements ReservedTypeTestParent.ReservedTypeTestParentBuilder {
private final Short reservedField0;
- public ApduDataGroupValueReadBuilder(Short dataLength, Short reservedField0) {
- this.dataLength = dataLength;
+ public ReservedTypeTestChildBuilderImpl(Short reservedField0) {
this.reservedField0 = reservedField0;
}
- public ApduDataGroupValueRead build(Short dataLength) {
-
- ApduDataGroupValueRead apduDataGroupValueRead = new ApduDataGroupValueRead(dataLength);
-
- apduDataGroupValueRead.reservedField0 = reservedField0;
- return apduDataGroupValueRead;
+ public ReservedTypeTestChild build(short simpleField) {
+ ReservedTypeTestChild reservedTypeTestChild = new ReservedTypeTestChild(simpleField);
+ reservedTypeTestChild.reservedField0 = reservedField0;
+ return reservedTypeTestChild;
}
}
@@ -121,10 +112,10 @@ public class ApduDataGroupValueRead extends ApduData implements Message {
if (this == o) {
return true;
}
- if (!(o instanceof ApduDataGroupValueRead)) {
+ if (!(o instanceof ReservedTypeTestChild)) {
return false;
}
- ApduDataGroupValueRead that = (ApduDataGroupValueRead) o;
+ ReservedTypeTestChild that = (ReservedTypeTestChild) o;
return super.equals(that) && true;
}
diff --git a/plc4j/drivers/knxnetip/src/main/generated/org/apache/plc4x/java/knxnetip/readwrite/CEMIAdditionalInformation.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ReservedTypeTestParent.java
similarity index 58%
copy from plc4j/drivers/knxnetip/src/main/generated/org/apache/plc4x/java/knxnetip/readwrite/CEMIAdditionalInformation.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ReservedTypeTestParent.java
index 3b2f680445..325de24c9a 100644
--- a/plc4j/drivers/knxnetip/src/main/generated/org/apache/plc4x/java/knxnetip/readwrite/CEMIAdditionalInformation.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/ReservedTypeTestParent.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.knxnetip.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,33 +35,45 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public abstract class CEMIAdditionalInformation implements Message {
+public abstract class ReservedTypeTestParent implements Message {
// Abstract accessors for discriminator values.
- public abstract Short getAdditionalInformationType();
- public CEMIAdditionalInformation() {
+ // Properties.
+ protected final short simpleField;
+ // Reserved Fields
+ private Short reservedField0;
+
+ public ReservedTypeTestParent(short simpleField) {
super();
+ this.simpleField = simpleField;
+ }
+
+ public short getSimpleField() {
+ return simpleField;
}
- protected abstract void serializeCEMIAdditionalInformationChild(WriteBuffer writeBuffer)
+ protected abstract void serializeReservedTypeTestParentChild(WriteBuffer writeBuffer)
throws SerializationException;
public void serialize(WriteBuffer writeBuffer) throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("CEMIAdditionalInformation");
+ writeBuffer.pushContext("ReservedTypeTestParent");
- // Discriminator Field (additionalInformationType) (Used as input to a switch field)
- writeDiscriminatorField(
- "additionalInformationType",
- getAdditionalInformationType(),
+ // Reserved Field (reserved)
+ writeReservedField(
+ "reserved",
+ reservedField0 != null ? reservedField0 : (short) 0x00,
writeUnsignedShort(writeBuffer, 8));
+ // Simple Field (simpleField)
+ writeSimpleField("simpleField", simpleField, writeUnsignedShort(writeBuffer, 8));
+
// Switch field (Serialize the sub-type)
- serializeCEMIAdditionalInformationChild(writeBuffer);
+ serializeReservedTypeTestParentChild(writeBuffer);
- writeBuffer.popContext("CEMIAdditionalInformation");
+ writeBuffer.popContext("ReservedTypeTestParent");
}
@Override
@@ -72,9 +84,12 @@ public abstract class CEMIAdditionalInformation implements Message {
@Override
public int getLengthInBits() {
int lengthInBits = 0;
- CEMIAdditionalInformation _value = this;
+ ReservedTypeTestParent _value = this;
- // Discriminator Field (additionalInformationType)
+ // Reserved Field (reserved)
+ lengthInBits += 8;
+
+ // Simple field (simpleField)
lengthInBits += 8;
// Length of sub-type elements will be added by sub-type...
@@ -82,45 +97,46 @@ public abstract class CEMIAdditionalInformation implements Message {
return lengthInBits;
}
- public static CEMIAdditionalInformation staticParse(ReadBuffer readBuffer, Object... args)
+ public static ReservedTypeTestParent staticParse(ReadBuffer readBuffer, Object... args)
throws ParseException {
PositionAware positionAware = readBuffer;
return staticParse(readBuffer);
}
- public static CEMIAdditionalInformation staticParse(ReadBuffer readBuffer) throws ParseException {
- readBuffer.pullContext("CEMIAdditionalInformation");
+ public static ReservedTypeTestParent staticParse(ReadBuffer readBuffer) throws ParseException {
+ readBuffer.pullContext("ReservedTypeTestParent");
PositionAware positionAware = readBuffer;
int startPos = positionAware.getPos();
int curPos;
- short additionalInformationType =
- readDiscriminatorField("additionalInformationType", readUnsignedShort(readBuffer, 8));
+ Short reservedField0 =
+ readReservedField("reserved", readUnsignedShort(readBuffer, 8), (short) 0x00);
+
+ short simpleField = readSimpleField("simpleField", readUnsignedShort(readBuffer, 8));
// Switch Field (Depending on the discriminator values, passes the instantiation to a sub-type)
- CEMIAdditionalInformationBuilder builder = null;
- if (EvaluationHelper.equals(additionalInformationType, (short) 0x03)) {
- builder = CEMIAdditionalInformationBusmonitorInfo.staticParseBuilder(readBuffer);
- } else if (EvaluationHelper.equals(additionalInformationType, (short) 0x04)) {
- builder = CEMIAdditionalInformationRelativeTimestamp.staticParseBuilder(readBuffer);
+ ReservedTypeTestParentBuilder builder = null;
+ if (EvaluationHelper.equals(simpleField, (short) 0)) {
+ builder = ReservedTypeTestChild.staticParseReservedTypeTestParentBuilder(readBuffer);
}
if (builder == null) {
throw new ParseException(
"Unsupported case for discriminated type"
+ " parameters ["
- + "additionalInformationType="
- + additionalInformationType
+ + "simpleField="
+ + simpleField
+ "]");
}
- readBuffer.closeContext("CEMIAdditionalInformation");
+ readBuffer.closeContext("ReservedTypeTestParent");
// Create the instance
- CEMIAdditionalInformation _cEMIAdditionalInformation = builder.build();
- return _cEMIAdditionalInformation;
+ ReservedTypeTestParent _reservedTypeTestParent = builder.build(simpleField);
+ _reservedTypeTestParent.reservedField0 = reservedField0;
+ return _reservedTypeTestParent;
}
- public static interface CEMIAdditionalInformationBuilder {
- CEMIAdditionalInformation build();
+ public interface ReservedTypeTestParentBuilder {
+ ReservedTypeTestParent build(short simpleField);
}
@Override
@@ -128,16 +144,16 @@ public abstract class CEMIAdditionalInformation implements Message {
if (this == o) {
return true;
}
- if (!(o instanceof CEMIAdditionalInformation)) {
+ if (!(o instanceof ReservedTypeTestParent)) {
return false;
}
- CEMIAdditionalInformation that = (CEMIAdditionalInformation) o;
- return true;
+ ReservedTypeTestParent that = (ReservedTypeTestParent) o;
+ return (getSimpleField() == that.getSimpleField()) && true;
}
@Override
public int hashCode() {
- return Objects.hash();
+ return Objects.hash(getSimpleField());
}
@Override
diff --git a/plc4j/drivers/profinet/src/main/generated/org/apache/plc4x/java/profinet/readwrite/PnDcp_Block_ALLSelector.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/SimpleBitTypeTest.java
similarity index 63%
copy from plc4j/drivers/profinet/src/main/generated/org/apache/plc4x/java/profinet/readwrite/PnDcp_Block_ALLSelector.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/SimpleBitTypeTest.java
index a4b2a26fcb..acd03bc00d 100644
--- a/plc4j/drivers/profinet/src/main/generated/org/apache/plc4x/java/profinet/readwrite/PnDcp_Block_ALLSelector.java
+++ b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/SimpleBitTypeTest.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.plc4x.java.profinet.readwrite;
+package org.apache.plc4x.java.test.readwrite;
import static org.apache.plc4x.java.spi.codegen.fields.FieldReaderFactory.*;
import static org.apache.plc4x.java.spi.codegen.fields.FieldWriterFactory.*;
@@ -35,28 +35,29 @@ import org.apache.plc4x.java.spi.generation.*;
// Code generated by code-generation. DO NOT EDIT.
-public class PnDcp_Block_ALLSelector extends PnDcp_Block implements Message {
+public class SimpleBitTypeTest implements Message {
- // Accessors for discriminator values.
- public PnDcp_BlockOptions getOption() {
- return PnDcp_BlockOptions.ALL_SELECTOR_OPTION;
- }
+ // Properties.
+ protected final boolean bitField;
- public Short getSuboption() {
- return (short) 0xFF;
+ public SimpleBitTypeTest(boolean bitField) {
+ super();
+ this.bitField = bitField;
}
- public PnDcp_Block_ALLSelector() {
- super();
+ public boolean getBitField() {
+ return bitField;
}
- @Override
- protected void serializePnDcp_BlockChild(WriteBuffer writeBuffer) throws SerializationException {
+ public void serialize(WriteBuffer writeBuffer) throws SerializationException {
PositionAware positionAware = writeBuffer;
int startPos = positionAware.getPos();
- writeBuffer.pushContext("PnDcp_Block_ALLSelector");
+ writeBuffer.pushContext("SimpleBitTypeTest");
- writeBuffer.popContext("PnDcp_Block_ALLSelector");
+ // Simple Field (bitField)
+ writeSimpleField("bitField", bitField, writeBoolean(writeBuffer));
+
+ writeBuffer.popContext("SimpleBitTypeTest");
}
@Override
@@ -66,32 +67,34 @@ public class PnDcp_Block_ALLSelector extends PnDcp_Block implements Message {
@Override
public int getLengthInBits() {
- int lengthInBits = super.getLengthInBits();
- PnDcp_Block_ALLSelector _value = this;
+ int lengthInBits = 0;
+ SimpleBitTypeTest _value = this;
+
+ // Simple field (bitField)
+ lengthInBits += 1;
return lengthInBits;
}
- public static PnDcp_Block_ALLSelectorBuilder staticParseBuilder(ReadBuffer readBuffer)
+ public static SimpleBitTypeTest staticParse(ReadBuffer readBuffer, Object... args)
throws ParseException {
- readBuffer.pullContext("PnDcp_Block_ALLSelector");
PositionAware positionAware = readBuffer;
- int startPos = positionAware.getPos();
- int curPos;
-
- readBuffer.closeContext("PnDcp_Block_ALLSelector");
- // Create the instance
- return new PnDcp_Block_ALLSelectorBuilder();
+ return staticParse(readBuffer);
}
- public static class PnDcp_Block_ALLSelectorBuilder implements PnDcp_Block.PnDcp_BlockBuilder {
+ public static SimpleBitTypeTest staticParse(ReadBuffer readBuffer) throws ParseException {
+ readBuffer.pullContext("SimpleBitTypeTest");
+ PositionAware positionAware = readBuffer;
+ int startPos = positionAware.getPos();
+ int curPos;
- public PnDcp_Block_ALLSelectorBuilder() {}
+ boolean bitField = readSimpleField("bitField", readBoolean(readBuffer));
- public PnDcp_Block_ALLSelector build() {
- PnDcp_Block_ALLSelector pnDcp_Block_ALLSelector = new PnDcp_Block_ALLSelector();
- return pnDcp_Block_ALLSelector;
- }
+ readBuffer.closeContext("SimpleBitTypeTest");
+ // Create the instance
+ SimpleBitTypeTest _simpleBitTypeTest;
+ _simpleBitTypeTest = new SimpleBitTypeTest(bitField);
+ return _simpleBitTypeTest;
}
@Override
@@ -99,16 +102,16 @@ public class PnDcp_Block_ALLSelector extends PnDcp_Block implements Message {
if (this == o) {
return true;
}
- if (!(o instanceof PnDcp_Block_ALLSelector)) {
+ if (!(o instanceof SimpleBitTypeTest)) {
return false;
}
- PnDcp_Block_ALLSelector that = (PnDcp_Block_ALLSelector) o;
- return super.equals(that) && true;
+ SimpleBitTypeTest that = (SimpleBitTypeTest) o;
+ return (getBitField() == that.getBitField()) && true;
}
@Override
public int hashCode() {
- return Objects.hash(super.hashCode());
+ return Objects.hash(getBitField());
}
@Override
diff --git a/plc4j/drivers/s7/src/main/generated/org/apache/plc4x/java/s7/readwrite/S7ParameterUserDataItem.java b/code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/SimpleDiscriminatedType.java
similarity index 63%
copy from plc4j/drivers/s7/src/main/generated/org/apache/plc4x/java/s7/readwrite/S7ParameterUserDataItem.java
copy to code-generation/tests/protocol-test-java/src/main/generated/org/apache/plc4x/java/test/readwrite/SimpleDiscriminatedType.java
index 1efa15bf0c..afd696abb8 100644
... 83896 lines suppressed ...