docs: @FFDCIgnore(Exception.class)
      public static long parseLong(Object configAlias, String propertyKey, Object obj, long defaultValue) {
          if (obj != null) {
              try {
                  if (obj instanceof String)
                      return Long.parseLong((String) obj);
                  else if (obj instanceof Short)
                      return ((Short) obj).longValue();
                  else if (obj instanceof Integer)
                      return ((Integer) obj).longValue();
                  else if (obj instanceof Long)
                      return (Long) obj;
              } catch (Exception e) {
                  Tr.warning(tc, "invalidLong", configAlias, propertyKey, obj);
                  throw new IllegalArgumentException("Long value could not be parsed: key=" + propertyKey + ", value=" + obj, e);
              }
  
              // unknown type
              Tr.warning(tc, "invalidLong", configAlias, propertyKey, obj);
              throw new IllegalArgumentException("Long value could not be parsed: key=" + propertyKey + ", value=" + obj);
          }
  
          return defaultValue;
      }