-
Notifications
You must be signed in to change notification settings - Fork 37
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
feat(document): document deserialization & serialization #3066
feat(document): document deserialization & serialization #3066
Conversation
...core/src/main/java/io/camunda/connector/runtime/core/document/DocumentOperationExecutor.java
Fixed
Show fixed
Hide fixed
...core/src/main/java/io/camunda/connector/runtime/core/document/DocumentOperationExecutor.java
Fixed
Show fixed
Hide fixed
...core/src/main/java/io/camunda/connector/runtime/core/document/DocumentOperationExecutor.java
Fixed
Show fixed
Hide fixed
...c/main/java/io/camunda/connector/runtime/core/document/jackson/DocumentDeserializerBase.java
Fixed
Show fixed
Hide fixed
...ntime-core/src/main/java/io/camunda/connector/runtime/core/document/DocumentFactoryImpl.java
Dismissed
Show dismissed
Hide dismissed
...ore/src/main/java/io/camunda/connector/api/document/operation/DocumentOperationExecutor.java
Dismissed
Show dismissed
Hide dismissed
...ore/src/main/java/io/camunda/connector/api/document/operation/DocumentOperationExecutor.java
Dismissed
Show dismissed
Hide dismissed
...ore/src/main/java/io/camunda/connector/api/document/operation/DocumentOperationExecutor.java
Dismissed
Show dismissed
Hide dismissed
.../io/camunda/connector/document/annotation/jackson/deserializer/DocumentDeserializerBase.java
Dismissed
Show dismissed
Hide dismissed
...ors/http/http-base/src/main/java/io/camunda/connector/http/base/model/HttpCommonRequest.java
Outdated
Show resolved
Hide resolved
private final DocumentStore documentStore; | ||
|
||
public DocumentFactoryImpl(DocumentStore documentStore) { | ||
this.documentStore = documentStore; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Will this class carry all of the future possible store ? In this case, how do you make the link between the document creation request and the corresponding store?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In the future we will generally use only one store here for connecting to the C8 document API. The in-memory implementation will be reserved for tests. As of now, I don't see the need to have multiple store implementations active at the same time - different stores are anyway hidden behind the C8 REST API.
One thing where a different approach is needed is external documents (such as something only available to us via an external URL). But this probably will be handled separately in the DocumentFactory
job, | ||
secretProvider, | ||
validationProvider, | ||
new DocumentFactoryImpl(new InMemoryDocumentStore()), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
How will it work when new store comes?
connector-sdk/core/src/main/java/io/camunda/connector/api/document/DocumentFactory.java
Outdated
Show resolved
Hide resolved
*/ | ||
package io.camunda.connector.api.document; | ||
|
||
public interface DocumentReference { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we seal this interface?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's being extended / implemented by classes in a different package (DocumentReferenceModel
where operation is added) so I couldn't seal it here
connector-sdk/core/src/main/java/io/camunda/connector/api/document/store/DocumentStore.java
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great work! Some minor comments.
...t/src/main/java/io/camunda/connector/document/annotation/jackson/DocumentReferenceModel.java
Outdated
Show resolved
Hide resolved
* wip (cherry picked from commit a57e940) * wip (cherry picked from commit 5634aea) * prepare end-to-end draft (cherry picked from commit 92ec79f) * prepare end-to-end draft (cherry picked from commit 5a808bd) * rework deserializers (cherry picked from commit 0b0a558) * incorporate feedback, move jackson code into a separate module * clean up accidental change * naming adjustments * lint * remove extra dollar sign * remove extra dollar sign
* feat(sdk): first iteration of document support * apply review suggestions * feat(document): document deserialization & serialization (#3066) * wip (cherry picked from commit a57e940) * wip (cherry picked from commit 5634aea) * prepare end-to-end draft (cherry picked from commit 92ec79f) * prepare end-to-end draft (cherry picked from commit 5a808bd) * rework deserializers (cherry picked from commit 0b0a558) * incorporate feedback, move jackson code into a separate module * clean up accidental change * naming adjustments * lint * remove extra dollar sign * remove extra dollar sign * feat(document): restructure the project and move document stuff to a different package (#3149) * refactor: move document stuff to a different module --------- Co-authored-by: Jonathan Roques <[email protected]> * fix(document): document serializer doesn't handle sdk document model (#3205) * feat(doc-handling): Some investigations to use documents in the REST … (#2976) * feat(doc-handling): Some investigations to use documents in the REST connector --------- Co-authored-by: Pavel Kotelevsky <[email protected]> Co-authored-by: Pavel Kotelevsky <[email protected]>
* wip (cherry picked from commit a57e940) * wip (cherry picked from commit 5634aea) * prepare end-to-end draft (cherry picked from commit 92ec79f) * prepare end-to-end draft (cherry picked from commit 5a808bd) * rework deserializers (cherry picked from commit 0b0a558) * incorporate feedback, move jackson code into a separate module * clean up accidental change * naming adjustments * lint * remove extra dollar sign * remove extra dollar sign
Description
This PR will add the first implementation of serialization and deserialization of document references.
Highlights:
Related issues
related https:/camunda/team-connectors/issues/873