Skip to content

Fix/opc ua fine tuning#2458

Closed
chrisdutz wants to merge 9 commits intodevelopfrom
fix/opc-ua-fine-tuning
Closed

Fix/opc ua fine tuning#2458
chrisdutz wants to merge 9 commits intodevelopfrom
fix/opc-ua-fine-tuning

Conversation

@chrisdutz
Copy link
Contributor

Please review :-)

These were changes needed to get the manual test to work with the OPC-UA server of my S7-1500 device.

@sruehl
Copy link
Contributor

sruehl commented Feb 20, 2026

seems like you did not adjust the Golang version? Why was it required to go to a manual field? Sometimes it is a bit hard to find the static helper in the mega diff :D

@chrisdutz
Copy link
Contributor Author

In order to read some of the time fields I needed to add this alternative ... but yeah ... didn't know we had an OPC-UA driver in Go ... sorry for that (I stopped building Go as it takes for ever every time)

@sruehl
Copy link
Contributor

sruehl commented Feb 20, 2026

no worries, the go build where broken due to the invoker messup for a while so maybe that didn't jump directly to the eye. Since I repaired it red should really mean build fail 🗡️

Copy link
Contributor

@splatch splatch left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some of changes are unrelated to opc-ua. Some other changes affect existing logic. Please revisit these.

biConsumer.accept(message, e);
// Use the original payload rather than the transformed message,
// as the error consumer expects the original message type.
biConsumer.accept(payload, e);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Error handlers are "global", hence by introducing this change you may break some drivers in situations which we do not test.

['false', 'true' BinaryExtensionObjectWithMask
[implicit int 32 bodyLength 'body == null ? 0 : body.lengthInBytes']
[simple ExtensionObjectDefinition('extensionId') body]
[manual ExtensionObjectDefinition body 'STATIC_CALL("parseExtensionObjectBody", readBuffer, extensionId, bodyLength)' 'STATIC_CALL("serializeExtensionObjectBody", writeBuffer, body)' 'body == null ? 0 : body.lengthInBits']
Copy link
Contributor

@splatch splatch Feb 21, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I understand reason for the change, but better move needed logic and UnknownExtensionObject to mspec, so it will be portable across languages.

* Stores the raw body bytes so they can be interpreted later based on context
* (e.g., the tag's dataType hint).
*/
public class UnknownExtensionObject extends ExtensionObjectDefinition {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please move this definition to mspec.

@chrisdutz chrisdutz closed this Feb 22, 2026
@chrisdutz chrisdutz deleted the fix/opc-ua-fine-tuning branch February 22, 2026 18:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants