1 24 package org.riotfamily.forms.factory; 25 26 import java.util.Iterator ; 27 import java.util.LinkedList ; 28 import java.util.List ; 29 30 import org.riotfamily.forms.Element; 31 import org.riotfamily.forms.ElementFactory; 32 import org.riotfamily.forms.Form; 33 import org.riotfamily.forms.FormInitializer; 34 import org.springframework.validation.Validator; 35 36 37 43 public class DefaultFormFactory implements FormFactory { 44 45 46 private Class beanClass; 47 48 49 private List childFactories = new LinkedList (); 50 51 private FormInitializer initializer; 52 53 private Validator validator; 54 55 public Class getBeanClass() { 56 return this.beanClass; 57 } 58 59 public void setBeanClass(Class beanClass) { 60 this.beanClass = beanClass; 61 } 62 63 66 public void addChildFactory(ElementFactory factory) { 67 childFactories.add(factory); 68 } 69 70 public List getChildFactories() { 71 return this.childFactories; 72 } 73 74 public void setInitializer(FormInitializer initializer) { 75 this.initializer = initializer; 76 } 77 78 public void setValidator(Validator validator) { 79 this.validator = validator; 80 } 81 82 public Form createForm() { 83 Form form = new Form(); 84 form.setBeanClass(beanClass); 85 form.setInitializer(initializer); 86 form.setValidator(validator); 87 Iterator it = childFactories.iterator(); 88 while (it.hasNext()) { 89 ElementFactory factory = (ElementFactory) it.next(); 90 Element child = factory.createElement(null, form); 91 form.addElement(child); 92 } 93 return form; 94 } 95 96 } 97 | Popular Tags |