package org.nocket.gen.domain; import gengui.domain.AbstractDomainReference; import java.io.File; import org.nocket.gen.domain.ref.DomainReferenceFactoryI; public class DMDWebGenContext<E extends AbstractDomainReference> { private final Boolean generatePanel; private final File srcDir; private final File genDir; private final DomainReferenceFactoryI<E> refFactory; private final WebDomainProperties domainProperties; private FileAndClassNameStrategy<E> fileAndClassNameStrategy; public DMDWebGenContext(Boolean generatePanel, String srcDir, String genDir, DomainReferenceFactoryI<E> refFactory) { if (srcDir != null) { this.srcDir = new File(srcDir); } else { this.srcDir = null; } if (genDir != null) { this.genDir = new File(genDir); } else { this.genDir = null; } this.generatePanel = generatePanel; this.refFactory = refFactory; this.domainProperties = new WebDomainProperties(refFactory.getRootReference().getRef().getDomainClass()); } public Boolean getGeneratePanel() { return generatePanel; } public File getSrcDir() { return srcDir != null ? srcDir : new File(domainProperties.getSrcFilePath()); } public File getGenDir() { return genDir != null ? genDir : new File(domainProperties.getHTMLFilePath()); } public DomainReferenceFactoryI<E> getRefFactory() { return refFactory; } public WebDomainProperties getDomainProperties() { return domainProperties; } public String[] getHeaderlinks() { return domainProperties.getHTMLHeaderLinks(); } public FileAndClassNameStrategy<E> getFileAndClassNameStrategy() { if (fileAndClassNameStrategy == null) { fileAndClassNameStrategy = new FileAndClassNameStrategy<E>(this, refFactory .getRootReference()); } return fileAndClassNameStrategy; } public void setFileAndClassNameStrategy(FileAndClassNameStrategy<E> fileAndClassNameStrategy) { this.fileAndClassNameStrategy = fileAndClassNameStrategy; } }