Robert von Burg
05a1b8ab22
[New] Added .getRealm(), .getEmail(), .getLocator() on Certificate, User, UserRep
2019-03-11 13:11:53 +01:00
Robert von Burg
33cfc9b9d7
[Project] Added missing secret keys
2019-03-09 20:05:41 +01:00
Robert von Burg
04c5263eeb
[Major] Added request source for REST calls
2019-03-09 19:38:30 +01:00
Robert von Burg
5520180254
[New] New PrivilegeModelException sub class of PrivilegeException for REST
2019-03-07 14:27:42 +01:00
Robert von Burg
0b4e2e6e40
[New] Added ValueSearch.search(Stream)
2019-03-05 17:59:17 +01:00
Robert von Burg
68e06af486
[New] Added new SearchBuilder.buildSimpleValueSearch()
2019-03-05 17:58:51 +01:00
Robert von Burg
45189a5bc3
[Major] Extended StrolchDao with paging feature
2019-03-05 17:57:59 +01:00
Robert von Burg
1e1ac785ea
[New] Added NamedThreadPoolFactory
2019-02-06 14:33:45 +01:00
Robert von Burg
8c4a8b77f1
[Fix] Fixed calling tx.addOrUpdate() after tx.remove()
2019-01-30 16:37:03 +01:00
Robert von Burg
a85fa26b5e
[New] Added StrolchTransaction.addOrUpdate() methods
2019-01-23 18:48:11 +01:00
Robert von Burg
8e0c2e6412
[Fix] Don't release locks a second time
2019-01-17 16:50:56 +01:00
Robert von Burg
81de2b94e4
[Fix] Added proper privilege validation for StrolchJob
2019-01-17 13:57:26 +01:00
Robert von Burg
d0751345ff
[New] Added ReloadPoliciesJob
2019-01-17 09:13:12 +01:00
Robert von Burg
8e3b22b3e3
[New] Added PolicyHandler.isPolicyDefAvailable()
2019-01-16 17:25:57 +01:00
Robert von Burg
37fb641892
[New] Added ValueSearch API for non-strolch object
2019-01-14 14:33:06 +01:00
Robert von Burg
292db1b4f0
[Major] Added has* methods in privilege validation
2019-01-10 16:20:40 +01:00
Robert von Burg
b3c936c0b2
[Minor] Allow Collection in StrolchSearch.search(Collection)
2019-01-08 11:16:27 +01:00
Robert von Burg
3bbfcab345
[New] Added StrolchTransaction.assertHasRole() and .assertHasAnyRole()
2019-01-07 13:56:35 +01:00
Robert von Burg
b0f85ed76e
[New] Added simple constructor for StrolchJob
2018-12-18 14:32:12 +01:00
Robert von Burg
21c414ab00
[Major] runAs*() now throws Exception
2018-12-18 14:30:37 +01:00
Robert von Burg
e72ad04805
[Minor] Better exception message on CollectionsHelper.singletonCollector()
2018-12-07 11:38:39 +01:00
Robert von Burg
b0e5739034
[New] Added ComponentContainer.runAsAgent() and .runAsAgentWithResult()
2018-12-05 15:49:12 +01:00
Robert von Burg
301c7bf785
[New] Added SearchResult.toSingleton() for optional result
2018-12-05 15:48:21 +01:00
Robert von Burg
55b762f2f1
[Minor] Move RootElementSearchResult.toSingleton() to super class SearchResult
2018-12-04 11:17:45 +01:00
Robert von Burg
790f7a0415
[New] added RootElementSearchResult.toSingleton()
2018-12-03 14:20:25 +01:00
Robert von Burg
cb633081eb
[Minor] Keep minimum thread pool size at 4
2018-11-22 23:24:36 +01:00
Robert von Burg
941641f357
[New] Added pruning of old Locator locks
2018-11-21 12:47:26 +01:00
Robert von Burg
3e71c6d5b5
[Minor] keep scheduled thread pool as small as possible if idle
2018-11-20 17:43:39 +01:00
Robert von Burg
09bcdfd772
[Minor] Added simpler constructor to Command class
2018-11-17 16:49:47 +01:00
Robert von Burg
8dcc6c310d
[Fix] schedule StrolchJob after running now
2018-11-14 14:20:00 +01:00
Robert von Burg
7c778d334a
[New] Allow to search activities and order by state in inspector
2018-11-14 13:43:41 +01:00
Robert von Burg
84cf1471ea
[New] Added privileges for viewable reports
2018-11-08 10:48:23 +01:00
Robert von Burg
02b959ab77
[New] Added ?:<paramId>:<value> search predicate to SearchBuilder
2018-11-07 14:03:11 +01:00
Robert von Burg
3908d30400
[New] Added ?:<paramId>:<value> search predicate to SearchBuilder
2018-11-07 13:55:30 +01:00
Robert von Burg
24f8296006
[Fix] Fix inspector search
...
- remove param: prefix
- search empty parameters
- allow to prefix query string with one of: & and | or
- allow to prefix search parts with: !
Now you can do the following search:
or relations:person:4 !parameters:status:productMissing
to find all elements where the person parameters contains the value 5 and the status parameter is not equal to productMissing
or you can go and search for empty values:
relations:person:
2018-11-06 10:08:04 +01:00
Robert von Burg
793f750103
[Fix] Update version of updated elements
2018-10-30 14:39:43 +01:00
Robert von Burg
aa3699326b
[Fix] Fixed version issues
2018-10-29 15:44:55 +01:00
Robert von Burg
7084467104
[New] Added updated to version
2018-10-29 14:37:38 +01:00
Robert von Burg
c64fdf81d7
[Fix] Refactored Search API to auto cast
2018-10-25 11:22:26 +02:00
Robert von Burg
89b3612c03
[New] added StrolchComponent.openTx(Certificate, String) and
...
StrolchComponent.openTx(String, Certificate, String)
2018-10-22 09:20:03 +02:00
Robert von Burg
16696e5202
[Fix] Ignore OperationsLog.addMessage if not yet initialized
2018-10-16 19:59:06 +02:00
Robert von Burg
bd1b7090cb
[Minor] added LogMessage for agent start and stop
2018-10-15 15:17:42 +02:00
Robert von Burg
e82767b079
[Minor] added LogMessage for agent start and stop
2018-10-15 15:00:29 +02:00
Robert von Burg
91dee21300
[Minor] added LogMessage for agent start and stop
2018-10-15 14:56:55 +02:00
Robert von Burg
2286752c57
[Fix] Fixed pruning of messages in OperationsLog
2018-10-15 14:37:27 +02:00
Robert von Burg
cee1ac4f82
[New] added StrolchAgent.getSingleThreadExecutor()
2018-10-15 14:36:56 +02:00
Robert von Burg
21aa92182c
[Minor] added LogMessage for agent start and stop
2018-10-15 13:12:17 +02:00
Robert von Burg
ced8c42c57
[Major] Implemented persisting of OperationsLog
2018-10-15 11:06:45 +02:00
Robert von Burg
d7b4bef70c
[Minor] check if refP is empty, and stop early
2018-10-05 11:45:08 +02:00
Robert von Burg
b6819c4b47
[Major] Removed serializable and reformatted all code
2018-10-05 09:17:13 +02:00
Robert von Burg
b02731ac74
[New] New method tx.findParameterOnHierarchy()
2018-10-04 19:04:36 +02:00
Robert von Burg
6e87ffc078
[Minor] small log fix when throwing exception on missing elements
2018-09-27 16:18:35 +02:00
Robert von Burg
62c206bfd0
[Minor] small log fix when throwing exception on missing elements
2018-09-27 15:11:26 +02:00
Robert von Burg
9566c89b2c
[Minor] Sort by name using lower case
2018-09-14 14:10:10 +02:00
Robert von Burg
027613b1a1
[New] Added missing listContains() in SearchPredicates
2018-09-13 21:02:26 +02:00
Robert von Burg
ba13b981c1
[New] added StrolchJobsHandler.register(StrolchJob) method
2018-09-11 12:48:43 +02:00
Robert von Burg
5736cead97
[New] added duration and running flag to StrolchJob
2018-09-11 12:18:51 +02:00
Robert von Burg
b0231cdf91
[New] Added last execution to StrolchJob
2018-09-10 18:29:19 +02:00
Robert von Burg
00ade23b4d
[New] Added JobMode to StrolchJob for Manual, Once and Recurring
2018-09-10 17:51:35 +02:00
Robert von Burg
fa39ad7386
[Major] Refactored StrolchJob for calling manually
2018-09-06 15:23:34 +02:00
Reto Breitenmoser
1f780374b9
[New] added listContains predicate
2018-08-31 14:45:56 +02:00
Robert von Burg
458706d8fc
[Fix] Allow to flush TX while doing commands
2018-08-27 14:24:58 +02:00
Robert von Burg
4ffd92e0a7
[New] Allow to set input for strolch search
2018-08-20 16:35:10 +02:00
Robert von Burg
178ad78dea
[Fix] Fixed searching StringListParameter with equals and contains ignoreCase
2018-08-17 11:32:10 +02:00
Robert von Burg
30421d606e
[Fix] Fixed searching in inspector
2018-08-08 16:25:24 +02:00
Robert von Burg
a1c1e60306
[Fix] Fixed i18n property
2018-08-07 14:04:26 +02:00
Robert von Burg
f1f689b8ca
[New] Added exception to OperationsLog
2018-08-07 13:54:17 +02:00
Robert von Burg
fb795be104
[Minor] Using action as locator in AbstractTransaction for operations log
2018-08-03 22:14:34 +02:00
Robert von Burg
f6349dde10
[Minor] Logging of exception in StrolchSystemActionWithResult
2018-08-03 22:14:12 +02:00
Robert von Burg
2eaca7d7d8
[Minor] Changed SearchBuilder to AND not OR query
2018-08-03 15:50:44 +02:00
Robert von Burg
e644b43e2c
[Major] Refactored Operations Log
2018-08-03 14:13:46 +02:00
Robert von Burg
42dc80592d
[Major] StrolchQuery now uses streams internally
2018-07-12 14:32:26 +02:00
Robert von Burg
a16cee1500
[Major] Added JSON data type for persisting in PostgreSQL
2018-07-02 13:18:10 +02:00
Robert von Burg
352220702f
[Minor] add documentation about custom search expression on website
2018-06-29 13:59:27 +02:00
Robert von Burg
4c7be4cbbf
[Project] Updated Strolch model files to include schema definition
2018-06-26 18:13:59 +02:00
Robert von Burg
1c2d048c45
[Major] Only use tx.get*Map() if you really need it!
2018-06-22 13:14:14 +02:00
Robert von Burg
bbf021f73b
[Fix] Fixed bug where changed element is not returned in streams
2018-06-22 11:38:24 +02:00
Robert von Burg
acf3b3ff6c
[Minor] Added JavaDoc to search API
2018-06-22 11:11:15 +02:00
Robert von Burg
d3375455d6
[Minor] catch exception on stop in StrolchComponents
2018-06-21 17:54:02 +02:00
Robert von Burg
81a080ebd1
[Minor] Change logger in ComponentContainerImpl.java
2018-06-20 13:42:41 +02:00
Robert von Burg
6b9d168a0b
[Project] Logging exceptions in DefaultPolicyHandler
2018-06-18 19:39:18 +02:00
Robert von Burg
0c6a8b9ba0
Revert "[Minor] Throw exception if policy is missing proper constructor"
...
This reverts commit abf508c
2018-06-18 18:50:14 +02:00
Robert von Burg
abf508cc6b
[Minor] Throw exception if policy is missing proper constructor
2018-06-18 18:46:44 +02:00
Robert von Burg
7b2ab07ada
[Minor] Add tests for ListParameter isIn() search
2018-06-18 11:09:44 +02:00
Reto Breitenmoser
2ca0d91cd3
[Minor] check for collections on both side
2018-06-17 20:55:28 +02:00
Robert von Burg
ac7ef5d1fc
[Major] Refactored StrolchJob to handle exceptions and log execution
2018-05-26 13:21:50 +02:00
Robert von Burg
c321712150
[Major] Refactored PosgreSQL persistence for easier extension
2018-05-26 13:21:22 +02:00
Robert von Burg
f8e9c5321c
[Minor] Better logging in DefaultLockHandler
2018-05-18 08:26:50 +02:00
Robert von Burg
710a989ce5
[Fix] throw exception after logging in StrolchSystemAction
2018-05-16 17:52:44 +02:00
Robert von Burg
1e616f0616
[Major] Refactored searching to allow for coercing of left side
2018-04-20 20:49:31 +02:00
Robert von Burg
7deafa533d
[New] Added isIn() as new search predicate
2018-04-19 18:11:31 +02:00
Robert von Burg
164fc0ac80
[New] Added array as AND searching in contains*()
2018-04-19 12:21:48 +02:00
Robert von Burg
1729460784
[Fix] Set new date on Order template in CachedOrderMap
2018-04-18 17:15:45 +02:00
Robert von Burg
f8ea8998b1
[Minor] Fixed JavaDoc due to doclint errors
2018-04-04 16:02:45 +02:00
Robert von Burg
7bf427edee
[Fix] Fix broken Cached mode due to change in TransientElementMap
2018-03-27 17:20:29 +02:00
Robert von Burg
f7e083b794
[Fix] Fix broken Cached mode due to change in TransientElementMap
2018-03-27 16:51:33 +02:00
Robert von Burg
825f8de64d
[Major] simplified API for fluent API in StrolchSearch
...
No matter how hard you try, you can't have an API be good the first round
2018-03-27 14:58:54 +02:00
Robert von Burg
5befc47268
[Minor] Code cleanup in TransientElementMap
2018-03-27 14:14:59 +02:00
Robert von Burg
0c61d563f5
[Minor] Add forEach method on SearchResult
2018-03-26 16:30:39 +02:00
Robert von Burg
77ea06d781
[Major] simplified API for fluent API in StrolchSearch
2018-03-26 14:49:05 +02:00
Robert von Burg
a53c9a0e46
[Major] simplified API for fluent API in StrolchSearch
2018-03-26 14:48:12 +02:00
Robert von Burg
277a57dda3
[Minor] Cache PrivilegeContext in StrolchTransaction
2018-03-23 17:11:35 +01:00
Robert von Burg
2907df815a
[Project] Added privilege StrolchSearch
2018-03-20 07:46:50 +01:00
Robert von Burg
86b65f8697
[Major] Removed petitparser, using StrolchSearch in REST API
2018-03-20 07:46:28 +01:00
Robert von Burg
fee696a5ef
[Fix] Fixed compile errors
2018-03-14 10:10:01 +01:00
Robert von Burg
73744d0931
[Fix] Fixed compile errors
2018-03-14 09:33:50 +01:00
Robert von Burg
4689af6ee0
[Major] Implemented GenericSearch for internal use
2018-03-14 09:08:33 +01:00
Robert von Burg
50fbafde45
[Major] Implemented GenericSearch for internal use
2018-03-14 09:04:07 +01:00
Robert von Burg
9bd0d43f50
[Major] Better generics support in Search API, includin ExpressionBuilder
2018-03-14 08:09:29 +01:00
Robert von Burg
131b4bdf83
[Fix] Fixed broken test
2018-03-13 22:09:30 +01:00
Robert von Burg
75d79544af
[Major] Implemented new search API using Streams
2018-03-13 17:51:24 +01:00
Robert von Burg
d3b5fa5128
[Major] Moved query classes to li.strolch.agent
2018-03-12 18:13:46 +01:00
Robert von Burg
44bb21a43f
[Fix] DefaultLockHandler uses ConcurrentHashMap
2018-03-10 15:17:30 +01:00
Robert von Burg
7e30e0c78d
[Minor] Use tx ind InMemoryElementListener instead of ElementMaps
2018-03-09 12:45:23 +01:00
Robert von Burg
42c500d677
[Minor] clear cache when flushing
2018-03-09 10:49:00 +01:00
Robert von Burg
5fcf08e4eb
[New] Added tx.clearCache()
2018-03-09 10:27:28 +01:00
Robert von Burg
742e436a93
[Major] Implemented caching of data in AbstractTransaction
2018-03-08 18:07:11 +01:00
Robert von Burg
caeed3d670
[Minor] Fix in TransientElementMap.java
2018-03-08 18:07:11 +01:00
Robert von Burg
676bb9c11e
[Fix] Fixed broken tests
2018-02-28 09:04:49 +01:00
Robert von Burg
c66f7c2805
[Major] Implement StrolchElement.isReadOnly() and .setReadOnly()
...
Modifying a read only element causes an exception. Retrieving elements from the TX, or directly from the ElementMap returns a clone, so nothing changes there. But elements returned by a query will have their readOnly flag set, thus if these are modified, then they need to be cloned first.
2018-02-27 14:46:23 +01:00
Robert von Burg
315879ebe1
[Major] (Re-)Implemented XML Persistence
2018-02-27 09:00:26 +01:00
Robert von Burg
8e4a1c7ac3
[Fix] Set initial version when updating in TransientElementMap
2018-02-20 12:04:11 +01:00
Robert von Burg
a2a0645f3b
[Minor] Log exceptions of StrolchSystemAction
2018-02-20 09:47:35 +01:00
Robert von Burg
aac4ad2fd9
[Fix] Swapped enableDelayedObserverUpdates
2018-02-13 17:59:01 +01:00
Robert von Burg
f3ea159052
[Major] RIP transactional mode
2018-02-09 22:16:34 +01:00
Robert von Burg
0d42defd2a
[Major] Reworked visitors: StrolchElement.accept(StrolchElementVisitor)
2018-02-09 11:32:50 +01:00
Robert von Burg
a5f9d655b8
[Fix] Remove version of parsed files in inspector
2018-02-02 11:56:41 +01:00
Robert von Burg
ba115b70c4
[Fix] Remove version of parsed files in inspector
2018-02-02 11:50:00 +01:00
Robert von Burg
a7a33e4e0c
[Minor] logger change in TransientRealm
2018-01-10 18:27:05 +01:00
Robert von Burg
50c379d06d
[Major] Using executor pools with names in StrolchAgent
2017-12-19 14:54:57 +01:00
Robert von Burg
6328827f9e
[Minor] Fixed logging in CachedElementMap
2017-12-07 11:01:12 +01:00
Robert von Burg
04f4fed0ba
[New] Added toJson() to ServiceResult, ModelStatistics
2017-11-29 16:56:36 +01:00
Robert von Burg
2d60a352b4
[Fix] Fix not allow to re-add removed element with versioning enabled
2017-11-01 10:15:21 +01:00
Robert von Burg
49d5e41fe5
[Minor] Also log for which parameter the element was not found
2017-10-27 09:20:04 +02:00
Robert von Burg
d44da5b587
[New] Added StrolchEnum.keySet()
2017-10-25 09:41:07 +02:00
Reto Breitenmoser
b89aa885d4
[Minor] set new creation date for template orders
2017-10-21 21:04:19 +02:00
Robert von Burg
c0bf2ae428
[Major] Refactored GenericReport into Policies for extension
2017-10-18 13:11:39 +02:00
Robert von Burg
394c3735e3
[New] Added StrolchTransaction.getResourceFor(Action)
2017-10-12 16:12:39 +02:00
Robert von Burg
5c5a3afbbc
[Fix] re-run add model change commands in TX, as commands create new
2017-10-10 12:06:37 +02:00
Reto Breitenmoser
4adac09ab5
[Minor] set username from certificate
2017-10-09 21:44:49 +02:00
Reto Breitenmoser
283a78bdfa
[Minor] added authenticateSingleSignOn method
2017-10-08 21:19:30 +02:00
Robert von Burg
adf53dd49f
[Major] Implemented SingleSignOn facility for Privilege
2017-10-06 16:59:22 +02:00
Robert von Burg
4087608e1a
[Fix] Throw Exception on programmer mistake if no commitOnClose with +
2017-10-05 09:54:42 +02:00
Robert von Burg
45a385920d
[Fix] Fixed NPE in AbstractTransaction.needsCommit()
2017-10-04 14:27:13 +02:00
Robert von Burg
dad2f35b16
[Major] Multiple changes to StrolchTransaction:
...
New:
- needsCommit() -> return true if objects or commands are registered
- hasResource()
- hasOrder()
- hasActivity()
Changes:
- When tx.add(), update() or remove() is called, then get*Template(), or get*By() check the internal cache and thus e.g. a new resource is immediately available.
- the has*()-methods also check the internal cache, thus the need to get the underlying maps should now no longe be required in normal TX use.
2017-10-04 13:10:20 +02:00
Robert von Burg
2c5dddd893
[Major] rename add/update/remove methods in StrolchTransaction
2017-10-03 11:41:30 +02:00
Robert von Burg
90a81b6725
[Major] Rename DO_NOTHING as READ_ONLY in StrolchTransaction
2017-10-03 11:37:01 +02:00
Robert von Burg
84d3ca4666
[Minor] Some code cleanup for JDK 9
2017-09-29 16:21:21 +02:00
Robert von Burg
2cb799dfb4
[Major] Removed the need for javax.xml.bind.* imports. Using gson
2017-09-29 15:57:21 +02:00
Robert von Burg
76e7403974
[Project] Update all dependencies and plugin dependencies in pom.xml
2017-09-28 19:11:34 +02:00
Robert von Burg
4bcddc4e3b
[Major] Removed MainStarter.java as never used
2017-09-28 13:32:57 +02:00
Robert von Burg
592fce0e88
[Minor] tx.add*() -> remove check for existing. Need deeper fix
2017-09-27 20:52:10 +02:00
Robert von Burg
3310bb8766
[Minor] Fix compile warnings
2017-09-26 15:01:02 +02:00
Robert von Burg
1a2752039f
[Project] logback is now a compile time dependency
2017-09-25 12:17:16 +02:00
Reto Breitenmoser
361d52201f
[Project] added logback as compile dependency
2017-09-24 18:13:51 +02:00
Robert von Burg
fd4d428000
[New] It is now possible to override a logging
...
Just add a logback.xml file with the appropriate configuration in the
config folder and it will be loaded automatically.
2017-09-20 17:41:24 +02:00
Robert von Burg
060692a5c1
[Fix] Fixed RuntimeConfiguration.getConfigFile()
2017-09-20 17:40:34 +02:00
Robert von Burg
d0aa763f6a
[New] Added StrolchJob for recurring jobs
2017-09-15 10:35:37 +02:00
Robert von Burg
4153c9bb14
[Minor] Throw exception if forget to commit
2017-09-08 18:51:23 +02:00
Robert von Burg
97a0c076a4
[Minor] Throw exception if forget to commit
2017-09-08 18:48:53 +02:00
Robert von Burg
d2f19dca5d
[Minor] Small memory consumption improvement
2017-08-30 16:31:44 +02:00
Robert von Burg
5461d04f4e
[New] StrolchAgent now instantiates executor services for async work
2017-08-30 14:34:19 +02:00
Robert von Burg
9e47eb4070
[Fix] Fixed error due to objectFilter noch flushed
2017-08-24 16:44:09 +02:00
Robert von Burg
a27e9a2999
[Project] Set new snapshot version 1.6.0-SNAPSHOT
2017-08-24 14:11:29 +02:00
Robert von Burg
2863a5746b
[Fix] Fixed wrong filtering of resources
2017-08-18 09:46:54 +02:00
Robert von Burg
f2cdea3b7d
[Major] Changes in LogMessage, not using ID for equals
2017-08-16 11:23:44 +02:00
Robert von Burg
27b6beff03
[Fix] Use certificate username, if firstname and lastname null
...
- but only for agent users
2017-08-08 14:58:01 +02:00
Robert von Burg
c79f1d6ae6
[Fix] Returning 401 if session is invalid, 403 for privilege
2017-07-26 15:15:20 +02:00
Robert von Burg
e71b7b018b
[Major] Now exposing StrolchTransaction.assertHasPrivilege()
...
Enforcing privilege checking was a bad idea
2017-07-25 14:12:51 +02:00
Robert von Burg
1183000520
[Major] Implemented privilege checking for DAO
...
Now the PrivilegeConfig.xml must include:
<Policies>
<Policy name="ModelPrivilege"
class="li.strolch.runtime.privilege.ModelPrivilege" />
</Policies>
And PrivilegeRoles.xml must include:
<Role>
<Privilege name="GetResource" policy="ModelPrivilege">
<AllAllowed>true</AllAllowed>
</Privilege>
<Privilege name="GetOrder" policy="ModelPrivilege">
<AllAllowed>true</AllAllowed>
</Privilege>
<Privilege name="GetActivity" policy="ModelPrivilege">
<AllAllowed>true</AllAllowed>
</Privilege>
<Privilege name="AddResource" policy="ModelPrivilege">
<AllAllowed>true</AllAllowed>
</Privilege>
<Privilege name="AddOrder" policy="ModelPrivilege">
<AllAllowed>true</AllAllowed>
</Privilege>
<Privilege name="AddActivity" policy="ModelPrivilege">
<AllAllowed>true</AllAllowed>
</Privilege>
<Privilege name="UpdateResource" policy="ModelPrivilege">
<AllAllowed>true</AllAllowed>
</Privilege>
<Privilege name="UpdateOrder" policy="ModelPrivilege">
<AllAllowed>true</AllAllowed>
</Privilege>
<Privilege name="UpdateActivity" policy="ModelPrivilege">
<AllAllowed>true</AllAllowed>
</Privilege>
<Privilege name="RemoveResource" policy="ModelPrivilege">
<AllAllowed>true</AllAllowed>
</Privilege>
<Privilege name="RemoveOrder" policy="ModelPrivilege">
<AllAllowed>true</AllAllowed>
</Privilege>
<Privilege name="RemoveActivity" policy="ModelPrivilege">
<AllAllowed>true</AllAllowed>
</Privilege>
</Role>
2017-07-24 20:07:10 +02:00
Robert von Burg
c0cc6f57cb
[Major] Added add, update and remove methods to TX for elements
...
Moved add, update and remove commands to agent package
2017-07-24 13:51:17 +02:00
Robert von Burg
e459b561b8
[Major] LogMessage now has an ID which is used in OperationsLog
2017-06-15 13:33:14 +02:00
Robert von Burg
9b92d2fdbc
[Major] Refactored LogMessage to use ResourceBundle, instead of bundleId
2017-06-14 17:58:13 +02:00
Robert von Burg
08631498dc
[Major] Creating LogMessages for exceptions in Migrations, TX, Execution
2017-06-14 15:54:58 +02:00
Robert von Burg
0badb0fc01
[Minor] Log duration of state changes in components
2017-06-07 15:53:10 +02:00
Robert von Burg
4c9e66876a
[Major] Privilege passwords are now salted!
2017-05-22 14:37:48 +02:00
Robert von Burg
f87c42f399
[Project] switched tests to use logback-classic
2017-05-22 09:50:48 +02:00
Robert von Burg
d5514e772c
[Minor] Fixed deprecation in MainStarter
2017-05-18 15:02:58 +02:00
Robert von Burg
3622339896
[Major] Total refactoring of StrolchElementVisitor hierarchy
2017-05-17 09:20:27 +02:00
Robert von Burg
42c623cea6
[Major] Added Service.getArgumentInstance()
2017-05-16 15:18:38 +02:00
Robert von Burg
3f7c959865
[New] Added new EventCollectingObserverHandler
...
This observer handler is enabled with the additional boolean
configuration <enableDelayedObserverUpdates> and allows for less updates
to observers as they are cached
2017-05-16 14:29:59 +02:00
Robert von Burg
f1216f8825
[Major] Now throwing exception if TX is not committed but has commands
2017-05-16 14:28:32 +02:00
Robert von Burg
b68b74aade
[Fix] Fixed InMemoryTransaction marked committed on flush
2017-05-09 12:30:53 +02:00
Robert von Burg
b302c3f19e
[Fix] Fixed wrong exception message when asserting *-Ref parameters
2017-05-08 19:07:51 +02:00
Robert von Burg
96ed97132b
[New] StrolchTransaction.findElement() override for allowing null
2017-05-03 15:31:26 +02:00
Robert von Burg
22538dc7fa
[Major] New implementation of ObserverHandler for async updates
2017-05-02 16:07:55 +02:00
Robert von Burg
d1a392f025
[Major] Changed the behaviour of the EventBasedExecutionHandler
...
Now execution is always performed asynchronously for each Action and an
Activity should be added to the ExecutionHandler by calling
.addForExecution(), so that it is executed later even if an action
couldn't be executed to it being reserved (for instance).
2017-04-22 19:25:27 +02:00
Robert von Burg
c835ef2735
[Minor] Cleaned up use of new FileInputStream
2017-04-11 11:04:46 +02:00
Robert von Burg
6afba02c59
[Major] Implemented querying Activities by state and resolves #3
2017-04-06 10:02:04 +02:00
Robert von Burg
fbb2bc85db
[Minor] Small logging changes
2017-04-06 08:42:05 +02:00
Robert von Burg
801f792771
[Minor] Added StrolchComponent.openTx() methods
2017-03-29 14:14:25 +02:00
Robert von Burg
fa7309cb19
[New] Added StrolchElementQuery.internal()
2017-03-01 01:37:55 +01:00
Robert von Burg
89739717f2
[Major] Refactored LockHandler to use Locator
...
This is required because in certain instances it is important to lock
the object before retrieving it, otherwise if, for instance in
execution, we would need to fetch, lock and re-fetch to be sure we have
the latest object.
In moste of the Update*Commands this is not important as we perform a
list commit wins, where the client wants their version to be persisted.
Later a optimistic locking can be performed in that the given version
must be the latest, otherwise an exception would be thrown
2017-02-22 12:14:23 +01:00
Robert von Burg
5c8ccabd7f
[New] Added new ReservationExection to reserve resources
2017-02-20 17:32:44 +01:00
Robert von Burg
f086143e82
[Minor] JavaDoc updates for StrolchRealm
2017-02-17 17:37:41 +01:00
Robert von Burg
743709f103
[Fix] Added missing activity observer calls in AbstractTransaction
...
- also updated JavaDoc of ObserverHandler
- and only perform observer updates if element list are not empty
2017-02-17 17:26:37 +01:00
Robert von Burg
834fab7601
[New] Added StrolchConfiguration.getComponentConfiguration(Class)
2017-02-17 13:38:21 +01:00
Robert von Burg
3770e7b65c
[Minor] Give component name, when state change invalid
2017-02-17 13:37:35 +01:00
Robert von Burg
98532d2f88
[Major] locator for a timed state must have TimedState separator
2017-02-02 12:56:21 +01:00
Robert von Burg
5cdffcc450
[New] Implemented StrolchTransaction.setSuppressAuditsForAudits()
2017-01-31 11:24:27 +01:00
Robert von Burg
6bf3ee1509
[New] Added methods on StrolchTransaction and StrolchComponent
2017-01-23 16:42:08 +01:00
Robert von Burg
905db8c297
[Project] Set new version 1.5.0-SNAPSHOT
2016-11-03 12:07:38 +01:00
Robert von Burg
edcef3e755
Merged branch release/1.4.0 into develop
2016-11-03 11:51:11 +01:00
Robert von Burg
8fd4a5e311
[Fix] Fixed InMemoryElementListener because of versioning
2016-10-24 11:08:41 +02:00
Robert von Burg
f5fc938124
[Minor] Always log original exception if TX fails
2016-10-24 10:45:06 +02:00
Robert von Burg
ba476b2f68
[Minor] Added TODO about .getBy() which returns clone, and querying
2016-10-07 09:38:39 +02:00
Robert von Burg
b775c00f4d
[Major] Implemented ExecutionDuration and fixed deep execution
...
Using the DurationExecution:
<Activity Id="produceBicycle" Name="Activity" Type="ToStock"
TimeOrdering="Series">
<ParameterBag Name="objectives" Id="Objectives" Type="Objectives">
<Parameter Name="Duration" Id="duration" Value="PT0.01S"
Type="Duration" />
</ParameterBag>
<Action Id="produce" Name="Produce" ResourceId="bicycle"
ResourceType="Product" Type="Produce" />
</Activity>
IActivityElement now has a new method .findParameter() to search up the
activity hierarchy to find the element
2016-10-06 20:38:06 +02:00
Robert von Burg
48caa84903
[Major] Refactored SystemAction in privileges
...
Simplified the API, removed the privileged user - now always use the
agent system user for running system actions. One method has no return
value and one has a return value. Now it is easy to perform a system
action using:
runAsAgent(ctx -> {
// do work
});
String result = runAsAgentWithResult(ctx -> {
// do work
return "done";
});
// execute a SystemAction
runAsAgent(action);
// execute a SystemActionWithResult
String result = runAsAgentWithResult(actionWithResult);
2016-09-29 15:54:30 +02:00
Robert von Burg
dd227c65d0
[Major] Refactored SystemAction in privileges
...
Simplified the API, removed the privileged user - now always use the
agent system user for running system actions. One method has no return
value and one has a return value. Now it is easy to perform a system
action using:
runAsAgent(ctx -> {
// do work
});
String result = runAsAgentWithResult(ctx -> {
// do work
return "done";
});
// execute a SystemAction
runAsAgent(action);
// execute a SystemActionWithResult
String result = runAsAgentWithResult(actionWithResult);
2016-09-29 12:26:27 +02:00
Robert von Burg
d86e23b58f
[Fix] Fixed locator finding for Activity and Action
2016-09-23 13:29:02 +02:00
Robert von Burg
d413794213
[Major] Added Activity.TimeOrdering and updated Model XSD
2016-09-23 10:53:37 +02:00
Robert von Burg
5cbbfebf06
[Major] Services now consider Arg realm or user realm
2016-09-22 21:52:36 +02:00
Robert von Burg
dc0a34dc9d
[Project] Set new snapshot version 1.4.0-SNAPSHOT
2016-09-22 11:33:15 +02:00
Robert von Burg
bda16a0f80
[Project] Updated project for deployment to Maven Central
2016-09-22 09:37:55 +02:00
Robert von Burg
e3ea9fa159
[New] When retrieving new templates, then the type and ID is set auto
2016-09-21 15:47:18 +02:00
Robert von Burg
f8165208b1
[New] Added CRUD Services and Commands for Activities
2016-09-21 12:40:23 +02:00
Robert von Burg
657c47aacd
[New] Added get activity template methods on StrolchTransaction
2016-09-21 10:00:51 +02:00
Robert von Burg
55fb3a53c8
[Project] Extended documentation for:
...
- components
- queries
- realms
- services and commands
2016-09-15 18:37:15 +02:00
Robert von Burg
3f2c749659
[Minor] Added AbstractionConfiguration.getAsProperties()
2016-09-08 11:20:06 +02:00
Robert von Burg
bcc0bf4a10
[Major] Now users can reset their own passwords
...
- built in User Challenge feature (currently only console)
- extended REST API to allow user to initiate a challenge and then use
the challenge to authenticate for a one time change password session
2016-09-07 14:41:16 +02:00
Robert von Burg
41f5f22574
[Minor] Allow to override privilegeValue in StrolchElementQuery
...
use this together with the value "internal" to define queries as
internal, so you can make them executable without having to allow all
queries
2016-08-31 12:29:29 +02:00
Robert von Burg
acf3c12313
[Fix] Fixed errors due to new feature versioning
...
* When initializing the version was not set
* template copies had a version set
2016-08-20 18:24:21 +02:00
Robert von Burg
3474d9c890
[Minor] Updated JavaDoc of StrolchTransaction
2016-08-20 13:36:49 +02:00
Robert von Burg
b30b791460
[Minor] Added further methods for setting up a Strolch Agent
2016-08-11 10:51:58 +02:00
Robert von Burg
fa136c966c
[Minor] Privilege sessions should be stored in the temp path, not data
2016-08-11 10:51:30 +02:00
Robert von Burg
07daf34f86
[Major] Implemented opt-in versioning
...
- fixing remaining PostgreSQL DAO tests
2016-08-08 09:30:56 +02:00
Robert von Burg
8c4c8e539e
[Major] Implemented opt-in versioning
...
- Implemented marshalling of Version
- Added further tests for marshalled version
- added version in deep equals
- fixing further tests
2016-08-07 17:47:52 +02:00
Robert von Burg
26961b33cc
[Major] Implemented opt-in versioning
...
- adding versioning tests
- fixing broken tests
- implemented missing PostgreSQL DAO methods
2016-08-07 11:49:36 +02:00
Robert von Burg
9dc09515e9
[Major] Implemented opt-in versioning
...
Now all root elements have a version, and if the realm has versioning
enabled, then actions through the ElementMap lead to new versions being
created. There are also methods to revert/undo changes to an object.
Some tests are still failing, this will be fixed later
2016-08-05 20:24:23 +02:00
Robert von Burg
0703103d3b
[Major] Refactored object hierarchy and added version to objects
...
- New ParameterBagContainer interface for GroupedParameterizedElement
- StrolchRootElement extends ParameterBagContainer
- StrolchRootElement is now required in Queries, not StrolchElement
- New Version object on StrolchRootElement
2016-07-31 14:56:57 +02:00
Robert von Burg
612745098b
[Project] Set new SNAPSHOT version 1.3.0-SNAPSHOT
2016-07-05 09:57:44 +02:00
Robert von Burg
611a7c670a
[Project] Set new SNAPSHOT version 1.2.1-SNAPSHOT
2016-07-05 09:56:56 +02:00
Robert von Burg
e15b93e690
[Project] Set version 1.2.0
2016-07-05 09:52:34 +02:00
Robert von Burg
11ba7eb1de
[Major] Moved ch.eitchnet to li.strolch
2016-06-26 11:38:41 +02:00
Robert von Burg
3b7e5200fa
[Project] Removed parent
2016-06-24 18:05:45 +02:00
Robert von Burg
14197ed644
[Major] Cleaning up parents
2016-06-24 18:00:44 +02:00
Robert von Burg
c404c56b8a
[Major] Refactored startup so a Version must always be set
...
This implies having an appVersion.properties in each project which is an
actual Strolch app.
2016-04-06 21:25:59 +02:00
Robert von Burg
a74508ba12
[WIP] Added Resource table loading to planning web
2016-04-01 18:24:35 +02:00
Robert von Burg
0cadf66f3f
[Major] Refactored Privilege to use separate mode files
...
So now users and roles are in their own files. This makes it far easier
to add new privileges without needing to take care if the user changed
their data.
2016-02-28 19:54:17 +01:00
Robert von Burg
8344c75d39
[Major] Refactored setup of StrolchAgent using StrolchBootstrapper
...
Now instead of instantiating StrolchAgent and calling the method
setup(), instantiate StrolchBootstrapper and call one of the setup
methods which is appropriate to your use-case.
New feature is to use a StrolchBootstrap.xml to configure the
environment, root, config and data paths. Each can be defined by
environment and overridden, etc.
2016-02-27 13:32:18 +01:00
Robert von Burg
e2b3e5f7b0
[Minor] removed unnecessary else
2016-02-10 17:48:18 +01:00
Robert von Burg
3502a4adad
[Minor] Removed redundant types (diamond operator)
2016-02-10 17:46:50 +01:00
Robert von Burg
0473b472b3
[Major] Added PolicyContainer interface
...
Resource, Order, Activity and Action now implement this interface and Command.getPolicy() now takes a PolicyContainer as a parameter.
2016-02-10 17:37:50 +01:00
Robert von Burg
e6697eb9c2
[Fix] Fixing startup race condition on timeout of old sessions
2015-11-20 19:58:46 +01:00
Robert von Burg
292050a8f9
[New] Use InvalidCredentialsException
2015-10-23 18:22:05 +02:00
Robert von Burg
a22a6db408
[Fix] fixed compiler error
2015-10-16 17:59:20 +02:00
Robert von Burg
c37fd20efb
[Major] Added persisting and reloading of sessions
2015-10-16 17:21:49 +02:00
Robert von Burg
60300ab21d
[New] Added AbstractService.runPrivilege()
...
- This runs the given action as the system user 'privileged'
2015-10-08 22:09:45 +02:00
Robert von Burg
d8a68f26fd
[New] Added helper methods for running as a system user
2015-10-08 12:32:02 +02:00
Robert von Burg
b9f3e5d13c
[New] Added better exception messages
2015-10-08 12:30:52 +02:00