class StyleBuilder extends AbstractStyleBuilder<Style> {

    public Style build() {
        if (unset) {
            return null;
        }

        Style s;
        if (fts.size() == 0) {
            s = sf.createNamedStyle();
            s.setName(name);
        } else {
            s = sf.createStyle();
            s.setName(name);
            if (styleAbstract != null)
                s.getDescription().setAbstract(new SimpleInternationalString(styleAbstract));
            if (title != null)
                s.getDescription().setTitle(new SimpleInternationalString(title));
            for (FeatureTypeStyleBuilder builder : fts) {
                s.featureTypeStyles().add(builder.build());
            }
            s.setDefault(isDefault);
        }

        reset();
        return s;
    }

    public  StyleBuilder();
      StyleBuilder(AbstractSLDBuilder<?> parent);

}