
eu.ginere.base.web.vo.AbstractClassWriter Maven / Gradle / Ivy
package eu.ginere.base.web.vo;
import java.beans.IntrospectionException;
import java.util.ArrayList;
import java.util.Hashtable;
import java.util.List;
import java.util.Map;
import eu.ginere.base.util.descriptor.AbstractClassDescriptor;
import eu.ginere.base.util.descriptor.InnerPropertyDescriptor;
public abstract class AbstractClassWriter {
// protected final Class clazz;
protected final List list;
protected final Map map;
protected AbstractClassDescriptor descriptor;
public AbstractClassWriter(AbstractClassDescriptor descriptor) throws IntrospectionException{
// this.clazz=clazz;
List innerList=descriptor.getList();
this.list=getProperties(innerList);
this.map=new Hashtable(list.size());
for (VoPropertyDescriptor voProperty:list){
map.put(voProperty.getName(),voProperty);
}
this.descriptor=descriptor;
}
private static List getProperties(List innerList) throws IntrospectionException{
List list=new ArrayList(innerList.size());
for (InnerPropertyDescriptor propertyDescriptor:innerList){
list.add(new VoPropertyDescriptor(propertyDescriptor));
}
return list;
}
public void setVisible(String name,boolean value){
if (map.containsKey(name)){
VoPropertyDescriptor property=map.get(name);
property.setVisible(value);
}
}
public void setType(String name,String value){
if (map.containsKey(name)){
VoPropertyDescriptor property=map.get(name);
property.setType(value);
}
}
public void setFormat(String name,String value){
if (map.containsKey(name)){
VoPropertyDescriptor property=map.get(name);
property.setFormat(value);
}
}
public String print(){
return innerPrinter();
}
protected abstract String innerPrinter();
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy