Sounds like JMS (Java Messaging) is the appropriate tool for the job.
I'd prefer this to be a little project instead of a part of the
"catch-all" cleaning project.


I agree with this, a little project to reengineer the existing multicast functionality would be nice.
The things i would like to change in such a project are:


1) changing the interface

The current interface exists of:
public interface MMBaseChangeInterface {
public boolean handleMsg(String machine,String vnr,String id,String tb,String ctype);
public boolean changedNode(int nodenr,String tableName,String type);
public boolean waitUntilNodeChanged(MMObjectNode node);
public void checkWaitingNodes(String snumber);
public boolean commitXML(String machine,String vnr,String id,String tb,String ctype,String xml);
}


I would like to change this to something like:
public interface NodeChangeInterface {
public void changedNode(NodeChangedEvent nodeChangedEvent);
public boolean waitUntilNodeChanged(MMObjectNode node);
}
the other methods are part of the implementation itself and should not be in the interface.


2) Make the NodeChange implementation pluggable. At this moment when a multicast host is specified in mmbaseroot.xml the MMBaseMultiCast implementation will be used. When no hostname is specified a Dummy implementation will be used. I would like to specify the implementation to use in mmbaseroot.xml.

3) Think about the local changes, should they be part of the MMBase core (MMObjectBuilder) or should this be implemented in the MultiCast code (or whatever the name is going to be). With other words who should be responsable for local changes. Could it be desirable to run MMBase without local changes?

4) Due to the removal of unnecessary methods from the interface, these methods can be removed from the MMBaseChangeDummy.

5) I would like to reengineer the current Multicast implementation. Improove cohesion and encapsulation. Change the threading implementation that handles the incomming events.

6) Create a new implementation which uses something like RMI/JMS.

Are there developers interrested to become part of a little ChangeNode project?
If this is the case i will ask the MMC to approve to create a little project for this.


Rob Vermeulen












Reply via email to