Commit Graph

170 Commits

Author SHA1 Message Date
Arthur Joppart
28c0eb7e88 Correctly handle slugs in POST requests
* bug: correctly handle slug in POST request

* bug: disallow slashes in slug + modified tests

* fix: fixed tests to work with PUT instead of POST+slug

* fix: fixed tests failing in ci

* fix: adapted to reviews

* fix: adapted to review
2021-02-24 12:03:41 +01:00
Matthieu Bosquet
894d4589d9 fix: Allow non-variable BGP boedies in SPARQL updates
* fix: SPARQL algebra update

* fix: SPARQL algebra bgp only

* fix: No SPARQL variables and refactor tests
2021-02-24 08:56:31 +01:00
Joachim Van Herwegen
0c047234e3 feat: Support auxiliary behaviour in DataAccessorBasedStore 2021-02-18 13:26:08 +01:00
Joachim Van Herwegen
061c856161 feat: Add auxiliary support to LockingResourceStore
This way locks are always on the associated resource
if there is a request on an auxiliary resource.
2021-02-18 13:26:08 +01:00
Wouter Termont
1486f01aaf fix: do not output filesystem container size
* fix: do not output filesystem container size

* fix: only omit size metadata for containers

Signed-off-by: Wouter Termont <woutermont@gmail.com>
2021-02-12 09:18:09 +01:00
Joachim Van Herwegen
30cebec32a fix: Make mkdir recursive in FileDataAccessor
DataAccessorBasedStore already did the checks to make sure
writing this container is valid and this allows us to
start the server in nested non-existing folders.
2021-02-11 14:35:56 +01:00
Joachim Van Herwegen
bb65630441 fix: Remove default root container from InMemoryDataAccessor 2021-02-11 14:35:56 +01:00
Joachim Van Herwegen
6424b07fc6 fix: Prevent setRepresentation crash if there is no root container 2021-02-11 14:35:56 +01:00
Joachim Van Herwegen
0ffd332828 feat: Use end-of-stream to know when to release lock 2021-02-10 16:37:34 +01:00
Joachim Van Herwegen
59deb989ec feat: Introduce internal storing mechanism 2021-02-09 14:35:12 +01:00
Joachim Van Herwegen
b61d46900f feat: Create new interface for lockers with only 1 kind of lock 2021-02-09 14:35:12 +01:00
Joachim Van Herwegen
59600b07f8 fix: Fixed bug with empty Accept headers and internal/quads bodies
In case the Accept header was empty and the store returned an internal/quads
resource, our  mechanism to prevent internal data from being returned
was ignored.
2021-02-09 13:26:36 +01:00
Ruben Verborgh
eb1440851a refactor: Move handlers into subfolder. 2021-01-27 11:29:35 +01:00
Joachim Van Herwegen
e752927171 fix: Remove all instanceof checks
This prevents problems with different environments.
Also introduces unit tests to double check HttpError values.
2021-01-25 16:11:43 +01:00
Joachim Van Herwegen
c17402517e feat: Update LockingResourceStore to use new locking interface
This has as added bonus that, in the case of getRepresentation,
the stream will be destroyed with an error in case of a timeout.
2021-01-22 11:34:51 +01:00
Joachim Van Herwegen
077f5d7069 fix: Remove locking from the SparqlUpdatePatchHandler
Due to not having re-entrant locks this would cause deadlocks
with the LockingResourceStore or require more advanced configurations.
If this is needed in the future we can potentially add a LockingPatchHandler.
2021-01-22 11:34:51 +01:00
Ruben Verborgh
b487dc738c fix: Create basic representations with streams. 2021-01-20 16:30:29 +01:00
Ruben Verborgh
5416d66a31 feat: Add ConstantConverter. 2021-01-20 14:36:17 +01:00
Ruben Verborgh
a21532ebf8 refactor: Allow IfNeededConverter to short-circuit. 2021-01-20 14:36:17 +01:00
Ruben Taelman
4ac0167c8d Add optional path and url suffixes to FixedContentTypeMapper 2021-01-19 10:54:49 +01:00
Joachim Van Herwegen
36761e8124 feat: Support composite PATCH updates 2021-01-18 17:01:24 +01:00
Ruben Verborgh
e72117a21a refactor: Deduplicate mapper. 2021-01-18 16:42:18 +01:00
Ruben Verborgh
7adc9edb76 refactor: Make representation conversion unconditional. 2021-01-18 09:47:06 +01:00
Ruben Verborgh
6763500466 feat: Add IfNeededConverter and PassthroughConverter. 2021-01-18 09:47:06 +01:00
Ruben Verborgh
4638ba4bce feat: Use baseIRI in QuadToRdfConverter.
Closes https://github.com/solid/community-server/issues/512
2021-01-15 12:43:34 +01:00
Ruben Verborgh
af47083f64 feat: Add containsResource utility. 2021-01-15 09:00:43 +01:00
Joachim Van Herwegen
ee50f40062 docs: Add comments referencing the Solid spec where relevant
Also some minor changes to completely match the spec there.
2021-01-15 08:42:36 +01:00
Joachim Van Herwegen
50e3cf5036 fix: Throw correct errors and streamline in DataAccessorBasedStore 2021-01-15 08:42:36 +01:00
Ruben Verborgh
dd272bac88 change: Reduce mapper logging level. 2021-01-13 22:37:13 +01:00
Ruben Verborgh
b51dac310e feat: Use more prefixes in container responses. 2021-01-13 19:00:05 +01:00
Ruben Verborgh
ba42861699 feat: Use ldp: prefix in container representations. 2021-01-12 09:12:54 +01:00
Ruben Verborgh
66e636878f feat: Add BasicRepresentation. 2021-01-11 14:23:52 +01:00
Ruben Verborgh
be1af89b56 feat: Add Content-Type constructor to metadata. 2021-01-11 14:03:38 +01:00
Ruben Verborgh
998296a4bb feat: Add BaseResourceStore. 2021-01-09 00:52:31 +01:00
Ruben Verborgh
27a5711ec2 refactor: Simplify TypedRepresentationConverter contruction. 2021-01-09 00:26:40 +01:00
Joachim Van Herwegen
fea726ae7d fix: Take baseIRI into account when calling parseQuads 2021-01-07 14:38:19 +01:00
Joachim Van Herwegen
5995057240 fix: Don't get normalized metadata for root containers 2021-01-07 13:34:05 +01:00
Ruben Verborgh
2efebf91fc feat: Only convert when needed. 2021-01-07 11:45:46 +01:00
Joachim Van Herwegen
a5bc8d22a9 fix: Prevent POST requests from creating intermediate containers 2021-01-07 08:45:01 +01:00
Ruben Verborgh
87752ddf20 feat: Support writer prefixes.
Closes https://github.com/solid/community-server/issues/470
2021-01-06 11:36:21 +01:00
Ruben Verborgh
f9a20799eb refactor: Use declarations style for functions. 2021-01-06 11:24:43 +01:00
Ruben Verborgh
e70e060225 fix: Prefer Turtle as default content type.
Fixes https://github.com/solid/community-server/issues/463
2021-01-05 22:28:11 +01:00
Ruben Verborgh
0bd73115cc refactor: Simplify supportsMediaTypeConversion arguments. 2021-01-05 11:03:15 +01:00
Ruben Verborgh
8cd3f7d2e5 feat: Incorporate server-side representation quality.
Closes https://github.com/solid/community-server/issues/467
2021-01-05 11:03:15 +01:00
Ruben Verborgh
09ae959333 refactor: Rename RepresentationPreference into ValuePreferences. 2021-01-05 11:03:14 +01:00
Ruben Verborgh
4828912593 refactor: Use record for representation preference. 2021-01-04 23:06:52 +01:00
Ruben Verborgh
f454b781ff fix: Join and normalize paths consistently. 2021-01-04 16:52:17 +01:00
Ruben Verborgh
98bf8c199d fix: Sort preferences by descending weight. 2021-01-04 00:46:22 +01:00
Ruben Verborgh
b7be70f8c3 chore: Reduce conversion logging level. 2021-01-03 01:14:52 +01:00
Ruben Verborgh
2e188551f7 refactor: Rename UriUtil into TermUtil. 2021-01-02 23:19:01 +01:00