DigiMonitor: ItemWatcher
ItemWatcher logic has been rewritten for these purposes:
1) To provide unittestable code and in turn make sure functionality is tested thoroughly before release.
2) To provide better logging.
3) To fix specific issues with integer parsing which resulted in events not being handled and not correctly marked as failed either.
Nothing has changed regarding the configuration of ItemWatchers except an old bug which reversed 'greater than' and 'less than' when comparing values has finally been fixed.
In a users perspective the one and only major change from before to now is all ItemWatcher configurations are validated when starting up - even if they are not active. Any invalid configuration will result in an exception written to the digimonitor log in order to catch this at the earliest possible time.
How to access/use the new implementation?
DigiMonitor: ItemWatcher
As before access ItemWatcher configuration via System Tools → Workflow → ItemWatcher.
How the new implementation works?
How to configure the new implementation?
DigiMonitor: ItemWatcher
SpecialValidator: Isnumeric
This option did not work properly and has been fixed. Simply specify 'Isnumeric' (case insensitive) within an xml tag to validate that a value is numeric. Example: <AssetType>Isnumeric</AssetType>.
SpecialValidator: Len
This option did not work properly and has been fixed. Simply specify 'Len [operator] [value]'. Supported operators are '=', '>', '<' and '!' and obviously value needs to be an integer. Spaces between 'Len' and 'operator' or between 'operator' and 'value' are ignored. An error in this configuration is an exception to the general rule of validating all configuration at startup and will still be validated upon handling an event.
Example: <Description>Len!0</Description>
Example: <Description>Len > 0</Description> (notice that greater than and less than must be escaped as per xml standards)
ItemIdRequired
Working as before but important enough to reiterate. When set to true only events with a present and valid (>0) ItemId will be handled. It is not necessary to specify configuration for a value check ('Process only for changes to this item metadata field ID' and related configuration) but if this configuration is done it will only be performed when ItemIdRequired is true as looking up non-item metadata values is not supported.
Operator: Less than, Greater than
Now works as they should. In case this is used and has been reversed to do what is needed they will need to be set correctly.
Everything else
No changes except validation is done at startup.
DOs
DON'Ts
Tips & Tricks
What has been released?
What is in the next release?