package com.quemb.qmbform.annotation.validators; import com.quemb.qmbform.R; import com.quemb.qmbform.annotation.FormValidator; import com.quemb.qmbform.descriptor.RowDescriptor; import com.quemb.qmbform.descriptor.RowValidationError; /** * Created by pmaccamp on 8/26/2015. */ public class PositiveNumberValidator implements FormValidator { @Override public RowValidationError validate(RowDescriptor descriptor) { Object valueData = descriptor.getValue().getValue(); if (valueData != null) { if (valueData instanceof Number && ((Number) valueData).doubleValue() > 0) { return null; } else if (valueData instanceof Double && ((Double) valueData) > 0) { return null; } else if (valueData instanceof Float && ((Float) valueData) > 0) { return null; } else if (valueData instanceof Integer && ((Integer) valueData) > 0) { return null; } } return new RowValidationError(descriptor, R.string.nonpositive_number_error); } }