-
-
Notifications
You must be signed in to change notification settings - Fork 224
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
Migrate/Fix/Rethink NodeIdentityConverterAspect
for 9.0
#5069
Comments
we rely on |
... but we dont support string nodeaddress to node in the long run? #4873 |
so it was for holding a like /**
* @Flow\Scope("session")
*/
class MySessionThing {
protected Node $myNode = null;
public function setNode(Node $item) {
$this->myNode = $item;
}
public function getMyNode() {
return $this->items;
}
} in Neos 9 id say one must use: /**
* @Flow\Scope("session")
*/
class MySessionThing {
protected NodeAddress $myNode = null;
public function setNode(NodeAddress $item) {
$this->myNode = $item;
}
public function getMyNode() {
return $this->items;
}
} |
well ... as we relaxed our decision over at #4873 (comment) and it looks like well keep a node property mapper, we should probably keep this hack as well ... and make sure that it works. Imo for that we have to return the node address as string directly and NOT in an array as value of |
Christian and me concluded that for routing nodes this is not necessarily required as we currently and will ever serialise the NodeAddress manually. If passed as instance we could confirm that |
NodeIdentityConverterAspect
NodeIdentityConverterAspect
for 9.0
NodeIdentityConverterAspect
for 9.0NodeIdentityConverterAspect
for 9.0
subissue of #3216
I dont understand exactly what the
NodeIdentityConverterAspect
thing does or what it should do in 9.0, but as we dont implement any__contextNodePath
logic in 9.0'sEventSourcedFrontendNodeRoutePartHandler
and seeing that the tests pass after its removal makes me think it has become obsolete.If there is something i dont know, please let me know otherwise i think it can be removed?
PersistenceManager::convertObjectToIdentityArray
was introduced 2011 with:NodeIdentityConverterAspect
introduced 2012 with:NodeIdentityConverterAspect
was adjusted to returnarray
now as the return type was enforced now:whyyyy does
Route::resolves
even callconvertObjectsToIdentityArrays
?... And why with raw node objects?
This can easily happen in case you build uris using the uri builder or from fluid/fusion:
In Neos 8.3 the Node - not being a doctrine entity (NodeData is the entity) - is unknown to the persistence manager:
Thus we AOP the method and serialise it into an array with
__contextNodePath
. The old Node property mapper in Neos 8.3 would deserialise it here again.The original intention or the conversion of doctrine entities seems to be the following:
The text was updated successfully, but these errors were encountered: