After updating from CVS, it is most likely necessary to do an "ant clean" to get rid of the old generated maker classes, before building.
I have not yet removed the properties.xsl file from CVS. I guess it should be removed since it isn't used anymore.
I've found an argument for unnesting the maker classes from their property classes: If we want to put the makers in its own package and I think it would be a little cleaner to do that. Using the fo.properties package seems natural.
Does anyone know why we wrap the datatypes instances in a property instance? I think we could avoid the property instance by having the datatypes extends an AbstractProperty class which implement a Property interface:
public interface Property { public Length getLength(); public Space getSpace(); ... }
public class AbstractProperty { public Length getLength() { return null; }
public Space getSpace() { return null; }
... }
public class Length extends AbstractProperty { // Rest of datatypes.Length class. ...
public Length getLength() { return this; } }
With such a change, one of the remaining differences between HEAD and Alt-Design would be in the naming of the classes:
Property = PropertyValue
Property.Maker = Property
Comments?
regards, finn