Commit Graph

242 Commits

Author SHA1 Message Date
James Agnew 3972e17e62 Add "is trusted" property to server exceptions 2019-03-01 13:58:13 -05:00
James Agnew 94f9ffa977 Avoid paging links when offset is artificially set very high 2019-02-25 20:44:22 -05:00
James Agnew c6fcb4fcbf Allow canonical subscription to hold multiple extensions with the same
URL
2019-02-16 15:28:39 -05:00
James Agnew 485335e975 Allow terminology service to work without having Lucene enabled for
simple ValueSet expansions
2019-02-14 20:47:28 -05:00
James Agnew 810f1ad969 Improvements to elements parameter as well as adding attributes to
RequestDetails
2019-02-07 16:45:59 -05:00
James Agnew 0f8c8d18e2 Bump version to 3.8.0-SNAPSHOT 2019-02-06 20:02:28 -05:00
jamesagnew 207015c3af Version bump to 3.7.0 2019-02-05 21:36:38 -05:00
James Agnew 4498335ae5 Elements query cleanup 2019-02-05 14:16:47 -05:00
jamesagnew d4af1ee2a3 Add tests and license headers 2019-02-04 16:34:39 -05:00
James Agnew e401ec86e4
Enhanced elements (#1192)
Squashed merge: Add elements exclude mode

* Start working on elements enhancement

* Work on elements projection

* Work on elements filter

* Feature is now working

* Just some cleanup

* Address compile issues
2019-02-03 16:41:33 -05:00
James Agnew 9cf64f78d0 Deprecate a bad setter on RetfulServer, fix a paging issue, and add a
disabled unit test to the subscription matcher
2019-01-21 14:46:17 -05:00
jamesagnew cd1e0e881c Add headers 2019-01-19 18:31:17 -05:00
James Agnew b8755615b2 Allow AuthorizationInterceptor to read patients if the user has read
access to the individual instance
2019-01-14 13:53:08 -06:00
James Agnew 93bf2788ec Add subscription narrowing interceptor and refactor RuleBuilder to be a
bit cleaner
2019-01-12 14:23:26 -06:00
James Agnew aee7b2b882 Make sure that sub-request transaction searches and reads preserve HTTP
headers
2019-01-10 07:26:04 -07:00
James Agnew ee52d6fb31 Add SearchNarrowingInterceptor 2019-01-09 20:20:46 -06:00
Stig Rohde Døssing f8b232bb67 Issue 430: Generate OperationDefinitions for named queries, fix minor errors in generation of OperationDefinition for operations. Closes #430. 2019-01-09 05:41:08 -05:00
James Agnew 62ae71c1c6 Allow authorizing delete operations via a transaction in
AuthorizationInterceptor
2019-01-07 15:43:36 -05:00
jamesagnew a8a97ae6b2 Two test fixes 2019-01-07 09:18:11 -05:00
jamesagnew 3d94761bcb Improve response for transactions 2019-01-06 18:08:32 -05:00
jamesagnew b2c7a2003e Prevent a nullpointerexception in AuthorizationInterceptor 2019-01-06 16:42:29 -05:00
jamesagnew 39f2062802 FIx errorprone detected issues 2019-01-05 13:43:55 -05:00
jamesagnew 8f8385627f Merge branch 'master' of github.com:jamesagnew/hapi-fhir 2019-01-05 11:33:08 -05:00
jamesagnew 98d93df12a License header updates 2019-01-04 16:22:15 -05:00
James Agnew 5b8fee869e Add config options for default Prefer header and _total param on server 2019-01-04 16:12:45 -05:00
Corina Dalaban 3a3d503772 head operation should return 200OK response code instead of 400
BadRequest
2018-12-21 05:40:35 -05:00
Ken Stevens 84a34eb3c9
Subscription module support (#1147)
* Reorganizing packages and dependencies to support standalone subscription running within a CDR container where all hapi modules are on the classpath.

Moved Subscription registry out of interceptor and introduced SubscriptionLoader

* Created ActiveSubscription and moved cache bits into it

* Moved ExecutorQueue stuff out into its own class

* Add test and supporting code to validate SubscriptionConstants.EXT_SUBSCRIPTION_RESTHOOK_DELIVER_LATEST_VERSION behaviour

* Added SubscriptionCheckingSubscriber

* Moved a few beans to @ComponentScan

* Replaced use of beanFactory with concrete factory classes

* Switched test to use subscribablechannel

* Added SubscriptionLoaderFhirClientTest

* Confirm that our SubscriptionProviderFhirClient works with a live fhir client

* Register interceptors with DaoConfig instead of RestServer.
Also, Rename @VisibleForTesting methods with ForUnitTest

* Fix triggering service so it uses new subscriptionmatcherinterceptor

* Renamed "Database" classes to "Dao"

* processing -> matching naming change
2018-12-18 13:09:06 -05:00
jamesagnew 81e8131ffc Fix broken test 2018-12-09 19:36:03 -05:00
James Agnew 67f5ba6aa0 Also allow ServeMediaResourceRawInterceptor to handle vread requests 2018-12-09 14:29:40 -05:00
James Agnew 19954fa252 Resolve failing test 2018-12-09 14:09:12 -05:00
James Agnew b442982310 Add media interceptor 2018-12-08 18:49:58 -05:00
James Agnew b2179b1696 Syntax fixes for the JPA migrator 2018-11-30 12:39:37 -05:00
James Agnew b41c222880 Require explicit declaration of authorizationinterceptor operation rules
on whether the response is authorized or not
2018-11-23 14:25:46 -05:00
James Agnew ce3b7c82ce Avoid issues when using subscription delivery in a serializing/queuing
environment
2018-11-22 17:53:42 -05:00
James Agnew 2e030eebaa Make sure that reindexing happens correctly 2018-11-21 12:06:10 -05:00
James Agnew 58388bb614 Allow client to return methodoutcome instead of resdource for operation
call
2018-11-19 11:11:49 +01:00
James Agnew 67dbc802be Better detection of binary content in ResponseHighlighterInterceptor 2018-11-18 14:32:54 +01:00
James Agnew fad53c6669 Fix a test 2018-11-16 13:15:14 +01:00
James Agnew 0d0f67b299 Add GraphQL support to public server 2018-11-16 11:41:39 +01:00
James Agnew 02b23d74fd
Merge pull request #1117 from magnuswatn/logformatfix
Fixed small log formatting error in ExceptionHandlingInterceptor.java
2018-11-15 13:38:07 +01:00
Magnus Watn 52265d248f Fixed log formatting error 2018-11-15 12:14:33 +01:00
James Agnew 75210d614b Bump to 3.7.0-SNAPSHOT 2018-11-12 22:37:52 -05:00
James Agnew 63af04a7b4 Prepare for 3.6.0 release 2018-11-12 05:40:55 -05:00
jamesagnew a3e79b5759 License updates only 2018-11-08 15:28:09 -05:00
James Agnew 17a7fd4285
Merge pull request #1071 from volsch/master
Multiple values of a HTTP header are reduced to one value.
2018-11-08 13:27:36 -05:00
James Agnew 4b790eddb6 Add additional authorization test 2018-11-07 11:01:29 +01:00
James Agnew 4315900ac0 Merge branch 'philips-3.6.0' 2018-11-01 09:15:27 -04:00
James Agnew 3bfdc61866 Fix a couple of test failures 2018-11-01 09:15:03 -04:00
jamesagnew 3f6960d82b Add multithreaded migrator tool 2018-11-01 05:42:51 -04:00
jamesagnew 31ef4c68e1 Merge branch 'philips-3.6.0' of github.com:jamesagnew/hapi-fhir into philips-3.6.0 2018-10-31 05:51:13 -04:00
jamesagnew 8955a9e54d Add threading to migrator 2018-10-31 05:50:50 -04:00
James Agnew 7acba90d15 Update search logic 2018-10-30 22:43:16 -04:00
James Agnew 6b1ea5b989 Add tests for operation method binding 2018-10-30 15:22:39 -04:00
James Agnew b66e01ce65 Allow plain server @Operation methods to declare a wildcard so that any
opeeration invocations will be direected to them
2018-10-29 10:36:32 -04:00
James Agnew aa177c1421 Authorize batch operation in AuthorizationInterceptor 2018-10-19 09:45:56 -04:00
James Agnew da2763d8c8 Merge branch 'master' into philips-3.6.0 2018-10-17 22:38:27 -04:00
James Agnew 99cd4ce5f7 Allow for _total parameter 2018-10-17 09:47:35 -04:00
James Agnew 4e252063b8 Allow transactions and batches with transaction permission in
AuthorizationInterceptor
2018-10-16 19:54:55 -04:00
James Agnew 796b12e33e Fix bug in $everything processing 2018-10-15 05:44:53 -04:00
James Agnew 51a69f0dc9 Fixes to migrator and count logic 2018-10-13 12:02:19 -04:00
James Agnew ca54409ce3 Add some null checks to the RestfulServer 2018-10-05 08:33:00 -04:00
James Agnew 62d6771814 Use a select count query for summary count searches in JPA server 2018-09-29 21:58:14 -04:00
James Agnew 3e445faf47 Squashed commit of the following:
commit df641506885e09e63f80efc6c658d01a1a3a8142
Author: James Agnew <jamesagnew@gmail.com>
Date:   Sat Sep 29 13:47:22 2018 -0400

    Shrink validation resources

commit 4c1550eafa26f4235b4b8804741aecc03276b5c6
Author: James Agnew <jamesagnew@gmail.com>
Date:   Fri Sep 28 22:45:28 2018 -0400

    Updates to get R4 working

commit 8332f15291006691ed9b07ead3e3524b0fc85510
Author: jamesagnew <jamesagnew@gmail.com>
Date:   Fri Sep 28 09:02:13 2018 -0400

    Ongoing work on gettign R4 working

commit f7146cab7aed937bb625a8aec95744d76db00041
Author: James Agnew <jamesagnew@gmail.com>
Date:   Fri Sep 28 05:21:01 2018 -0400

    More work on sync

commit f48de4a10b1bab2584fee813017d9b27b237bfa9
Merge: 9e4f3cc722 aacb78b779
Author: James Agnew <jamesagnew@gmail.com>
Date:   Thu Sep 27 20:11:29 2018 -0400

    Merge branch 'sync_r4' of github.com:jamesagnew/hapi-fhir into sync_r4

commit 9e4f3cc722668aae31a77b19bf9b032af3ae01b0
Author: James Agnew <jamesagnew@gmail.com>
Date:   Thu Sep 27 20:11:19 2018 -0400

    Fix compile error

commit 7ec29e0ceda8f9013cbabb95767cbe15b4b81303
Merge: 23f7517325 002c4b3ff7
Author: James Agnew <jamesagnew@gmail.com>
Date:   Thu Sep 27 20:04:23 2018 -0400

    Merge branch 'master' into sync_r4

commit aacb78b7793ab2c71e0a2a774240ee2b5d3f9e7f
Author: jamesagnew <jamesagnew@gmail.com>
Date:   Thu Sep 27 20:01:42 2018 -0400

    Keep working on getting R4 building

commit 4950de46d99897e74d41dfdb10d3d8a3435cb0c9
Author: jamesagnew <jamesagnew@gmail.com>
Date:   Tue Sep 25 13:11:27 2018 -0400

    Ongoing work to get R4 working

commit 819d69c20e112dd3c72569ec50114ddb8263c300
Author: jamesagnew <jamesagnew@gmail.com>
Date:   Thu Sep 20 08:15:36 2018 -0400

    Work on getting build working

commit 2c61b6cd1205ced5d7b822cf10942c69272ea078
Merge: 16b5bb06c8 dfb4de86f1
Author: jamesagnew <jamesagnew@gmail.com>
Date:   Thu Sep 20 05:16:53 2018 -0400

    Merge branch 'master' into sync_r4

commit 16b5bb06c8cdaf8d67c3b80f5aa9be9fccd99aef
Author: jamesagnew <jamesagnew@gmail.com>
Date:   Mon Sep 17 05:30:39 2018 -0400

    Work on R4 sync

commit 23f7517325a14dd2ca1eb5641296ead2776634ae
Author: James Agnew <jamesagnew@gmail.com>
Date:   Sun Sep 16 10:19:00 2018 -0400

    Work on sync

commit 6cc413c1f1dea538295aa4c16c21a5677494ac4c
Author: James Agnew <jamesagnew@gmail.com>
Date:   Fri Sep 14 17:28:28 2018 -0400

    Work on R$ sync

commit df6f6ad2ce783b07ccc383134705d874bc5d2cf1
Author: jamesagnew <jamesagnew@gmail.com>
Date:   Fri Sep 14 08:33:07 2018 -0400

    Work on R4
2018-09-29 13:48:35 -04:00
James Agnew 706e004b9d Bump to 3.6.0-SNAPSHOT 2018-09-19 10:24:48 -04:00
jamesagnew 321e88c811 License header updates 2018-09-14 05:25:07 -04:00
James Agnew ce6a9dbc36 Fix regression from new jetty version 2018-09-11 08:27:34 -04:00
James Agnew daef975734 Version bump to 3.5.0 2018-09-08 07:22:21 +08:00
Volker Schmidt b183bed52f Multiple values for one HTTP header were reduced to the last value. 2018-09-06 19:33:34 +08:00
James Agnew 54c07263b6 Increase code lengths 2018-08-26 12:32:35 -04:00
jamesagnew df651c830e Remove dynamic mode 2018-08-19 17:35:08 -04:00
James Agnew 78a7d64d2c
Merge pull request #1022 from alinleonard/master
Patch operation on OperationsWhichAllowPreferHeader
2018-08-12 17:55:16 -04:00
jamesagnew 7eb36c3392 Work on subscription 2018-08-11 16:14:53 -04:00
jamesagnew 159377ac16 Add details to ResponseHighlighterInterceptor 2018-08-11 13:46:34 -04:00
jamesagnew 20b1f883ba Add extendible methods to RestfulServer 2018-08-08 17:21:25 -04:00
jamesagnew d9296b8e42 Add hook for error message 2018-08-08 15:14:39 -04:00
jamesagnew 6586fc438d Fix concurrency issue in hashmap 2018-08-03 13:00:57 -04:00
James Agnew 4eb3281fa6 Merge branch 'client_enhancements' 2018-07-30 18:34:49 -04:00
James Agnew d6293cf9b3 Merge branch 'client_enhancements' 2018-07-30 09:42:38 -04:00
James Agnew db0f082222
Merge pull request #996 from anamariaradu10/master
Changes regarding behavior for Prefer header
2018-07-30 09:16:20 -04:00
James Agnew d50dda19ae
Merge pull request #912 from InfiniteLoop90/911-contains-modifier
Fixes #911 - Adds support for :contains modifier
2018-07-30 05:39:27 -04:00
jamesagnew fc9f2ec0fb FIx test issue 2018-07-29 18:20:09 -04:00
James Agnew 518092cbd4 More updates 2018-07-29 17:10:26 -04:00
anamariaradu10 3a5556006b
Merge branch 'master' into master 2018-07-27 16:59:52 +03:00
Ana Maria Radu 9c39733aff Fixed issues 2018-07-27 16:48:44 +03:00
James Agnew f03d6b7c22 Allow configuration of default page size in SimpleBundleProvider 2018-07-27 18:34:12 +07:00
James Agnew d04db790a3 Try to fix permissions issues in travis 2018-07-27 08:39:22 +07:00
James Agnew a4e4111376 Fix a unit test 2018-07-26 18:08:59 +07:00
James Agnew 3c80238f0e Ongoing work on interceptors 2018-07-24 17:22:21 +07:00
James Agnew 23083a9283 Improvements to client and SP indexing in JPA server 2018-07-23 17:37:49 +09:00
James Agnew b4aa4c0e89 Add protection against HTML injection attacks 2018-07-19 08:56:22 -04:00
James Agnew e6ca408f67 Permissions for operations 2018-07-12 18:40:15 -04:00
Alin de701a6b7f added patch for operation outcome 2018-07-09 15:35:50 +03:00
jamesagnew 6d83edabb6 License header updates 2018-07-01 20:59:04 -04:00
James Agnew 495fd9f68e Add support for patch in AuthorizationInterceptor 2018-07-01 11:46:11 -04:00
jamesagnew b3f7ab274d License header updates 2018-06-21 14:44:34 -04:00
James Agnew ed0b5f54a5 More authorizationinterceptor tweaks for better security 2018-06-12 21:52:01 +08:00
Ana Maria Radu dc476aeeea In my opinion these changes should be made in order to have the behavior
for the Prefer header values as the one explained in the official
documentation from https://www.hl7.org/fhir/http.html
2018-06-12 14:04:05 +03:00
James Agnew cc0e836680
Auth interceptor early checks (#995)
* Validator fix

* Enhance AuthorizationInterceptor so that it tries to deny access earlier
for compartment searches that are outside the allowable compartment.

* FIx DSTU2 test that wasn't updated

* More test fixes
2018-06-10 17:48:20 -04:00
James Agnew e7804b881c Fix CI issue 2018-06-06 11:39:06 -04:00
jamesagnew 3583dfd503 Correctly include project description in capabilitystatement 2018-06-03 16:19:33 -04:00