home *** CD-ROM | disk | FTP | other *** search
- package java.sql;
-
- import java.util.Date;
-
- public class Timestamp extends Date {
- private int nanos;
-
- public Timestamp(int var1, int var2, int var3, int var4, int var5, int var6, int var7) {
- super(var1, var2, var3, var4, var5, var6);
- if (var7 <= 999999999 && var7 >= 0) {
- this.nanos = var7;
- } else {
- throw new IllegalArgumentException("nanos > 999999999 or < 0");
- }
- }
-
- public Timestamp(long var1) {
- super(var1 / 1000L * 1000L);
- this.nanos = (int)(var1 % 1000L * 1000000L);
- if (this.nanos < 0) {
- this.nanos += 1000000000;
- ((Date)this).setTime((var1 / 1000L - 1L) * 1000L);
- }
-
- }
-
- public static Timestamp valueOf(String var0) {
- int var10 = 0;
- int var14 = 0;
- int var15 = 0;
- int var16 = 0;
- String var17 = "Timestamp format must be yyyy-mm-dd hh:mm:ss.fffffffff";
- String var18 = "000000000";
- if (var0 == null) {
- throw new IllegalArgumentException("null string");
- } else {
- var0 = var0.trim();
- int var13 = var0.indexOf(32);
- if (var13 > 0) {
- String var1 = var0.substring(0, var13);
- String var2 = var0.substring(var13 + 1);
- int var11 = var1.indexOf(45);
- int var12 = var1.indexOf(45, var11 + 1);
- if (var2 == null) {
- throw new IllegalArgumentException(var17);
- } else {
- var14 = var2.indexOf(58);
- var15 = var2.indexOf(58, var14 + 1);
- var16 = var2.indexOf(46, var15 + 1);
- if (var11 > 0 & var12 > 0 & var12 < var1.length() - 1) {
- int var4 = Integer.parseInt(var1.substring(0, var11)) - 1900;
- int var5 = Integer.parseInt(var1.substring(var11 + 1, var12)) - 1;
- int var6 = Integer.parseInt(var1.substring(var12 + 1));
- if (var14 > 0 & var15 > 0 & var15 < var2.length() - 1) {
- int var7 = Integer.parseInt(var2.substring(0, var14));
- int var8 = Integer.parseInt(var2.substring(var14 + 1, var15));
- int var9;
- if (var16 > 0 & var16 < var2.length() - 1) {
- var9 = Integer.parseInt(var2.substring(var15 + 1, var16));
- String var3 = var2.substring(var16 + 1);
- if (var3.length() > 9) {
- throw new IllegalArgumentException(var17);
- }
-
- if (!Character.isDigit(var3.charAt(0))) {
- throw new IllegalArgumentException(var17);
- }
-
- var3 = var3 + var18.substring(0, 9 - var3.length());
- var10 = Integer.parseInt(var3);
- } else {
- if (var16 > 0) {
- throw new IllegalArgumentException(var17);
- }
-
- var9 = Integer.parseInt(var2.substring(var15 + 1));
- }
-
- return new Timestamp(var4, var5, var6, var7, var8, var9, var10);
- } else {
- throw new IllegalArgumentException();
- }
- } else {
- throw new IllegalArgumentException(var17);
- }
- }
- } else {
- throw new IllegalArgumentException(var17);
- }
- }
- }
-
- public String toString() {
- int var1 = super.getYear() + 1900;
- int var2 = super.getMonth() + 1;
- int var3 = super.getDate();
- int var4 = super.getHours();
- int var5 = super.getMinutes();
- int var6 = super.getSeconds();
- String var14 = "000000000";
- String var7 = String.valueOf(var1);
- String var8;
- if (var2 < 10) {
- var8 = "0" + var2;
- } else {
- var8 = Integer.toString(var2);
- }
-
- String var9;
- if (var3 < 10) {
- var9 = "0" + var3;
- } else {
- var9 = Integer.toString(var3);
- }
-
- String var10;
- if (var4 < 10) {
- var10 = "0" + var4;
- } else {
- var10 = Integer.toString(var4);
- }
-
- String var11;
- if (var5 < 10) {
- var11 = "0" + var5;
- } else {
- var11 = Integer.toString(var5);
- }
-
- String var12;
- if (var6 < 10) {
- var12 = "0" + var6;
- } else {
- var12 = Integer.toString(var6);
- }
-
- String var13;
- if (this.nanos == 0) {
- var13 = "0";
- } else {
- var13 = Integer.toString(this.nanos);
- var13 = var14.substring(0, 9 - var13.length()) + var13;
- char[] var15 = new char[var13.length()];
- var13.getChars(0, var13.length(), var15, 0);
-
- int var16;
- for(var16 = 8; var15[var16] == '0'; --var16) {
- }
-
- var13 = new String(var15, 0, var16 + 1);
- }
-
- return var7 + "-" + var8 + "-" + var9 + " " + var10 + ":" + var11 + ":" + var12 + "." + var13;
- }
-
- public int getNanos() {
- return this.nanos;
- }
-
- public void setNanos(int var1) {
- if (var1 <= 999999999 && var1 >= 0) {
- this.nanos = var1;
- } else {
- throw new IllegalArgumentException("nanos > 999999999 or < 0");
- }
- }
-
- public boolean equals(Timestamp var1) {
- if (super.equals(var1)) {
- return this.nanos == var1.nanos;
- } else {
- return false;
- }
- }
-
- public boolean before(Timestamp var1) {
- if (super.before(var1)) {
- return true;
- } else if (super.equals(var1)) {
- return this.nanos < var1.nanos;
- } else {
- return false;
- }
- }
-
- public boolean after(Timestamp var1) {
- if (super.after(var1)) {
- return true;
- } else if (super.equals(var1)) {
- return this.nanos > var1.nanos;
- } else {
- return false;
- }
- }
- }
-