Michael Croes
f67b1e773f
Add missing ConfigureAwait in OpenAsync
2021-06-01 20:59:20 +02:00
Michael Croes
e93a656312
Fix locking for OpenAsync
2021-06-01 20:28:34 +02:00
Michael Croes
8035f71a16
Apply synchronization to stream actions
2021-05-31 22:57:13 +02:00
Michael Croes
df4f258290
Move GetStreamIfAvailable to PLC.cs
2021-05-31 21:23:32 +02:00
Michael Croes
5636b93a53
PlcSynchronous: Remove unused usings
2021-05-31 21:17:42 +02:00
Michael Croes
8ed1b840bc
PlcSynchronous: Clenaup trailing whitespace
2021-05-31 21:17:23 +02:00
Michael Croes
2afed88231
Consolidate sync stream calls
2021-05-31 21:17:03 +02:00
Michael Croes
1ded47971b
Consolidate async stream calls
2021-05-31 21:07:16 +02:00
Michael Croes
aa50280233
Boolean: Add SetBit and ClearBit by reference
2021-05-10 21:14:43 +02:00
Michael Croes
3a794e8a46
Cleanup trailing whitespace in PLC and PLCHelpers
2021-05-10 21:05:02 +02:00
Michael Croes
0b8bd66bf7
Fix bitwise operator in Boolean.ClearBit
...
Fixes #249
2021-05-10 20:50:46 +02:00
Michael Croes
a1b4694ef6
Fix calculation of byte length for VarType.Bit
...
Fixes #389
2021-05-10 20:25:38 +02:00
Michael Croes
aa03400350
Document IsConnected, shorten implementation
2021-03-29 21:43:24 +02:00
Michael Croes
2b4ec6d9dd
Remove IsAvailable
...
Addresses #275 , #252 , #208 , #154 .
2021-03-29 21:43:24 +02:00
diego
e63d92c61c
Fix ByteLength calculation for S7Strings when reserved is odd
2021-03-29 20:51:11 +02:00
diego
b4b94e1777
Fix wrong calculation for S7WString byte length
2021-03-29 20:51:11 +02:00
Serge Camille
82e29837a2
Sprinkle more .ConfigureAwait(false) into async library.
...
This helps to avoid deadlocks when using synchronous API which references the async one in applications with a synchronization context, like a GUI.
Should fix #344
2021-03-16 08:08:39 +01:00
Michael Croes
478c1aed52
Merge branch 'develop' into StructStringSupport
2021-03-13 13:30:31 +01:00
Mike Cremer
924eb9c48f
Minor changes + removed default length in S7StringAttribute
2021-03-13 12:00:32 +01:00
Serge Camille
37384d2a92
Fix PLC parse for type "Z"/"C"
2021-03-12 08:17:37 +01:00
Mike Cremer
fdd4519f64
Minor changes
2021-01-29 21:13:38 +01:00
Mike Cremer
926d74f1d2
Fixed length check and corresponding message for S7String
2021-01-27 17:55:16 +01:00
Mike Cremer
9b89acfb91
Removed unnecessary bitwise and's
2021-01-25 21:42:08 +01:00
Mike Cremer
de0a9e64dc
Added support for strings in Struct type class
2021-01-24 13:56:07 +01:00
Mike Cremer
dfcc4c7408
Added WString support
2021-01-24 12:16:32 +01:00
Michael Croes
0b04c86cb9
Generate documentation file
2021-01-05 22:07:11 +01:00
Serge Camille
d051b93bdc
Fix OpenAsync function to rethrow exception during connection establish.
...
This bug was introduced in 106e9912
2020-10-17 17:54:30 +02:00
Serge Camille
a7608e3cb7
Rename and Move DataRequestItem
2020-09-26 21:28:31 +02:00
Serge Camille
4d37679c75
Move BuildReadRequestPackage to PlcHelpers, cleanup.
2020-09-26 21:21:37 +02:00
Serge Camille
e2a0ed548d
Unify async read request header building.
...
Add concept of DataRequestItem which contains the necessary data to build the request.
2020-09-26 21:21:37 +02:00
Michael Croes
2bcc5e6b9c
Merge branch 'develop' into cleanupOpen
2020-09-21 23:06:06 +02:00
Serge Camille
33981ab4f9
Use int for MaxPduSize and parse communication response for it as uint16
2020-09-16 23:09:23 +02:00
Serge Camille
de60a7b6b0
Add .ConfigureAwait(false) throughout OpenAsync callstack.
2020-09-16 22:38:05 +02:00
Serge Camille
ca89736c7c
Use GetAwaiter().GetResult();
2020-09-16 22:31:51 +02:00
Serge Camille
4a72c3596b
Revert MaxPDUSize parse change.
2020-09-16 22:28:42 +02:00
Serge Camille
b95b71e9aa
Remove unnecessary string interpolation in ValidateResponseCode
2020-09-16 20:26:53 +02:00
Serge Camille
1069641606
Add more extensive response code validation.
...
Fixes #310
2020-09-16 20:25:20 +02:00
Michael Croes
243e868488
Merge branch 'develop' into stringSerialization
2020-09-16 20:13:19 +02:00
Serge Camille
12a2e3c0b1
Fix runtime error on linux with default Socket timeouts.
...
The default value for socket timeout API is 0 and not -1, so revert to that value to give the intended infinite timeout on all platforms.
2020-09-13 09:57:13 +02:00
Serge Camille
b088fe276b
Rename StringEx to S7String.
...
This name is already somewhat used in code and gives this a better name.
2020-09-12 19:27:15 +02:00
Serge Camille
80ad95372b
Use Stream.Dispose() for NetStandard 1.3
2020-09-12 11:19:08 +02:00
Serge Camille
106e9912ab
Cleanup OpenAsync function.
...
- Separate into Connect and EstablishConnection step.
- Remove redundant null checks for returned data.
- Only assing PLC stream object once we fully established a connection, and Close otherwise.
- Replace sync implementation with Async call.
2020-09-12 11:14:41 +02:00
Serge Camille
faea428e4c
Try not to replace OperationCanceledException with PlcException.
2020-09-09 21:24:39 +02:00
Serge Camille
4da76c7f6d
Add missing cancellationToken to Stream.WriteAsync call.
2020-09-09 21:24:39 +02:00
Serge Camille
6c4d4605f0
Add CancellationToken support to async functions.
2020-09-09 21:24:36 +02:00
Michael Croes
b36c4a98ec
Merge branch 'develop' into fb-fixWarnings
2020-09-09 21:01:54 +02:00
Michael Croes
cf1b71220a
Merge branch 'develop' into fb-varHints
2020-09-09 20:40:09 +02:00
Serge Camille
cf493d47f0
Apply some of the hints that the compiler is giving.
2020-09-06 15:04:20 +02:00
Serge Camille
9e2f17fdf3
Fix some null deref warnings.
2020-09-06 15:00:08 +02:00
Serge Camille
1919b0083a
StringEx more strict malformed checks when parsing byte array.
...
- min length of 2.
- capacity >= length
2020-09-04 22:33:54 +02:00