Return-Path: Delivered-To: apmail-directory-commits-archive@www.apache.org Received: (qmail 78671 invoked from network); 2 Dec 2010 11:41:26 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 2 Dec 2010 11:41:26 -0000 Received: (qmail 29551 invoked by uid 500); 2 Dec 2010 11:41:26 -0000 Delivered-To: apmail-directory-commits-archive@directory.apache.org Received: (qmail 29405 invoked by uid 500); 2 Dec 2010 11:41:25 -0000 Mailing-List: contact commits-help@directory.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@directory.apache.org Delivered-To: mailing list commits@directory.apache.org Received: (qmail 28861 invoked by uid 99); 2 Dec 2010 11:41:25 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 02 Dec 2010 11:41:24 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 02 Dec 2010 11:41:22 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 9729523889E3; Thu, 2 Dec 2010 11:39:49 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1041334 - /directory/apacheds/branches/apacheds-kerberos-codec-2.0/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/KerberosTime.java Date: Thu, 02 Dec 2010 11:39:49 -0000 To: commits@directory.apache.org From: elecharny@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20101202113949.9729523889E3@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: elecharny Date: Thu Dec 2 11:39:49 2010 New Revision: 1041334 URL: http://svn.apache.org/viewvc?rev=1041334&view=rev Log: Fixed some parts of the KerberosTime methods, added some missing others Modified: directory/apacheds/branches/apacheds-kerberos-codec-2.0/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/KerberosTime.java Modified: directory/apacheds/branches/apacheds-kerberos-codec-2.0/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/KerberosTime.java URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-kerberos-codec-2.0/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/KerberosTime.java?rev=1041334&r1=1041333&r2=1041334&view=diff ============================================================================== --- directory/apacheds/branches/apacheds-kerberos-codec-2.0/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/KerberosTime.java (original) +++ directory/apacheds/branches/apacheds-kerberos-codec-2.0/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/KerberosTime.java Thu Dec 2 11:39:49 2010 @@ -24,7 +24,6 @@ import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.TimeZone; -import java.util.regex.Pattern; import org.apache.directory.shared.ldap.util.StringTools; import org.slf4j.Logger; @@ -42,18 +41,6 @@ public class KerberosTime implements Com /** A logger for this class */ private static final Logger LOG = LoggerFactory.getLogger( KerberosTime.class ); - /** The GeneralizedDate pattern matching */ - private static final String GENERALIZED_TIME_PATTERN = - "^\\d{4}" // century + year : 0000 to 9999 - + "(0[1-9]|1[0-2])" // month : 01 to 12 - + "(0[1-9]|[12]\\d|3[01])" // day : 01 to 31 - + "([01]\\d|2[0-3])" // hour : 00 to 23 - + "([0-5]\\d)" // minute : 00 to 59 - + "([0-5]\\d)Z"; // second and UTC TZ - - /** The date pattern. The regexp pattern is immutable, only one instance needed. */ - private static final Pattern DATE_PATTERN = Pattern.compile( GENERALIZED_TIME_PATTERN ); - /** The format for a KerberosTime */ private static final SimpleDateFormat sdf = new SimpleDateFormat( "yyyyMMddHHmmss'Z'" ); @@ -91,6 +78,7 @@ public class KerberosTime implements Com public KerberosTime() { kerberosTime = System.currentTimeMillis(); + } @@ -107,7 +95,7 @@ public class KerberosTime implements Com } catch ( ParseException pe ) { - // TODO : mnaage exception + throw new IllegalArgumentException( "Bad time : " + date ); } } @@ -120,7 +108,7 @@ public class KerberosTime implements Com Calendar calendar = Calendar.getInstance( UTC ); calendar.setTimeInMillis( date ); this.date = sdf.format( calendar.getTime() ); - kerberosTime = date; + kerberosTime = calendar.getTimeInMillis(); } @@ -183,23 +171,10 @@ public class KerberosTime implements Com */ public void setDate( String date ) throws ParseException { - boolean result = DATE_PATTERN.matcher( date ).find(); - - if ( result ) + synchronized ( sdf ) { + kerberosTime = sdf.parse( date ).getTime(); this.date = date; - - synchronized ( sdf ) - { - kerberosTime = sdf.parse( date ).getTime(); - } - - LOG.debug( "Syntax valid for '{}'", date ); - } - else - { - LOG.debug( "Syntax invalid for '{}'", date ); - throw new IllegalArgumentException(); } } @@ -220,24 +195,12 @@ public class KerberosTime implements Com { return date; } - - - /** - * {@inheritDoc} - */ - public String toString() - { - return date; - } @Override public int hashCode() { - final int prime = 31; - int result = 1; - result = prime * result + ( ( date == null ) ? 0 : date.hashCode() ); - return result; + return (int)kerberosTime; } @@ -256,19 +219,7 @@ public class KerberosTime implements Com KerberosTime other = ( KerberosTime ) obj; - if ( date == null ) - { - if ( other.date != null ) - { - return false; - } - } - else if ( !date.equals( other.date ) ) - { - return false; - } - - return true; + return kerberosTime == other.kerberosTime; } @@ -338,5 +289,24 @@ public class KerberosTime implements Com { return kerberosTime > ktime.kerberosTime; } - + + + /** + * Returns whether this {@link KerberosTime} is zero. + * + * @return true if this {@link KerberosTime} is zero. + */ + public boolean isZero() + { + return kerberosTime == 0; + } + + + /** + * {@inheritDoc} + */ + public String toString() + { + return date; + } }