Commit Graph

15 Commits

Author SHA1 Message Date
7dfdfdb4ce Minor update: code compacting 2022-07-22 11:56:19 +02:00
e5f8a8347a CharBufferCore:
- Bug fix - FindStr() for input marker not matching correctly
SeletableBare/Core:
- Reformat code - eliminate & compact {} where needed
2021-10-12 10:14:35 -05:00
Charl Wentzel
c2c08c527c Minor Update:
- Add GetAddress() to CApplciation
- Call GetAddress() from GetHandleAddress() is SelectableCore
- Correct "Name" overload in SelectableCore->Init()
2019-09-08 10:01:38 +02:00
Charl Wentzel
14982e8459 Important Update:
- Channels (FunctionCore & SelectableBare):
  - Added state "Standby", allow auto-managed handle to be opened
- SelectableCore:
  - Set default "Persistent" state for sockets based on type
  - Remove Process() method (no different from SelectableBare
- DateTimeCore:
  - Added BuildDateTimeStr() methods to build date for values
- JSONparseCore:
  - Added error message to file operations
2019-07-15 17:40:40 +02:00
Charl Wentzel
9f8f69de3f Important Update:
- FunctionCore:
  - Improve Channel Events:
    - Remove important actions from ChannelStateEvent()
      (now only used for custom actions)
    - Add new method UpdateChannelOutState()
    - Add Channel Events to Link and Unlink actions
    - Rename SetChannelState() -> SetChannelInState()
  - Use Channel->Ref (instead of name) on all channel events
- DeviceCore/SelectableCore:
  - Rename SetChannelState() -> SetChannelInState()
2019-06-23 18:03:37 +02:00
Charl Wentzel
e9b50f1af9 Important Update:
- FunctionCore/SelectableCore:
  - Replace Channel->State with InState
  - Add Channel-OutState (ready for output) updated by ChannelStateEvent()
- TimingCore:
  - Add GetUpCounter() for calculating uptime string (in seconds)
2019-06-23 10:38:27 +02:00
Charl Wentzel
7787da5119 Important Update:
- Complete Async resolve:
  - Remove Resolving param from THandle
  - Rename state csResolving -> csPreparing
  - Added handle state csPrepared, to indicated resolve complete
  - Open handle if state = csPrepared
  - Remove Resolve delay (not required since async resolve)
    - remove from JSON config as well
2019-06-10 10:44:51 +02:00
Charl Wentzel
bde14a13da Major Update:
- FunctionCore
  - Replace Channel->Ready with Channel->State (off/waiting/ready)
  - Add Function reference to Handle
- SelectableBare/Core:
  - Implement async address resolve with event handling
    - Create ResolveHandler() signal handler (friend) function
  - Change Create/Remove/DestroyHandle() methods to virtual methods
    - Move socket specific code to SelectableCore
  - Rename ChangeState() to virtual HandleState()
  - Move ClearHandle() from SelectableBare -> SelectableCore
  - Implement new/delete from THandle
  - Set max TCP SYN count on connect
2019-06-09 22:05:27 +02:00
Charl Wentzel
08fce64629 Important Update:
- FunctionCore
  - So not set Function JSON "config" param to empty object by default
  - Change TChannelLink to reference Channel direct
  - Add Input/Output to TChannelLink
    - Replace LinkChannel() Bidirectional param with Input/Output param
    - Update JSON config as well
  - Implement Channel "Ready" state and events
    - Remove Input/OutputEnabled parameters and related methods
    - Remove from JSON config as well
    - Update AddChannel() method accordingly
  - Add Ref param to struct TChannel
- SelectableCore:
  - Convert inline ChangeState() to non-inline method
  - Move ChangeState() to last step in open/close methods
  - Add Channels in Not Ready state
  - Change Channel state when Handle state changed
- DeviceCore:
  - Add Channels in Ready state
- FileCore:
  - Add Channel in Not Ready state
2019-06-05 19:13:04 +02:00
Charl Wentzel
fa6825b72a Important Update:
- FunctionCore/SelectableCore/FileCore/DeviceCore:
  - Remove InputChannels
    - Only OutputChannels -> LinkedChannels
    - Remove PullInput/Output() methods
    - Remove StoredOutput
  - Add References to channels and linked channels
    - Send SourceRef with output
    - Receive TargetRef with input
    - Filter output channels based on TargetRef
2019-06-04 18:35:23 +02:00
Charl Wentzel
7459763eb6 Important Update:
- Remove unused: FunctionCore-ChannelBuffer
- DataTreeCore:
  - Bug fix: Set Len=0 on element Clear()
- SelectableBare/Core:
  - Move move BuildArgs() to SelectableBare
  - Make OutputHandle() to virtual method
- UtilCore:
  - Bug fix: Handle NoCrLF correctly in BytesToSafeStr()
2019-06-02 16:12:42 +02:00
Charl Wentzel
c0a50bf2bd Minor update:
- FunctionCore:
  - Set Function Type in Init()
- SelectableBare:
  - Remove unnecesary initialisation in constructor
- SelectableCore:
  - Remove code duplicated in SelectableBare
2019-05-20 18:07:25 +02:00
Charl Wentzel
0db59f8ecd Important Update:
- SelectableBare:
  - Bug fix: Packet sent too early
2019-04-19 11:16:07 +02:00
Charl Wentzel
5899bf9892 Merge branch 'master' into HitNotBLE
# Conflicts:
#	SelectableCore.cpp
#	SelectableCore.h
2019-04-03 17:02:52 +02:00
Charl Wentzel
ebaf52a1a0 Important Update:
- Split SelectableCore.cpp into two classes:
  SelectableBare & SelectableCore
2019-03-29 15:44:13 +02:00