https://github.com/steinarb/osgi-service
Java interfaces defining OSGi services used across projects
https://github.com/steinarb/osgi-service
Last synced: 5 months ago
JSON representation
Java interfaces defining OSGi services used across projects
- Host: GitHub
- URL: https://github.com/steinarb/osgi-service
- Owner: steinarb
- License: apache-2.0
- Created: 2018-12-18T15:40:33.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2025-11-21T17:34:46.000Z (7 months ago)
- Last Synced: 2025-11-21T19:21:54.003Z (7 months ago)
- Language: Java
- Size: 209 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.org
- License: LICENSE
Awesome Lists containing this project
README
* OSGi service definitions
This repository defines OSGi services I have found useful, and where I have defined similar services in more than once project.
There are no applications in this project, only service definitions.
The service definitions have been deployed to maven central.
** Status of the project
[[https://github.com/steinarb/osgi-service/actions/workflows/osgi-service-maven-ci-build.yml][file:https://github.com/steinarb/osgi-service/actions/workflows/osgi-service-maven-ci-build.yml/badge.svg]]
[[https://coveralls.io/github/steinarb/osgi-service][file:https://coveralls.io/repos/github/steinarb/osgi-service/badge.svg]]
[[https://sonarcloud.io/summary/new_code?id=steinarb_osgi-service][file:https://sonarcloud.io/api/project_badges/measure?project=steinarb_osgi-service&metric=alert_status#.svg]]
[[https://maven-badges.herokuapp.com/maven-central/no.priv.bang.osgiservice/osgiservice][file:https://maven-badges.herokuapp.com/maven-central/no.priv.bang.osgiservice/osgiservice/badge.svg]]
[[https://www.javadoc.io/doc/no.priv.bang.osgiservice/osgiservice][file:https://www.javadoc.io/badge/no.priv.bang.osgiservice/osgiservice.svg]]
[[https://sonarcloud.io/summary/new_code?id=steinarb_osgi-service][file:https://sonarcloud.io/images/project_badges/sonarcloud-white.svg]]
[[https://sonarcloud.io/summary/new_code?id=steinarb_osgi-service][file:https://sonarcloud.io/api/project_badges/measure?project=steinarb_osgi-service&metric=sqale_index#.svg]]
[[https://sonarcloud.io/summary/new_code?id=steinarb_osgi-service][file:https://sonarcloud.io/api/project_badges/measure?project=steinarb_osgi-service&metric=coverage#.svg]]
[[https://sonarcloud.io/summary/new_code?id=steinarb_osgi-service][file:https://sonarcloud.io/api/project_badges/measure?project=steinarb_osgi-service&metric=ncloc#.svg]]
[[https://sonarcloud.io/summary/new_code?id=steinarb_osgi-service][file:https://sonarcloud.io/api/project_badges/measure?project=steinarb_osgi-service&metric=code_smells#.svg]]
[[https://sonarcloud.io/summary/new_code?id=steinarb_osgi-service][file:https://sonarcloud.io/api/project_badges/measure?project=steinarb_osgi-service&metric=sqale_rating#.svg]]
[[https://sonarcloud.io/summary/new_code?id=steinarb_osgi-service][file:https://sonarcloud.io/api/project_badges/measure?project=steinarb_osgi-service&metric=security_rating#.svg]]
[[https://sonarcloud.io/summary/new_code?id=steinarb_osgi-service][file:https://sonarcloud.io/api/project_badges/measure?project=steinarb_osgi-service&metric=bugs#.svg]]
[[https://sonarcloud.io/summary/new_code?id=steinarb_osgi-service][file:https://sonarcloud.io/api/project_badges/measure?project=steinarb_osgi-service&metric=vulnerabilities#.svg]]
[[https://sonarcloud.io/summary/new_code?id=steinarb_osgi-service][file:https://sonarcloud.io/api/project_badges/measure?project=steinarb_osgi-service&metric=duplicated_lines_density#.svg]]
[[https://sonarcloud.io/summary/new_code?id=steinarb_osgi-service][file:https://sonarcloud.io/api/project_badges/measure?project=steinarb_osgi-service&metric=reliability_rating#.svg]]
** Services defined in this project
*** no.priv.bang.osgiservice.users.UserManagementService
The [[https://static.javadoc.io/no.priv.bang.osgiservice/osgiservice/1.1.0/no/priv/bang/osgiservice/users/UserManagementService.html][UserManagementService]] provides access to management of users, roles and permissions.
To compile code using this OSGi service, add the following dependency to your maven POM:
#+BEGIN_SRC xml
no.priv.bang.osgiservice
osgiservice.users
2.0.1
provided
#+END_SRC
To get runtime access to this OSGi service in apache karaf, add the following to the karaf feature definition of the OSGi bundle(s) using the interface:
#+BEGIN_SRC xml
mvn:no.priv.bang.osgiservice/osgiservice/2.0.1/xml/features
sb-database-osgi-service
#+END_SRC
Alternatively, when using the [[https://svn.apache.org/repos/asf/karaf/site/production/manual/latest/karaf-maven-plugin.html][karaf-maven-plugin]] it's possible to add a karaf runtime feature dependency when generating a feature for your own bundle:
#+BEGIN_SRC xml
no.priv.bang.osgiservice
osgiservice.users
2.0.1
xml
features
#+END_SRC
** Release history
| Version | Date | Description |
|---------+--------------+------------------------------------------------------------------------------------------------------------------------|
| 2.0.1 | [2025-02-12] | Add operations to handle unlocking of users, built with karaf 4.4.7 |
| 2.0.0 | [2024-05-26] | Replace immutable beans with records, remove the unused DatabaseService |
| 1.8.0 | [2022-05-31] | Built with karaf 4.4.0 and OSGi 8, use immutable beans 1.2.0 |
| 1.7.3 | [2021-06-10] | Stop dependencyManagemen from the parent leaking into the BoM |
| 1.7.2 | [2021-04-18] | Add a "Bill of Materials" (BoM) |
| 1.7.1 | [2021-04-15] | Get maven dependencies and maven plugin config from a parent POM |
| 1.7.0 | [2021-04-12] | Built with karaf 4.3.0 and OSGi 7 |
| 1.6.1 | [2021-03-13] | Fixes to the UserManagementService bean builders. Should have tested better before releasing |
| 1.6.0 | [2021-03-10] | Use builders to create the beans used in the UserManagementService interface |
| 1.5.0 | [2019-12-31] | Let Immutable provide hashCode() and equals() implementation to user management beans |
| 1.4.0 | [2019-10-27] | Add abstract class DatabaseServiceBase implementing getConnection() and method for creating JDBC connection properties |
| 1.3.0 | [2019-10-14] | Update plugins and dependencies and fix [[https://github.com/steinarb/osgi-service/issues/1][issue #1]] |
| 1.2.0 | [2019-03-30] | Add methods to UserManagementService |
| 1.1.0 | [2019-02-17] | Working javadoc, first version of the UserManagementService |
| 1.0.0 | [2018-12-19] | First version of the DatabaseService |
** License
This code is licensed under the Apache license v. 2. See the LICENSE file for details.