JavaVersion.java 2.59 KB
package org.apache.commons.lang3;

import org.apache.commons.lang3.math.NumberUtils;

public enum JavaVersion
{
  private final float a;
  private final String b;
  
  private JavaVersion(float paramFloat, String paramString)
  {
    this.a = paramFloat;
    this.b = paramString;
  }
  
  private static float a()
  {
    float f = b(System.getProperty("java.specification.version", "99.0"));
    if (f > 0.0F) {
      return f;
    }
    return 99.0F;
  }
  
  static JavaVersion a(String paramString)
  {
    Object localObject2 = null;
    Object localObject1;
    if ("0.9".equals(paramString)) {
      localObject1 = JAVA_0_9;
    }
    int i;
    do
    {
      do
      {
        do
        {
          return (JavaVersion)localObject1;
          if ("1.1".equals(paramString)) {
            return JAVA_1_1;
          }
          if ("1.2".equals(paramString)) {
            return JAVA_1_2;
          }
          if ("1.3".equals(paramString)) {
            return JAVA_1_3;
          }
          if ("1.4".equals(paramString)) {
            return JAVA_1_4;
          }
          if ("1.5".equals(paramString)) {
            return JAVA_1_5;
          }
          if ("1.6".equals(paramString)) {
            return JAVA_1_6;
          }
          if ("1.7".equals(paramString)) {
            return JAVA_1_7;
          }
          if ("1.8".equals(paramString)) {
            return JAVA_1_8;
          }
          if ("9".equals(paramString)) {
            return JAVA_9;
          }
          localObject1 = localObject2;
        } while (paramString == null);
        localObject1 = localObject2;
      } while (b(paramString) - 1.0D >= 1.0D);
      i = Math.max(paramString.indexOf('.'), paramString.indexOf(','));
      localObject1 = localObject2;
    } while (Float.parseFloat(paramString.substring(i + 1, Math.max(paramString.length(), paramString.indexOf(',', i)))) <= 0.9F);
    return JAVA_RECENT;
  }
  
  private static float b(String paramString)
  {
    float f = -1.0F;
    if (paramString.contains("."))
    {
      paramString = paramString.split("\\.");
      if (paramString.length >= 2) {
        f = NumberUtils.toFloat(paramString[0] + '.' + paramString[1], -1.0F);
      }
      return f;
    }
    return NumberUtils.toFloat(paramString, -1.0F);
  }
  
  public final boolean atLeast(JavaVersion paramJavaVersion)
  {
    return this.a >= paramJavaVersion.a;
  }
  
  public final String toString()
  {
    return this.b;
  }
}


/* Location:              /home/merong/decompile/hackery-dex2jar.jar!/org/apache/commons/lang3/JavaVersion.class
 * Java compiler version: 6 (50.0)
 * JD-Core Version:       0.7.1
 */