Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Issue/178 upgrade dependencies #179

Merged
merged 35 commits into from
Feb 19, 2024
Merged

Conversation

hhund
Copy link
Member

@hhund hhund commented Feb 19, 2024

  • Upgrades dependencies and maven plugins
  • Fixes deprecated liquibase constants
  • Adds goal-prefix for documentation-generator maven plugin

relevant commit 525b44f, merge after #176

closes #178

hhund and others added 30 commits February 7, 2024 15:55
* now using thymeleaf template engine to generate html
* adds new UIs for some resources and search-sets
* adds copy button for Task and QuestionnaireReponse html Input fields
* adds insert placeholder button for boolean input fields
* adds support for empty QuestionnaireReponse items and Task inputs
using the FHIR data absent reason extension
https://hl7.org/fhir/R4/extension-data-absent-reason.html
* switching between html, json and xml views now pushes browser history
entries
* adds shortcuts (h, j, x) to switch between html, json and xml views.
Shortcuts need to be used with browser specific modifier keys, see
https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/accesskey
…om:datasharingframework/dsf.git into issue/175_Template_Engine_for_HTML_UIs
added line break opportunity elements <wbr> to h1 page title and
replaced normal hyphen characters with non-breaking hyphens
(character #8209).
…om:datasharingframework/dsf.git into issue/175_Template_Engine_for_HTML_UIs
* New UI mod feature allowing overrides of static resources via ui
folder bind mound, see 3dic-ttp test setup
* New UI theme feature allowing configuration of a color indicator top
page border for [dev, test, prod] deplyoment environments
* JavaScript and CSS code formatting
* Initial BPE UI implementation: Revoked the authentication and
authorization of users, now using the same role config as the fhir
server. Currently only one role is defined "ADMIN". The fhir
Organization resource for the authenticated user is retrieved from the
fhir server and cached for 30 seconds, the cache timeout currently can't
be configured. Access to bep UI with the organization client certificate
is not granted by default, but can be enabled by adding a role config
the the "ADMIN" role for the certificate thumbprint.
* Added a bpe rev proxy docker image similar to the existing fhir rev
proxy docker image.
* Added bpe rev proxy to docker-build.{bat,sh} scripts.
* Added bpe rev proxy to docker-test-setup.
* Added a ui mod to the 3dic-ttp test setup, fhir and bpe instances now
use special logos with different versions for light and dark modes.
* Added a user role config to the bpe services in the 3dic-ttp test
setup and bpe base url and theme environment configs.
* Modified docker-test-setup network ip configs, now using smaller (/29)
subnets.
* Modified test data generator for bpe rev proxy and bpe ui
authentication, now using generated properties file when starting BPE
from IDE.
* Moved the webservice for static resources (images, css, js) to a new
common-ui module, module used by both bpe and fhir servers.
* Moved some authorization related code to the common-auth module.
* The jetty authentication / authorization code now also sets
UserIdentity roles, enabling the use of
jakarta.annotation.security.{DenyAll, PermitAll, RolesAllowed}
annotations on webservices. Added the RolesAllowedDynamicFeature to the
bpe and fhir jersey applications to enable this feature.
* The StatusPortAuthenticator now returns with a "STATUS_PORT_USER" that
has the "STATUS_PORT_ROLE" role. The StatusService webservice now only
allows access by users with this "STATUS_PORT_ROLE" role.
* Added a new AuthenticationFilter (in common-auth) implementing the
jakarta.ws.rs.container.ContainerRequestFilter interface to the bpe and
fhir jersey applications to make sure (on the jersey layer) that access
to all webservices is only granted to authenticated users.
issue/175_Template_Engine_for_HTML_UIs
* Upgraded dependencies and maven plugins
* Fixed deprecated liquibase constants
* Added a goal-prefix for the documentation-generator maven plugin
@hhund hhund added this to the 1.5.0 milestone Feb 19, 2024
@hhund hhund self-assigned this Feb 19, 2024
@hhund hhund marked this pull request as ready for review February 19, 2024 13:57
String fhirType = typedValue.getClass().getAnnotation(DatatypeDef.class).name();

// TODO use switch expression with pattern matching after switching to java 21
if (typedValue instanceof BooleanType b)

Check notice

Code scanning / CodeQL

Chain of 'instanceof' tests Note

This if block performs a chain of 10 type tests - consider alternatives, e.g. polymorphism or the visitor pattern.
private String getStringValue(Type typedValue)
{
// TODO use switch expression with pattern matching after switching to java 21
if (typedValue instanceof DecimalType d)

Check notice

Code scanning / CodeQL

Chain of 'instanceof' tests Note

This if block performs a chain of 8 type tests - consider alternatives, e.g. polymorphism or the visitor pattern.
private String getHtmlInputType(Type typedValue)
{
// TODO use switch expression with pattern matching after switching to java 21
if (typedValue instanceof BooleanType)

Check notice

Code scanning / CodeQL

Chain of 'instanceof' tests Note

This if block performs a chain of 11 type tests - consider alternatives, e.g. polymorphism or the visitor pattern.
@hhund hhund linked an issue Feb 19, 2024 that may be closed by this pull request
'origin/issue/175_Template_Engine_for_HTML_UIs' into
issue/178_Upgrade_Dependencies
@wetret wetret self-requested a review February 19, 2024 16:11
@hhund hhund merged commit d74870a into develop Feb 19, 2024
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Upgrade Dependencies
2 participants