Commit Graph

24 Commits

Author SHA1 Message Date
Avgustin Marinov
f6f62db0ad Refactor hawkbit core and security (#2833)
* Refactor hawkbit core and security

* improve access to the base core features - static
* thus easiear access
* and less boilerplate passing of instances

Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>

* Refactor context classes

* make JSON context serialization default

* AccessContext

* Split hawkbit-security-core to other modules and remove it

---------

Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2025-11-27 13:07:49 +02:00
Avgustin Marinov
98daa696de Refactor caches (#2775)
* added static usage of cache in order access it easier
* added mandatory (in hawkbit-core) registration - always tenant aware caches shall be used - hawkbit depends on it
* added per cache and tenant name configuration
* (not really realted to caches) but in order to be easier evicted entities after commit handlers are now statically accessed

Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2025-10-24 16:42:40 +03:00
Avgustin Marinov
2a636328a0 20250828 cleanup (#2639)
* Cleanup

* Refactor artifact management
2025-09-02 16:08:14 +03:00
Avgustin Marinov
6aa8ccaa9c Refactor DS Management (#2591)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2025-08-05 15:45:41 +03:00
Avgustin Marinov
2b66449ff1 Fine grained repository permissions (#2562)
1. Introduce @PrreAuthorize check based on hasPermission - allowing custom processing (compared with non-modifiable hasAuthority/Role processing)
2. Dedicated permissions could be implemented on management api level. Check is made by plugged in PermissionEvaluator
3. Thus common XXX_REPOSITORY permissions could differ for extending services
4. Change create/update entity builder pattern - not via EntityFactory but via clean static lombok based builders (with fine fluent api).
5. Implement abstract repository management jpa class that handles the boilerplate code from extending classes in single place consistently -> AbsreactJpaRepositoryManagement
6. Register management api-s as **Sevice**-s instead of **Bean**-s in order to make easier maintainable and get away from heavy argument forwading
7. Simplify custom hawkbit repository registration + adding proxy to handle exception mapping at lower level - thus not depending on Aspects for converting exceptions
8. Implemented general purpose 'copy' utility (ObjectCopyUtil) that using getter/setter patterns is able to copy (e.g. Create/Update) objects to other objects (e.g. JPA entity objects)
2025-07-28 14:57:33 +03:00
Avgustin Marinov
23fa4cdd56 Fix != and =out= for maps in G2 RSQL to Specification (#2426)
+ add initial draft of Standalone RSQL test
+ provide option to override Hibernate / Eclipselink configuration via standard spring environment properties

Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2025-06-04 16:30:33 +03:00
Stanislav Trailov
7456e52095 Unify Hibernate and EclipseLink exception translations (#2388)
* Unify Hibernate and EclipseLink exception translations

Signed-off-by: strailov <Stanislav.Trailov@bosch.io>

* properly set custom hibernate jpa dialect

Signed-off-by: strailov <Stanislav.Trailov@bosch.io>

---------

Signed-off-by: strailov <Stanislav.Trailov@bosch.io>
2025-05-07 15:18:06 +03:00
Avgustin Marinov
36fa915cbc Improve @Value properties (#2352)
Implement recommendation from https://docs.spring.io/spring-boot/reference/features/external-config.html to use kebab case for @Values:

If you do want to use @Value, we recommend that you refer to property names using their canonical form (kebab-case using only lowercase letters). This will allow Spring Boot to use the same logic as it does when relaxed binding @ConfigurationProperties.

Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2025-04-11 16:46:34 +03:00
Avgustin Marinov
4e113f9483 Hibernate: use default HibernateJpaConfiguration (#2325)
Condifure properties via HibernatePropertiesCustomizer

Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2025-03-21 16:48:14 +02:00
Avgustin Marinov
36d8ab47ad Bump spring boot to 3.4.4 (#2324)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2025-03-21 11:24:22 +02:00
Avgustin Marinov
1e4e45f7bb Ethlo back (#2267)
* Return Ethlo plugin

* Return back statick weaving for EclipseLink in order to use lazy fetch
2025-02-11 12:50:51 +02:00
Avgustin Marinov
bbb2193d74 Sonar Fix (#2239)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2025-01-24 20:10:28 +02:00
Avgustin Marinov
a61e9cd6ae Sonar Fixes (#2233)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2025-01-24 15:41:06 +02:00
Avgustin Marinov
bb9c9bfad8 Remove some of the field injections (Sonar recomendtion) (#2218)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2025-01-23 09:52:29 +02:00
Avgustin Marinov
bbb5f40207 Sonar Fixes (6) (#2214)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2025-01-21 16:13:43 +02:00
Avgustin Marinov
e8406afeba Add hibernate support for printing Specification/TypedQuery to string (for debug purposes) (#2213)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2025-01-21 15:50:26 +02:00
Avgustin Marinov
25e45d5825 User friendly map toString in StatisticsUtils (#2203)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2025-01-20 13:31:31 +02:00
Avgustin Marinov
1f71d6ddb0 Add JPA statistics support for eclipselink and hibernate (#2202)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2025-01-20 13:17:55 +02:00
Avgustin Marinov
207261342c Add configuration for hibernate.enable_lazy_load_no_trans (#2196)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2025-01-14 10:43:02 +02:00
Avgustin Marinov
a7830379c1 Hibernate versioning made to start from 1 to be EclipseLink compatible (#2156)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-12-20 12:21:47 +02:00
Avgustin Marinov
52fec7c82b Non static native query prefix (#2152)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-12-18 16:43:56 +02:00
Avgustin Marinov
ed93d3fc7b Introduce pluggable tenant resolver (#2151)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-12-18 15:17:35 +02:00
Avgustin Marinov
1c211c81c2 Jpa vendor native support extended for in of collections (#2150)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-12-17 13:55:21 +02:00
Avgustin Marinov
db3ac7f2dd Hibernate support (#2147)
* Hibernate support

---------

Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-12-16 16:08:07 +02:00