Comments (6)
What if there was a copy()
method hanging off OpcUaClientConfig
instead which returned a OpcUaClientConfigBuilder
with all of the values pre-set from the config. This way you're not encouraged to leave some reference to a mutable, non-thread-safe object like a builder laying around.
from milo.
I'm implementing this idea on UaTcpStackClientConfig
and OpcUaClientConfig
.
edit: and the server versions... even though it's less likely to be needed.
from milo.
Actually I just did it for the server config because I needed them most :-)
from milo.
So I will stick with my local changes and wait for your fix! Thanks!!
Just to let you know what I did. I created two additional constructors, beside the default one. Taking in "Config" and "ConfigBuilder" each. The "ConfigBuilder" just calls "this ( other.build() )", which may not be that performant, but this should not be called that often either.
But that allows one to clone the builder and also create a mutable version from an existing configuration again.
True, every type used by the configuration, should be immutable as well.
from milo.
So I've done half the work... added copy()
methods to the client config objects. It's somewhat tedious and boring, especially the tests, so I'm going to take a break and implement the server ones later... 😝
from milo.
Just missing tests for the server config objects now.
from milo.
Related Issues (20)
- Missing Constraint when using as bundle in OSGi context
- Client stack - Reconnection does not restart subscriptions properly HOT 6
- The server has reached its maximum number of sessions HOT 1
- Error when connect to OPC UA server with long URL? HOT 1
- package not found [org.opcfoundation.opcua.binaryschema] HOT 2
- When subscribed to data changes and then read a value from the OPC-UA server, it will continue to receive subscribed data even if its value has not changed HOT 1
- The connection to S7 1500 gets interrupted while the connection to S7 1200 does not. HOT 1
- Get Bad_ArgumentsMissing instead of Bad_TooManyArguments HOT 1
- cant't write a Long value to opc-ua(the data type is UInt32) HOT 1
- Force TCP reconnect after SessionFsm keep-alive failure HOT 2
- Security upgrade to netty-4.1.105.Final
- CertificateValidationUtil issuer certificate KeyUsage checks
- How to read CustomStructType? HOT 1
- Remove dependency on lombok
- milo version 0.6.11 monitors the approximate limit of the number of PLC points HOT 1
- URI Reading Error HOT 8
- Port forwarding HOT 1
- Milo 0.6.12 Gradle ambiguity error for guava 33 HOT 4
- EndpointDescription is only chosen based on path, not hostname, preventing different certificates per-endpoint HOT 2
- status=Bad_Timeout HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from milo.