@Test public void testEventTrace() { KevoreeFactory factory = new DefaultKevoreeFactory(); ContainerRoot model = factory.createContainerRoot(); ContainerNode node0 = factory.createContainerNode(); node0.setName("node0"); model.addNodes(node0); ContainerNode web = factory.createContainerNode(); web.setName("web"); model.addNodes(web); node0.addHosts(web); try { ContainerRoot clonedModel = (ContainerRoot) cloner.clone(model); EventListenerImpl listener = new EventListenerImpl(); model.addModelTreeListener(listener); ContainerNode newChildNode = factory.createContainerNode(); newChildNode.setName("toto"); model.addNodes(newChildNode); node0.addHosts(newChildNode); listener.traceSequence.applyOn(clonedModel); } catch (Exception e) { e.printStackTrace(); } }
public class EventTraceTester3 { private KevoreeFactory factory = new DefaultKevoreeFactory(); private ModelCloner cloner = factory.createModelCloner(); private ModelCompare compare = factory.createModelCompare(); private JSONModelSerializer saver = factory.createJSONSerializer(); private JSONModelLoader loader = factory.createJSONLoader(); @Test public void testEventTrace() { KevoreeFactory factory = new DefaultKevoreeFactory(); ContainerRoot model = factory.createContainerRoot(); ContainerNode node0 = factory.createContainerNode(); node0.setName("node0"); model.addNodes(node0); ContainerNode web = factory.createContainerNode(); web.setName("web"); model.addNodes(web); node0.addHosts(web); try { ContainerRoot clonedModel = (ContainerRoot) cloner.clone(model); EventListenerImpl listener = new EventListenerImpl(); model.addModelTreeListener(listener); ContainerNode newChildNode = factory.createContainerNode(); newChildNode.setName("toto"); model.addNodes(newChildNode); node0.addHosts(newChildNode); listener.traceSequence.applyOn(clonedModel); } catch (Exception e) { e.printStackTrace(); } } private class EventListenerImpl implements ModelElementListener { TraceSequence traceSequence = new TraceSequence(factory); @Override public void elementChanged(ModelEvent modelEvent) { traceSequence.append(new Event2Trace(compare).convert(modelEvent)); } } }