void (final XmlWriter writer) { writer.startElement(UIFormXmlConstants.ELEMENT_PROPERTIES); try { final IntrospectedProperty[] introspectedProperties = getPalette().getIntrospectedProperties(this); for (final IntrospectedProperty property : introspectedProperties) { if (isMarkedAsModified(property)) { final Object value = property.getValue(this); if (value != null) { writer.startElement(property.getName()); try { //noinspection unchecked property.write(value, writer); } finally { writer.endElement(); } } } } } finally { writer.endElement(); // properties } writeClientProperties(writer); }