Skip to content

Releases: JKISoftware/JKI-State-Machine-Objects

Stop Dynamic Dependency

16 Dec 00:52

Choose a tag to compare

[Feature: 28] Dynamic Dependencies are now removed from the dependencies list at runtime when stopped.
[Fix: 29] URI Arguments are now constructed correctly
[Feature] Added a protected method to search for dependencies by key. (key can be "name", "GUID", "Qualified Name", "Subsystem Path" or "Configuration Path")

Stop Dynamic Dependencies at Runtime

09 Dec 22:20

Choose a tag to compare

[Feature: 28] Added support to stop dynamic dependencies at runtime.

Note: The feature is incomplete but usable. For completeness, the list of dynamic dependencies needs to be purged from stale references. The dependencies list should however make it in a way that does not add latency, blocking calls, create a race condition or removes a static dependency from the array stored in the SMO base. Ideally, it would be handled by SMO Base's process to avoid the list of stale dependencies from growing out of control. At the moment, a connection handler type of application would risk running into a gigantic array of dependencies...

Process Kill

08 Oct 22:23

Choose a tag to compare

[Feature: 24] Destroy should try to Stop SMO gracefully before Abort

[Feature: 25] Stop SMO Zombie Processes when Creator Call Chain Goes Idle

Dependency aggregation fix

15 Aug 18:39

Choose a tag to compare

[Fix: 21] Stopping aggregated dependencies no longer can produce a 1556 error on termination when dependency has already been terminated.

1.1.7

15 Aug 18:39

Choose a tag to compare

[Feature: 14] Added a method for process to call a Self-Terminate method.

[Feature: 17] Launch Dependency public method now returns the SMO reference of the created dependency.

[Fix: 20] Parse URI method now correctly handles a simple path preceeded with "/" character.

Stability of nested dependencies

21 Jul 03:38

Choose a tag to compare

[Fix] Launching SMO Processes with a strictly typed VI definition caused LabVIEW to not release references after objects were destroyed. Nested Dependencies will not cause LabVIEW to keep classes locked after objects terminate. Version affected: LV2013 (ref: https://labviewcoder.com/2016/07/06/quick-tip-asynchronously-launching-vis-the-right-way)

Activity updates

19 Jul 05:13

Choose a tag to compare

[Feature] Added onStarted and onStopped to activity diagram
[Fix] Race condition in multiple Start-Stop SMOs as shown by Unit Test failure

Static and Dynamic Dependencies

14 Jul 05:33

Choose a tag to compare

[Feature] Support for static and dynamic dependencies
[Feature] Inheritability of attributes through composition
[Feature] Ownership and Identity attributes
[Feature] enumerateStaticDependencies override
[Feature] Added Registry Public Events on registration and unregistration
[Feature] Added protection for Registry through identity validation procedure for the SMO
[Feature] Listing of shared resources (concept to expand in future releases)
[Feature] Lineage property as part of Owner attribute (+ Get Qualified Name method in SMO Public API)
[Feature] URI Parsing and Construction in palette
[Fix] Fixed process notifier reference leak on stopping SMO
[Fix] Closed the registry reference after unregistration of the last SMO
[Fix] Wired missing error terminal in StartProcess( )
[Fix: 17191] Added documentation in Register Process.vi about the philosophy of the registration and process
[Fix: 17317] Fixed the case where closing UI event would be fired twice on Macro: Exit in SMO:UI process
[Fix: 17327] Event registration now destroyed on erroroverride mechanism.
[Change] Moved Create Self Reference overridable method to be executed after onCreate( )
[Change] Moved Destroy Self Reference overridable method to be executed after onDestroy( )

Version 1.0.0.11

27 Feb 00:55

Choose a tag to compare

  • Changed the re-entrancy settings for the overridable protected methods to allow for recursive calls on subsystems during creation and destruction of objects.
  • Get PublicEvents is now a public method for conviviality (even if it exposes event refs to developer). Prior to this change, the developer needed to get the Event Registration Reference (Mailbox) and register to all events of a subsystem.

v1.0.0.7

02 Feb 19:45

Choose a tag to compare

  • Refactored Sync process
  • Added virtual onStart( ), onStop( ), onProcessStart( ), onProcessStop( ) methods for overrides.