Commit Graph
100 Commits
Author SHA1 Message Date
b19ac57df7 Add support for short-form syntax in YAML Semantic Tags (#5313)
* Add support for short-form YAML semantic tags

Implemented hybrid mapping for YamlSemanticTagDTO to allow tags to be defined as either a simple string (label) or a detailed object (label, description, synonyms). Includes Jackson creator/value logic for round-trip serialization.

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
Co-authored-by: Laurent Garnier <lg.hc@free.fr>
2026-02-15 12:54:35 +01:00
jimtngandGitHub f9776bcb7f Restore model validation not to fail on diagnostic errors for rules and scripts (#5351)
* Restore model validation not to fail on diagnostic errors

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2026-02-14 13:28:52 +01:00
jimtngandGitHub 6beadca4c4 Add StateOfCharge Semantic Tag Property (#5316)
* change groovycsv to jackson csv library

groovycsv caused an error in Groovy 5.x, even in its "latest" version 1.3.

Rerun the script which fixed a few errors in the manually generated tags (Property_Price, Equipment_HVAC_AirConditioner)

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>

* Add Property_StateOfCharge semantic tag

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>

* add readValues guard

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>

---------

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2026-02-11 11:09:38 +01:00
jimtngandGitHub 2cf0fc8051 Validate ThingUID part during ChannelUID construction (#5342)
The ThingUID portion of a ChannelUID was previously only validated
lazily when getThingUID() was called. This could lead to
ChannelUID objects existing in an invalid state.

This change moves validation to the constructor to ensure
fail-fast behavior and provides a more descriptive error
message if the ThingUID part is malformed.

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2026-02-11 10:59:33 +01:00
jimtngandGitHub e206397672 Add support for short-form expire property in Item Yaml config (#5252)
* Add support for short-form expire property in Item Yaml config

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2026-01-23 19:55:47 +01:00
jimtngandGitHub 4b7ad7a23e Add support for short-form metadata namespace in Item Yaml config (#5250)
* Support deserializing short-form metadata in YamlMetadataDTO

So we can set
`metadata: value`

instead of
```
metadata:
  value: value
```

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2026-01-23 19:53:12 +01:00
jimtngandGitHub 2d4793a829 [YAML Thing Provider] Log warning on Thing config errors (#5282)
Catch IAE during Thing configuration loading to prevent
the entire file from failing. Errors are now logged as warnings
instead of throwing a full stack trace.

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2026-01-22 17:16:20 +01:00
jimtngandGitHub f4c50780d8 Allow setting a blank or null metadata value (#5283)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2026-01-17 19:13:57 +01:00
jimtngandGitHub 7c848bf891 DSL Items Parser: Fix incorrect parsing of keywords encountered in the wrong context (#4928)
* DSL Items Parser: Fix incorrect parsing of keywords encountered in the wrong context

When specifying tag names that match one of the valid item types, e.g. `Switch`, the parser incorrectly treated it as a new start of an item definition.

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-09-21 14:14:24 +02:00
jimtngandGitHub f8cb21efcc RulesDSL: Fix DateTimeItem trigger's offset (#5015)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-09-14 16:46:08 +02:00
jimtngandGitHub 07503c2b70 Allow extended unit names for days, hours, minutes, seconds, milliseconds and allow spaces before the unit in expire duration parser (#4873)
* Allow extended unit names for days, hours, minutes, seconds, milliseconds in expire duration parser

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-07-17 14:47:38 +02:00
jimtngandGitHub a010cdb128 Yaml Model Repository: skip non-existent paths during the initial scan instead of logging a warning (#4899)
* Yaml Model Repository: skip non-existent paths during the initial scan instead of logging a warning

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-07-17 14:46:30 +02:00
jimtngandGitHub 2ed2a3aba3 Log the link in the ScriptProfile execution error message (#4888)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-07-08 06:56:37 +02:00
jimtngandGitHub 1922550faa AbstractRegistry: hide exception stacktrace on IAE when adding an element (#4877)
Hide the scary stacktrace from user. The message is sufficient to describe the problem.

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-06-30 22:50:17 +02:00
jimtngandGitHub a045b3c601 Move expire's Duration parser to a separate utility class and support ms for milliseconds (#4868)
* Move expire's Duration parser to a separate utility class so it can be used elsewhere
* Support `ms` in Duration parser

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-06-29 11:34:21 +02:00
jimtngandGitHub 9efdc0401c Yaml Model: restrict the watched folders to things, items, tags, and yaml; support both '.yaml' and '.yml' extensions (#4798)
* Yaml Model: restrict the watched folders to `things`, `items`, `tags`, and `yaml`
* Support `.yml` and `.yaml` extensions

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-06-28 19:04:57 +02:00
jimtngandGitHub 98e3b13c71 Add ValueCache.compute method (#4704)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-06-14 14:52:34 +02:00
jimtngandGitHub 6ecd6c3891 Fix inconsistent payload field name for ItemStateUpdatedEvent lastUpdate -> lastStateUpdate (#4752)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-05-18 19:19:23 +02:00
jimtngandGitHub 825def252d Refactor to avoid possible null pointer dereference in YamlModelRepositoryImpl (#4788)
* Refactor to avoid possible null pointer dereference in YamlModelRepositoryImpl
* add null check

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-05-18 19:12:24 +02:00
jimtngandGitHub c40c258e04 WatchService: use absolute path in processWatchEvent (#4796)
* WatchService: use absolute path in processWatchEvent

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>

* update interface and use a consistent name `fullPath`

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>

---------

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-05-10 16:13:03 +02:00
jimtngandGitHub 3fb76c9fae Create API Token: add regex validation to html input (#4782)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-05-03 07:46:22 +02:00
jimtngandGitHub 0b89fbd2cd YAML Model Repository: Fix premature unknown element warning (#4755)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-04-30 06:31:57 +02:00
jimtngandGitHub 22db52ecc4 Add YamlModelRepository test for removal of version or element type (#4758)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-04-28 11:13:29 +02:00
jimtngandGitHub f5f8921e14 Yaml Model Repository: Remove elements no longer in model (#4749)
This fix two scenarios:
- When the new model is missing `version:` key but the old model had one, the file is considered invalid, but the previously loaded elements didn't get removed
- When the new model has a valid `version:` key, but the entire element type, e.g. `thing:` is removed, the previously loaded elements (e.g. things) didn't get removed.

Additionally, log a warning when an unknown element type is encountered.

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-04-26 08:16:47 +02:00
jimtngandGitHub 9cc4a05486 include .yaml extension in the model name (#4747)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-04-26 08:07:55 +02:00
jimtngandGitHub dfe4615912 YAMLThing: fix typo and minor refactor (#4748)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-04-26 08:00:44 +02:00
jimtngandGitHub 685264295c FileFormatResource: accept multiple ids in a single request (#4734)
* FileFormatResource: accept multiple ids in a single request
* Change from GET endpoints to POST

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-04-23 19:09:25 +02:00
jimtngandGitHub e4cc912f04 Make expire support days, ISO8601 Duration and fully configurable through metadata configuration map (#4724)
* Make `expire` fully configurable through metadata configuration map
* raise an error when setting is specified in both value and config map
* support days and ISO8601
* unknown config raises an error
* throws an exception on negative duration

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-04-19 03:52:32 +02:00
jimtngandGitHub a085b031e3 Fix NPE in ConfigUtil (#4715)
Regression from #4657

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-04-10 21:32:31 +02:00
jimtngandGitHub eccde15192 Check for duplicate tags in SemanticTags.csv (#4702)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-04-05 17:44:28 +02:00
jimtngandGitHub 0bc2967da6 Sort SemanticTags.csv and group children under their parent tag (#4700)
* Sort SemanticTags.csv and group children under their parent tag
* sort xsd tag entries alphabetically
* sort DefaultSemanticTagProvider.java
* change the order to Location, Point, Property, Equipment
* remove duplicate tilt property
* revert DefaultSemanticTagProvider sorting
* add back Tilt Property, remove Tilt Point instead

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-04-05 16:49:55 +02:00
jimtngandGitHub 089961ac43 Allow multiple default values to contain an escaped comma (#4657)
* Allow multiple default values to contain an escaped comma

An comma character can be a part of the value when escaped with a backslash.
The backslash will be removed, i.e. `\,` -> `,`

To have an actual backslash and comma, add an extra backslash, i.e. `\\,` -> `\,`

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-04-03 21:34:27 +02:00
jimtngandGitHub 5fcee65236 Generate valid tags in thing-description-1.0.0.xsd (#4626)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-04-03 21:17:59 +02:00
jimtngandGitHub e3166cdab8 Create static constants for the default semantic tags (#4622)
* Create static constants for the default semantic tags

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-04-02 22:03:33 +02:00
jimtngandGitHub 9cd72164f5 Add lastStateUpdate, lastStateChange to ItemStateUpdatedEvent/ItemStateChangedEvent (#4606)
* Add `lastStateUpdate`, `lastStateChange` to `ItemStateUpdatedEvent`/`ItemStateChangedEvent`

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-04-02 21:59:16 +02:00
jimtngandGitHub 40d9a67e53 Log warnings when an Item's semantic structure is incorrect (#4613)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-04-02 21:54:40 +02:00
jimtngandGitHub 0e4a064d82 Allow using '*' and '?' as wildcards in Item state and command triggers (#4646)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-04-02 21:19:19 +02:00
jimtngandGitHub a670ddf2ef Fix i18n:generate-default-translations on add-on config other than bindings (#4650)
* Fix i18n:generate-default-translations on add-on config other than bindings
* translate all xml config descriptions

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-04-02 20:03:37 +02:00
jimtngandGitHub 04b3890d03 Allow startlevel to increase past 80 when a bridge is disabled (#4640)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-04-02 01:06:21 +02:00
jimtngandGitHub 184be289ca Add Airflow, Application, Channel, and Mode Semantic Properties (#4616)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-03-23 09:07:18 +01:00
jimtngandGitHub 0cf3e2963a Provide Karaf Session object inside OSGiConsole (#4635)
The Karaf `Session` enables ConsoleCommandExtensions to prompt for user input.

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-03-23 00:26:59 +01:00
jimtngandGitHub 41720b4f0c Fix a minor typo in ProfileCallbackImpl.java (#4644)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-03-14 17:39:39 +01:00
jimtngandGitHub e16b52d601 Upgrade Groovy to 3.0.23 (#4621)
* Upgrade Groovy to 3.0.23
* Update header generation to match the new format

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-02-26 18:54:32 +01:00
jimtngandGitHub 3458e9fba3 Add a quicker build instruction in README (#4609)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-02-18 18:27:11 +01:00
jimtngandGitHub 3b3fd3aa53 Add getLastStateChange, getLastStateUpdate, and getLastState to GenericItem (#4351)
* Add `getLastChange`, `getLastUpdate`, and `getPreviousState` to GenericItem
* Rename to getLastStateChange, getLastStateUpdate, getLastState

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-02-15 19:21:43 +01:00
jimtngandGitHub 3a30c7a44a Call unregisterCommand instead of registerCommand (#4596)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-02-15 17:29:44 +01:00
jimtngandGitHub 7177759791 Add IntervalConditionHandler (#4583)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-02-15 16:53:22 +01:00
jimtngandGitHub aa6d82e786 Revert "Fix addon name localisation before installation (#3908)" (#4573)
* Revert "Fix addon name localisation before installation (#3908)"

This reverts commit 708a954081
but with some modifications

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-02-15 16:32:17 +01:00
jimtngandGitHub 229d87263f Improve cron exception handling (#4553)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-01-11 09:14:54 +01:00
jimtngandGitHub a7b8c1a9b3 Prevent infinite loop in CronAdjuster with invalid date combinations (#4548)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2025-01-11 00:39:20 +01:00
jimtngandGitHub 321d3a5f04 Add sharedCache and privateCache to file-based RulesDSL (#4525)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-12-31 12:39:24 +01:00
jimtngandGitHub 8b68aa7441 Clean up arguments after executing Script Transformation (#4524)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-12-28 12:28:36 +01:00
jimtngandGitHub 3a79871072 Ensure timeseries entries have unique timestamps (#4397)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-10-02 00:07:55 +02:00
jimtngandGitHub 3c7b4b89b1 Add offset and timeOnly config in TimerEvent payload (#4378)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-09-15 21:20:29 +02:00
jimtngandGitHub bcda209ec9 RulesDSL: add DateTimeTrigger offset (#4272)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-09-10 21:20:57 +02:00
jimtngandGitHub 83b069d970 Revert "Insert context keys before compiling UI scripts (#4372)" (#4373)
This reverts commit 6e6f000800.

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-09-10 07:52:16 +02:00
jimtngandGitHub 6e6f000800 Insert context keys before compiling UI scripts (#4372)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-09-09 19:23:57 +02:00
jimtngandGitHub 69dc83237b Support offset in DateTimeTrigger (#4271)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-09-08 07:54:45 +02:00
jimtngandGitHub 5cf91cde1b Filter out blank lines and comments in a multi-line transformations (#4357)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-09-07 06:59:22 +02:00
jimtngandGitHub 1145613cba Support space-separated date/time format for DateTimeType (#4370)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-09-06 22:44:20 +02:00
jimtngandGitHub 72753be8cc Add time series support for script profile (#4365)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-08-31 11:49:46 +02:00
jimtngandGitHub 8a59844451 Add isTransform(), isEmpty() and isPresent() to ChannelTransformation (#4355)
* Add isEmpty() and isPresent() to ChannelTransformation
* Add isValidTransformation helper method

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-08-30 18:47:55 +02:00
jimtngandGitHub 66d55f77b5 Make DateTimeType Comparable (#4364)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-08-28 18:11:02 +02:00
jimtngandGitHub 8d54ccefef Add MEDIAN group function (#4344)
* Add MEDIAN group function

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-08-24 14:39:39 +02:00
jimtngandGitHub e8e55443c3 Add tests for null-returning transformations in ChannelTransformationTest (#4356)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-08-24 10:59:21 +02:00
jimtngandGitHub 17ad247519 Rename parameter of ChannelHandler (#4361)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-08-24 10:58:19 +02:00
jimtngandGitHub b8e0f94cb0 Add missing ScriptProfile parameter options (#4360)
for commandFromItemScript and stateFromItemScript

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-08-21 19:42:12 +02:00
jimtngandGitHub 506ccd4f4d Support channel transformation chaining with a list (#4353)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-08-18 18:36:36 +02:00
jimtngandGitHub bb2a2d10dc Support channel transformations with parentheses (#4352)
* Support channel transformations with parentheses

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-08-18 17:05:32 +02:00
jimtngandGitHub cb19001af0 Clean up removed links in GenericItemChannelLinkProvider (#4326)
* Clean up removed links in GenericItemChannelLinkProvider
* defer processing until stopConfigurationUpdate is called

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-07-27 18:38:06 +02:00
jimtngandGitHub 8cc267afd8 Fix Timer.isRunning() returning true immediately after rescheduling (#4313)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-07-13 15:10:31 +02:00
jimtngandGitHub ea7d61b199 PersistenceExtensions: fix DateTimeException when persisting an empty TimeSeries (#4303)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-07-08 19:53:01 +02:00
jimtngandGitHub 9b39f625e8 RulesDSL: add triggeringGroup and triggeringGroupName to rule context (#4273)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-06-23 18:40:17 +02:00
jimtngandGitHub 6eeb9dd7c9 Fix a typo in PersistenceExtensions log message (#4221)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-05-07 08:09:36 +02:00
jimtngandGitHub 456d5d3dd0 Fix textual things not updating on the first change (#4219)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-05-06 09:24:04 +02:00
jimtngandGitHub eb2339907f Fix change detection for textual things (#4076)
* Don't update unchanged things in .things file

There were two problems:
- The old things weren't removed, resulting in accumulation of duplicate things and comparing the new one against the old one resulting in erroneous update
-  Numeric values (usually entered as integer) in a newly loaded Channel Configuration properties are stored as BigDecimal with Scale 0, but subsequent normalization changed it to scale 1. This made equals() return false when it shouldn't. This leads to calling notifyListenersAboutUpdatedElement unnecessarily.

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-05-02 11:41:53 +02:00
jimtngandGitHub fc2d5375b7 Upgrade Tool: Fix NPE (#4128) 2024-03-04 07:19:51 +01:00
jimtngandGitHub 97d64a156b Add numericState and unit to StateDTO (#4123)
* Add numericState to StateDTO

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-03-01 18:43:02 +01:00
jimtngandGitHub b64e9723a9 Include StartLevelEvent in start level triggers (#4093)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-02-18 22:23:27 +01:00
jimtngandGitHub 0efaf23d4e Fix the recursive group membership check (#4088)
Allow a group to be a member of its direct parent and also its parent's ancestors without raising an error.

Looping membership is still detected and prevented as before, thus Stack Overflow is still avoided.

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-02-12 17:21:55 +01:00
jimtngandGitHub c929e7dfe2 Fix reloading channel config changes in .items file (#4075)
* Apply channel config changes in .items file

Changes in channel config weren't applied because ItemChannelLink.equals() include the link configurations in the comparison. This caused the new link not being found in the set lookup, which leads to erroneously calling notifyListenersAboutAddedElement, when it should've called notifyListenersAboutUpdatedElement instead.

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-02-04 11:23:10 +01:00
jimtngandGitHub 99bb994b36 Suppress SseItemStates warnings during startup (#3774)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2023-11-06 21:36:21 -08:00
jimtngandGitHub e9d969c31d Fix QuantityType UNIT_PATTERN regex (#3841)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2023-10-10 10:08:45 +02:00
jimtngandGitHub 304453ec58 Make DecimalType, QuantityType, PercentType accept lowercased exponent notation (#3834)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2023-10-09 10:59:25 +02:00
jimtngandGitHub 0d355fbbc7 Make QuantityType.toUnitRelative accept a String (#3802)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2023-10-06 20:42:50 +02:00
jimtngandGitHub 6bb15b806c Add getAllStatesSince() and getAllStatesBetween() to PersistenceExtensions (#3466)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2023-05-27 21:33:48 +02:00
jimtngandGitHub 58df2b272d Remove GenericScriptEngineFactory (#3550)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2023-04-30 18:38:25 +02:00
jimtngandGitHub bff92e0349 Improve log message to identify profile's link (#3568) 2023-04-22 08:18:49 +02:00
jimtngandGitHub bc922022c3 [REST] List semantic tags (#3559)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2023-04-20 22:20:30 +02:00
jimtngandGitHub 7a9b76dfdf Fix division-by-zero error in Persistence average (#3556)
* Fix division-by-zero error in Persistence average
* Add test

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2023-04-15 16:03:45 +02:00
jimtngandGitHub 9e334497f9 Add methods to get Semantic tag synonyms and description (#3553)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2023-04-15 11:24:12 +02:00
jimtngandGitHub 3fc4a4c9d2 Improve logging to identify the offending link (#3554)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2023-04-15 09:04:37 +02:00
jimtngandGitHub 5d46377d22 Fix IndexOutOfBoundsException in ScriptEngineFactoryHelper (#3549)
* Fix IndexOutOfBoundsException in ScriptEngineFactoryHelper

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2023-04-14 18:39:20 +02:00
jimtngandGitHub 4f2af88e73 Add dynamic creation of semantic tags (#3519)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2023-04-14 14:35:43 +02:00
fbaf992666 Add dynamic scripting-language transformation service (#3487)
* Add dynamic scripting language transformation service

This replaced SCRIPT transformation with one specific to each language

e.g. JS, RB, GROOVY, etc.

Co-authored-by: Jan N. Klug <github@klug.nrw>
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2023-04-12 21:56:06 +02:00
jimtngandGitHub a39beed8dc EventLogger minor refactor (#3523)
* EventLogger minor refactor

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>

* Fix null check

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>

---------

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2023-04-07 19:47:01 +02:00
jimtngandGitHub 003635dbfa Fix Semantics default synonyms (#3511)
Fix incorrect Property id

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2023-04-01 09:32:12 +02:00
jimtngandGitHub c8cc05d24b [REST] Sort profile-type resources by their label (#3491)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2023-03-29 08:49:04 +02:00
jimtngandGitHub 30bbc95506 Clarify the script profile config description (#3506)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2023-03-29 08:41:38 +02:00
jimtngandGitHub cb38d19360 Fix variable binding in ScriptTransformationService (#3464)
by setting all attributes before compiling

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2023-03-19 20:05:49 +01:00