Commit Graph

504 Commits

Author SHA1 Message Date
Robert von Burg c30c0279a1 [Fix] Fixed broken tests for OperationsLog 2020-05-27 10:58:21 +02:00
Robert von Burg 54e23f03e3 [Major] Moved LogMessage class to strolch-model project 2020-05-27 10:44:13 +02:00
Robert von Burg 76aff683ee [Major] I18nMessage and LogMessage refactorings, added state, JSON parsers, etc. 2020-05-26 17:37:57 +02:00
Robert von Burg 5e5289cbc8 [New] Implemented keepAlive of strolch sessions 2020-05-11 17:49:49 +02:00
Robert von Burg 1398bdd0e7 [Fix] Fixed reloading of jobs 2020-05-03 00:00:25 +02:00
Robert von Burg 1e3e97737b [New] StrolchJobs now have an ID as well as a name, and model can also specify a delay:
<Resource Id="reloadPolicies" Name="Reload Policies" Type="StrolchJob">
       <ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
           <Parameter Id="className" Name="Class Name" Type="String"
                   Value="li.strolch.policy.ReloadPoliciesJob"/>
           <Parameter Id="mode" Name="Job Mode" Type="String"
                   Interpretation="Enumeration" Uom="JobMode" Value="Recurring"/>
           <Parameter Id="startDate" Name="Job StartDate" Type="Date" Value="-"/>
           <Parameter Id="initialDelay" Name="Initial Delay" Type="Integer"
                   Interpretation="TimeUnit" Uom="MINUTES" Value="1"/>
           <Parameter Id="delay" Name="Delay" Type="Integer"
                   Interpretation="TimeUnit" Uom="HOURS" Value="1"/>
        </ParameterBag>
    </Resource>
2020-05-02 23:33:57 +02:00
Robert von Burg 8f0d264d8b [Fix] Fixed error logger in StrolchJob.schedule() 2020-05-02 22:43:31 +02:00
Robert von Burg 6d4ae7ae33 [Major] Use cron expressions to execute StrolchJobs
A strolch job can now be modelled in XML as follows:

   <Resource Id="reloadPolicies" Name="Reload Policies" Type="StrolchJob">
       <ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
           <Parameter Id="className" Name="Class Name" Type="String"
                   Value="li.strolch.policy.ReloadPoliciesJob"/>
           <Parameter Id="mode" Name="Job Mode" Type="String"
                   Interpretation="Enumeration" Uom="JobMode" Value="Recurring"/>
           <Parameter Id="startDate" Name="Job StartDate" Type="Date" Value="-"/>
           <Parameter Id="cron" Name="Cron" Type="String" Value="47 * * * *"/>
       </ParameterBag>
   </Resource>
2020-05-02 21:57:25 +02:00
Robert von Burg a389cc60f1 [Fix] Handle null param in AbstractTransaction.getResourceByRelation() and .getResourcesByRelation() 2020-04-27 11:52:50 +02:00
Robert von Burg 984f6bff41 [New] Requiring Usage when authenticating 2020-04-23 10:06:30 +02:00
Robert von Burg f6892ba964 [New] Added SearchExpressions.relation(String) 2020-04-22 11:12:33 +02:00
Robert von Burg d935a96b27 [Revert][Fix] Clone element in AbstractTransaction.findElement() but only if readonly 2020-04-20 09:30:41 +02:00
Robert von Burg 637ffd970c [Fix] Clone element in AbstractTransaction.findElement() but only if readonly 2020-04-20 08:49:57 +02:00
Robert von Burg b37c83eea1 [Fix] Clone element in AbstractTransaction.findElement() 2020-04-20 08:36:47 +02:00
Robert von Burg f04ee3df62 [Minor] New constants in StrolchConstants 2020-04-06 20:49:08 +02:00
Robert von Burg 5491f284a8 [New] Added ExpressionsSupport.relationParam(String) 2020-04-03 14:27:39 +02:00
Robert von Burg 8f181a0d88 [New] Extended OrderDao to allow a DateRange on queries 2020-03-26 14:37:37 +01:00
Robert von Burg 8aa1ad7977 [Minor] Code cleanup 2020-03-26 14:36:30 +01:00
Robert von Burg de361f7ca6 [New] Added StrolchComponent.runAsWithResult() 2020-03-24 13:23:55 +01:00
Robert von Burg 2332c6d0b3 [New] Added tx.getPolicyDef(PolicyDef, PolicyDef) 2020-03-20 14:57:31 +01:00
Robert von Burg c4ea66ee2e [New] Added OperationsLog.removeMessage() 2020-03-16 17:11:53 +01:00
Robert von Burg dd6c069eb5 [Fix] OperationsLog now gracefully handles failing to load 2020-03-12 10:14:42 +01:00
Robert von Burg 0417a4ebdf [Minor] Code cleanup in StrolchBootstrapper 2020-03-12 10:14:07 +01:00
Robert von Burg 11c2268b9a [Minor] Changed TX to not first validate all commands executing them, but validate then do each. 2020-03-04 11:08:58 +01:00
Robert von Burg 3bf912c94b [Minor] Code cleanup 2020-02-27 11:53:06 +01:00
Robert von Burg 56c948a361 [Major] Removed tx.setSuppressDoNothingLogging(), replaced with tx.silentThreshold() 2020-02-27 11:52:46 +01:00
Robert von Burg 6b7f118969 [New] Added StrolchComponent.hasComponent() 2020-02-26 09:25:28 +01:00
Robert von Burg e4f1a388f7 [Minor] Using ExecutorPool in StrolchAgent 2020-02-21 16:24:34 +01:00
Robert von Burg 8e629dfe82 [Minor] code cleanup 2020-02-20 17:58:20 +01:00
Robert von Burg 3475eefd09 [New] Added AbstractService.getArgOrUserRealm() 2020-02-20 17:58:05 +01:00
Robert von Burg dadc2a8cb8 [Major] Rewrote execution with controllers 2020-02-18 18:11:22 +01:00
Robert von Burg 1bda9df450 [WIP] Implementing Planning refactoring 2020-02-17 14:22:32 +01:00
Robert von Burg 47da3334b9 [New] Added tx.isUpdated() and tx.isRemoved() 2020-02-12 14:54:18 +01:00
Robert von Burg 1cf28eaa15 [Minor] Fixed logger in DefaultLockHandler 2020-02-04 20:45:00 +01:00
Robert von Burg 4638f44c91 [Minor] Change to single parameter StrolchPolicy constructor 2020-01-30 14:58:37 +01:00
Robert von Burg a048a7c76e [Minor] Change to single parameter StrolchPolicy constructor 2020-01-30 14:43:43 +01:00
Robert von Burg 10a7bc8280 [New] Added StrolchValueSearch 2020-01-20 16:43:34 +01:00
Robert von Burg 085335d393 [New] Added orderBy*() methods without need for BAG_PARAMETERS, or reverse flag 2020-01-20 11:18:21 +01:00
Robert von Burg 7ba2968923 [New] Added RootElementSearchResult.orderByName() without reverse boolean 2020-01-18 20:51:38 +01:00
Robert von Burg b0c78e692c [Minor] Added ExpressionsSupport.param(String) 2020-01-18 20:50:55 +01:00
Robert von Burg 93cebbde3b [New] Added ComponentConfiguration.getDataOrAbsoluteDir() 2020-01-09 11:57:14 +01:00
Robert von Burg fa389d7072 [Project] Updated .gitignore files 2020-01-08 09:18:37 +01:00
Robert von Burg ddbb7d65cb [New] Added overrides for ComponentConfiguration. getConfigFile() getDataDir() getDataFile() 2020-01-08 09:11:45 +01:00
Robert von Burg d6a8c99b3a [Minor] Extract Realm instantiation into method 2020-01-08 09:11:00 +01:00
Robert von Burg c96ca434be [Minor] Fixed code comment 2020-01-08 09:10:27 +01:00
Robert von Burg f53b548a5d [New] Allow to decode 0x values in IntegerParameter and int component props 2019-12-11 18:30:36 +01:00
Robert von Burg 793435454b [New] Only add Exception class name in messages if message is null 2019-12-11 18:27:50 +01:00
Robert von Burg 2ac8c288d3 [New] Allow to ignore StrolchPolicy.undo() by having empty default impl 2019-12-10 19:33:24 +01:00
Robert von Burg c9a1d63d62 [Fix] Removed defaultEncoding Component property, as not changeable after start 2019-11-20 22:16:45 +01:00
Reto Breitenmoser aa6209dcb7 [Minor] set default encoding to utf-8 2019-11-01 14:11:31 +01:00
Robert von Burg 07e7752c68 [New] Added SearchResult.isEmpty() and .isNotEmpty() 2019-10-21 16:59:10 +02:00
Robert von Burg 1deb0ec88e [Fix] Fixed broken tests 2019-10-18 18:39:03 +02:00
Robert von Burg e82167bb2a [New] Added OrderSearch.withState(State) 2019-10-18 17:27:48 +02:00
Robert von Burg 4b1a6c9fec [Minor] Added StrolchPolicy.getOrder(Action) 2019-10-18 17:27:25 +02:00
Robert von Burg c2ae2e88d1 [Minor] Don't double throw StrolchPolicyException if can't get policy 2019-10-18 17:26:52 +02:00
Robert von Burg 19765898d6 [Minor] Validating elements are not read-only when adding to TX 2019-10-18 17:26:21 +02:00
Robert von Burg b750df79d5 [New] Added StrolchTransaction.get*ByRelation() 2019-10-17 16:21:39 +02:00
Robert von Burg ffd51f3f8b [New] Added ServiceResult.i18n(I18nMessage) 2019-10-15 19:09:40 +02:00
Robert von Burg fc04530b41 [New] Added ExpressionsSupport.relationName() and .relationParam() 2019-10-15 16:22:04 +02:00
Robert von Burg d2bd1f415b [New] Added .where() overrides in ResourceSearch, OrderSearch and ActivitySearch 2019-10-11 18:29:41 +02:00
Robert von Burg faf9df3556 [Major] Fixed and renamed I18n* classes 2019-10-11 15:56:22 +02:00
Robert von Burg ff434cb285 [New] Added SearchResult.toMapOf* 2019-10-02 11:27:23 +02:00
Robert von Burg 9c08d87be2 [New] Using StrolchElementNotFoundException for missing elements, for 404 in REST 2019-09-27 09:59:44 +02:00
Robert von Burg f911f72bdd [Minor] Use ServiceResultState.EXCEPTION for ServiceResult.failed() 2019-09-27 09:58:31 +02:00
Robert von Burg aec29adcd1 [Minor] Optimizations, reduce memory and calls in Transaction and ObjectFilter 2019-09-25 11:13:45 +02:00
Robert von Burg 785616428a [New] Added openSystemUserContext() and validateSystemSession() 2019-09-25 11:11:46 +02:00
Robert von Burg 92319d61cd [Fix] Always set a message on ServiceResult.toJson() 2019-09-10 17:11:15 +02:00
Robert von Burg 14712c4556 [Minor] make sure startup success log ist last of all start logs 2019-09-10 13:21:36 +02:00
Robert von Burg 5360d4c0fb [Major] add subpath to StrolchBootstrapper.setupByUserDir() 2019-09-10 13:21:04 +02:00
Robert von Burg ed9506555d [Fix] Fixed type in StrolchBootstrapper 2019-09-09 17:03:09 +02:00
Robert von Burg 2697f5947c [Major] Removed ISO8061Duration, replace with PeriodDuration 2019-09-09 14:40:28 +02:00
Robert von Burg f64ffa7651 [Minor] better logging in DefaultLockHandler.lock() 2019-09-04 13:15:05 +02:00
Robert von Burg bdda43822d [New] added StrolchTransaction.getLocale() 2019-08-30 16:00:43 +02:00
Robert von Burg 1627a60b9a [New] Added further i18n props to ServiceResult.i18n() 2019-08-28 12:05:14 +02:00
Robert von Burg c822f00473 [Major] Added new service result EXCEPTION used when exception thrown 2019-08-28 12:04:46 +02:00
Robert von Burg 0db98efd9f [New] Extended ServiceResult to have an i18n part 2019-08-27 08:32:08 +02:00
Robert von Burg 44f7ed163e [New] Added I18n*Bundles for quick i18n 2019-08-27 08:30:53 +02:00
Robert von Burg a3f8c862c0 [Fix] Fixed tx.addOrUpdate() when already in filter 2019-08-22 16:16:49 +02:00
Robert von Burg 0bde117d41 [Minor] Handle empty/null value in SearchBuilder.buildSimpleValueSearch() 2019-07-12 12:42:44 +02:00
Robert von Burg b8678e72da [Minor] Show system encodings on startup 2019-07-11 11:46:27 +02:00
Robert von Burg d3dd56656f [Project] Use Locale.toLanguageTag() instead of toString() in RuntimeConfiguration constructor 2019-07-11 11:46:10 +02:00
Robert von Burg 5063c111ad [Fix] Make sure to store LogMessage date time with millisecond only, as is in DB 2019-07-03 20:37:23 +02:00
Robert von Burg acc2cd2fc0 [Fix] Add new line in DefaultLockHandler when logging locking 2019-07-03 19:34:44 +02:00
Robert von Burg 7c9d049d0d [Minor] Properly log stack trace in DefaultLockHandler 2019-06-27 10:57:03 +02:00
Robert von Burg 5c4a455665 [New] Added overloaded methods to open TX in AbstractService for readOnly flag 2019-06-19 13:12:52 +02:00
Robert von Burg f4d5c096cb [Minor] Log active threads on StrolchLockException 2019-06-18 12:40:33 +02:00
Robert von Burg b6e9fb6b99 [New] Added PolicyHandler.getPolicyTypes() and .getPolicyKeysByType() 2019-06-18 12:38:18 +02:00
Robert von Burg dacc890e8c [New] allow passing enums in SearchExpressions, converting to string internally 2019-06-14 13:23:40 +02:00
Robert von Burg 939a510bab [Minor] log locale and time zone after start 2019-06-05 14:46:07 +02:00
Robert von Burg 5d47fdb7ec [New] Allow to use constructor new StrolchPolicy(tx) 2019-05-30 17:15:19 +02:00
Robert von Burg 14f6fb47b6 [Minor] Added StrolchEnum.hasValue() 2019-05-30 15:34:09 +02:00
Robert von Burg 66121d4f0f [New] Adding environment, timezone and locale to version 2019-05-27 19:00:01 +02:00
Robert von Burg b654fd4bf7 [New] Added new ExpressionsSupport.predicate()
can be used as search.where(predicate(() -> someBool)
2019-05-21 14:14:15 +02:00
Robert von Burg 3a009a6857 [Minor] Sorting in DefaultEnumHandler by param index 2019-05-10 11:33:12 +02:00
Robert von Burg f1c0e22227 [Minor] Sorting in DefaultEnumHandler by param index 2019-05-10 11:08:42 +02:00
Robert von Burg d70a4e8f62 [New] Added ReloadPrivilegeHandlerJob 2019-05-07 14:05:37 +02:00
Robert von Burg 29302a79b0 [Fix] Handle missing version on versioned elements 2019-05-07 11:25:57 +02:00
Robert von Burg 321d63dfb3 [New] Simplified instantiating policy: tx.getPolicy(PolicyDef) 2019-04-26 15:49:59 +02:00
Robert von Burg 27c413afda [Fix] Throw exception if modifying a read-only TX 2019-04-23 17:20:48 +02:00
Robert von Burg 1ade695e9b [Minor] Made StrolchComponent.getConfiguration() public 2019-04-15 12:22:48 +02:00