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

TASK: Introduce (internal) low level content graph api for constraint checks and write side #4973

Open
mhsdesign opened this issue Apr 2, 2024 · 0 comments
Labels

Comments

@mhsdesign
Copy link
Member

mhsdesign commented Apr 2, 2024


Marc Henry's part / requirements:

In order to get the NodeIdentity/NodeAdress change finished (see #4868) we must rewrite the write sides projection access. Because of the dilemma here: #4868 (comment)
(The dilemma is that the Node read model has to know its WorkspaceName somehow)

We discussed that the high level api of the content graph will eventually look like findNodeAggregateById(WorkspaceName $ws, $id); and also getSubgraph will accept the WorkspaceName instead of a content stream id.

So why can we not just always work with WorkspaceName's also on the write side?
Because the first thing we do is resolve the current content stream we want to operate on via requireContentStreamId which might return, if in a rebase closure, a globally temporary mock instead of the actual one for the WorkspaceName.

Thus we need to have a low level api where we not only pass the ContentStreamId but also the WorkspaceName.

The WorkspaceName is currently not yet part of any node / node aggregate read model, but will be with the introduction of the NodeIdentity/NodeAdress ON the node. So this part has to be forward implemented without being used by the NodeFactory ... that change is my part.

During this the subtask #4942 also needs to be solved, as the 2 commands dont contain WorkspaceName's yet and we would need them to pass to the lower level methods.


Feel free to edit this issue and add your insights.


Slack threads !!!:

kitsunet added a commit to kitsunet/neos-development-collection that referenced this issue Apr 5, 2024
The write side no longer uses any regular finders
for checks but only accesses projection data via
the new `ContentGraphAdapterInterface`.

Fixes: neos#4973
kitsunet added a commit to kitsunet/neos-development-collection that referenced this issue Apr 7, 2024
The write side no longer uses any regular finders
for checks but only accesses projection data via
the new `ContentGraphAdapterInterface`.

Fixes: neos#4973
@ahaeslich ahaeslich added the 9.0 label Apr 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Status: Prioritized 🔥
Development

Successfully merging a pull request may close this issue.

2 participants