Github user revans2 commented on a diff in the pull request:

    https://github.com/apache/storm/pull/2502#discussion_r159968476
  
    --- Diff: storm-client/src/jvm/org/apache/storm/utils/ObjectReader.java ---
    @@ -76,6 +76,32 @@ public static Integer getInt(Object o, Integer 
defaultValue) {
             throw new IllegalArgumentException("Don't know how to convert " + 
o + " to int");
         }
     
    +    public static Long getLong(Object o) {
    +        return getLong(o, null);
    +    }
    +
    +    public static Long getLong(Object o, Long defaultValue) {
    +        if (null == o) {
    +            return defaultValue;
    +        }
    +
    +        if ( o instanceof Long ||
    +                o instanceof Integer ||
    +                o instanceof Short ||
    +                o instanceof Byte) {
    +            return ((Number) o).longValue();
    +        } else if (o instanceof Double) {
    +            final long l = (Long) o;
    --- End diff --
    
    This is not going to work here as a Long can never be larger then MAX_VALUE 
for a long or smaller then MIN_VALUE for a Long. Technically I think there may 
be a bug in getInt if the number is larger then a Long can hold.


---

Reply via email to