class RangePropertyEditor extends PropertyEditorSupport {

    private Range range;

    @Override
    public Object getValue() {
        return range;
    }

    @Override
    public void setValue(Object value) {
        this.range = (Range) value;
    }

    @Override
    public String getAsText() {
        if (range != null) {
            return range.getRangeType().getSimpleName() + " - " + range;
        } else {
            return "null";
        }
    }

    @Override
    public void setAsText(String text) throws IllegalArgumentException {<FILL_FUNCTION_BODY>}
}

        if (!text.equals("null")) {
            String[] arr = text.split(" - ");
            if (arr[0].equals("Float")) {
                range = new Range(Float.parseFloat(arr[1]), Float.parseFloat(arr[2]));
            } else if (arr[0].equals("Double")) {
                range = new Range(Double.parseDouble(arr[1]), Double.parseDouble(arr[2]));
            } else if (arr[0].equals("Integer")) {
                range = new Range(Integer.parseInt(arr[1]), Integer.parseInt(arr[2]));
            } else if (arr[0].equals("Long")) {
                range = new Range(Long.parseLong(arr[1]), Long.parseLong(arr[2]));
            } else if (arr[0].equals("Short")) {
                range = new Range(Short.parseShort(arr[1]), Short.parseShort(arr[2]));
            } else if (arr[0].equals("Byte")) {
                range = new Range(Byte.parseByte(arr[1]), Byte.parseByte(arr[2]));
            }
        }
    
<methods>public void <init>() ,public void <init>(java.lang.Object) ,public synchronized void addPropertyChangeListener(java.beans.PropertyChangeListener) ,public void firePropertyChange() ,public java.lang.String getAsText() ,public java.awt.Component getCustomEditor() ,public java.lang.String getJavaInitializationString() ,public java.lang.Object getSource() ,public java.lang.String[] getTags() ,public java.lang.Object getValue() ,public boolean isPaintable() ,public void paintValue(java.awt.Graphics, java.awt.Rectangle) ,public synchronized void removePropertyChangeListener(java.beans.PropertyChangeListener) ,public void setAsText(java.lang.String) throws java.lang.IllegalArgumentException,public void setSource(java.lang.Object) ,public void setValue(java.lang.Object) ,public boolean supportsCustomEditor() <variables>private Vector<java.beans.PropertyChangeListener> listeners,private java.lang.Object source,private java.lang.Object value