package org.nocket.gen.domain; import org.nocket.gen.domain.visitor.DomainElementVisitorI; import gengui.domain.AbstractDomainReference; public class DomainProcessor<E extends AbstractDomainReference> { private final DMDWebGenContext<E> context; private final DomainProcessorStrategy<E> strategy; public DomainProcessor(DMDWebGenContext<E> context, DomainProcessorStrategy<E> strategy) { this.context = context; this.strategy = strategy; } public DomainProcessor(DMDWebGenContext<E> context, DomainElementVisitorI<E> visitor) { this.context = context; this.strategy = new SinglePassStrategy<E>(visitor); } public void process() { strategy.process(context, context.getRefFactory().getRootReference()); } }