package org.flexo.model;
import org.openflexo.model.StringConverterLibrary.Converter;
import org.openflexo.model.annotations.Getter;
import org.openflexo.model.annotations.Initializer;
import org.openflexo.model.annotations.ModelEntity;
import org.openflexo.model.annotations.Parameter;
import org.openflexo.model.annotations.Setter;
import org.openflexo.model.annotations.StringConverter;
import org.openflexo.model.exceptions.InvalidDataException;
import org.openflexo.model.factory.ModelFactory;
@ModelEntity
public interface WKFAnnotation extends FlexoModelObject {
public static final String TEXT = "text";
@Override
@Initializer
public WKFAnnotation init();
@Override
@Initializer
public WKFAnnotation init(@Parameter(TEXT) String text);
@Getter(TEXT)
public String getText();
@Setter(TEXT)
public void setText(String s);
@StringConverter
public static final Converter<WKFAnnotation> CONVERTER = new WKFAnnotationConverter();
public static class WKFAnnotationConverter extends Converter<WKFAnnotation> {
public WKFAnnotationConverter() {
super(WKFAnnotation.class);
}
@Override
public WKFAnnotation convertFromString(String value, ModelFactory factory) throws InvalidDataException {
return factory.newInstance(WKFAnnotation.class, value);
}
@Override
public String convertToString(WKFAnnotation value) {
return value.getText();
}
}
}