code: public int set(int value)
      {
          String prevValue = setString(Integer.toString(limit(value)));
          if (prevValue == null) {
              prevValue = getDefaultValue();
              if (prevValue == null) {
                  return noValue();
              }
          }
  
          int v = Integer.parseInt(prevValue);
  
          return limit(v);
      }
docs: Sets the value of this integer property. The value is limited to the
  min/max range given during construction.
  
  @return the previous value, or if not set: the default value. If no
  default value exists, 0 if that value is in the range [minValue,
  maxValue], or minValue if 0 is not in the range