Version.java :  » Game » connect4java » com » googlecode » connect4java » pref » Java Open Source

Java Open Source » Game » connect4java 
connect4java » com » googlecode » connect4java » pref » Version.java
package com.googlecode.connect4java.pref;

/**
 * 
 * @author richard.stromer
 * @version 1.1b5
 * @since 0.2
 */
public class Version {
  private static final Type TYPE = Type.BETA;
  private static final int MAJOR = 1;
  private static final int MINOR = 1;
  private static final int PATCH = 5;
  private static final int REVISION = 36;
  
  
  public static String getType() {
    return TYPE.toString();
  }
  public static int getMajor() {
    return MAJOR;
  }
  public static int getMinor() {
    return MINOR;
  }
  public static int getPatch() {
    return PATCH;
  }
  public static int getRevision() {
    return REVISION;
  }
  
  public static String getVersion() {
    return getVersion("%m.%n.%r");
  }
  public static String getVersionPatch() {
    return getVersion("%m.%n%t%p");
  }
  public static String getVersion(String format) {
    format = format.replace("%t", getType());
    format = format.replace("%m", Integer.toString(getMajor()));
    format = format.replace("%n", Integer.toString(getMinor()));
    if(TYPE!=Type.STABLE) {
      format = format.replace("%p", Integer.toString(getPatch()));
    } else {
      format = format.replace("%p", "");
    }
    format = format.replace("%r", Integer.toString(getRevision()));
    return format;
  }
    
  @Override
  public String toString() {
    StringBuilder sb = new StringBuilder();
    sb.append(getClass().getName());
    sb.append("[");
    sb.append(MAJOR);
    sb.append(".");
    sb.append(MINOR);
    sb.append(".");
    sb.append(REVISION);
    sb.append(TYPE);
    if(TYPE!=Type.STABLE) {
      sb.append(PATCH);
    }
    sb.append("]");
    sb.append("@");
    sb.append(Integer.toHexString(hashCode()));
    return sb.toString();
  }
  private enum Type {
    ALPHA, BETA, STABLE, PATCH;
    
    public String toString() {
      return super.toString().substring(0, 1).toLowerCase();
    }
  }
}

java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.