A parent and child classes having private property fields with the same name fail to be synchronized
rbi opened this issue · comments
HOW TO REPRODUCE
- given the following classes:
class A {
private StringProperty propertySameName = new SimpleStringProperty();
}
class B extends A {
private StringProperty propertySameName = new SimpleStringProperty();
}
- Synchronize objects of them and change the value of both private Properties.
WHAT HAPPENED
- An Exception is thrown:
de.saxsys.synchronizefx.core.exceptions.ObjectToIdMappingException: An object with the id [d44b9948-98db-4b53-935e-5156fe46ab71] was expected to be known but it was not. In most cases this means that synchronism with other peers has been lost.
at de.saxsys.synchronizefx.core.metamodel.WeakObjectRegistry.getByIdOrFail(WeakObjectRegistry.java:75)
at de.saxsys.synchronizefx.core.metamodel.CommandListExecutor.execute(CommandListExecutor.java:175)
at de.saxsys.synchronizefx.core.metamodel.CommandListExecutor.execute(CommandListExecutor.java:103)
at de.saxsys.synchronizefx.core.metamodel.MetaModel.execute(MetaModel.java:199)
at de.saxsys.synchronizefx.core.metamodel.MetaModel.access$000(MetaModel.java:33)
at de.saxsys.synchronizefx.core.metamodel.MetaModel$2.run(MetaModel.java:120)
at de.saxsys.synchronizefx.core.metamodel.ModelWalkingSynchronizer.doWhenModelWalkerFinished(ModelWalkingSynchronizer.java:137)
at de.saxsys.synchronizefx.core.metamodel.MetaModel.execute(MetaModel.java:116)
at de.saxsys.synchronizefx.core.clientserver.DomainModelClient.recive(DomainModelClient.java:90)
at de.saxsys.synchronizefx.netty.base.client.InboundCommandHandlerClient.channelRead0(InboundCommandHandlerClient.java:48)
at de.saxsys.synchronizefx.netty.base.client.InboundCommandHandlerClient.channelRead0(InboundCommandHandlerClient.java:33)
at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
...
WHAT SHOULD HAPPEN
- No exception is thrown
- both properties have the correct value.