Java Doc for TimeUnit.java in  » Rule-Engine » drolls-Rule-Engine » org » drools » util » concurrent » locks » Java Source Code / Java DocumentationJava Source Code and Java Documentation

Java Source Code / Java Documentation
1. 6.0 JDK Core
2. 6.0 JDK Modules
3. 6.0 JDK Modules com.sun
4. 6.0 JDK Modules com.sun.java
5. 6.0 JDK Modules sun
6. 6.0 JDK Platform
7. Ajax
8. Apache Harmony Java SE
9. Aspect oriented
10. Authentication Authorization
11. Blogger System
12. Build
13. Byte Code
14. Cache
15. Chart
16. Chat
17. Code Analyzer
18. Collaboration
19. Content Management System
20. Database Client
21. Database DBMS
22. Database JDBC Connection Pool
23. Database ORM
24. Development
25. EJB Server geronimo
26. EJB Server GlassFish
27. EJB Server JBoss 4.2.1
28. EJB Server resin 3.1.5
29. ERP CRM Financial
30. ESB
31. Forum
32. GIS
33. Graphic Library
34. Groupware
35. HTML Parser
36. IDE
37. IDE Eclipse
38. IDE Netbeans
39. Installer
40. Internationalization Localization
41. Inversion of Control
42. Issue Tracking
43. J2EE
44. JBoss
45. JMS
46. JMX
47. Library
48. Mail Clients
49. Net
50. Parser
51. PDF
52. Portal
53. Profiler
54. Project Management
55. Report
56. RSS RDF
57. Rule Engine
58. Science
59. Scripting
60. Search Engine
61. Security
62. Sevlet Container
63. Source Control
64. Swing Library
65. Template Engine
66. Test Coverage
67. Testing
68. UML
69. Web Crawler
70. Web Framework
71. Web Mail
72. Web Server
73. Web Services
74. Web Services apache cxf 2.0.1
75. Web Services AXIS2
76. Wiki Engine
77. Workflow Engines
78. XML
79. XML UI
Java
Java Tutorial
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
Photoshop Tutorials
Maya Tutorials
Flash Tutorials
3ds-Max Tutorials
Illustrator Tutorials
GIMP Tutorials
C# / C Sharp
C# / CSharp Tutorial
C# / CSharp Open Source
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
Python Tutorial
Python Open Source
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
XML
XML Tutorial
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
Java Source Code / Java Documentation » Rule Engine » drolls Rule Engine » org.drools.util.concurrent.locks 
Source Cross Reference  Class Diagram Java Document (Java Doc) 


java.lang.Object
   org.drools.util.concurrent.locks.TimeUnit

TimeUnit
abstract public class TimeUnit implements java.io.Serializable(Code)
A TimeUnit represents time durations at a given unit of granularity and provides utility methods to convert across units, and to perform timing and delay operations in these units. A TimeUnit does not maintain time information, but only helps organize and use time representations that may be maintained separately across various contexts. A nanosecond is defined as one thousandth of a microsecond, a microsecond as one thousandth of a millisecond, a millisecond as one thousandth of a second, a minute as sixty seconds, an hour as sixty minutes, and a day as twenty four hours.

A TimeUnit is mainly used to inform time-based methods how a given timing parameter should be interpreted. For example, the following code will timeout in 50 milliseconds if the edu.emory.mathcs.backport.java.util.concurrent.locks.Lock lock is not available:

  Lock lock = ...;
 if ( lock.tryLock(50L, TimeUnit.MILLISECONDS) ) ...
 
while this code will timeout in 50 seconds:
 Lock lock = ...;
 if ( lock.tryLock(50L, TimeUnit.SECONDS) ) ...
 
Note however, that there is no guarantee that a particular timeout implementation will be able to notice the passage of time at the same granularity as the given TimeUnit.
since:
   1.5
author:
   Doug Lea


Field Summary
final static  longC0
    
final static  longC1
    
final static  longC2
    
final static  longC3
    
final static  longC4
    
final static  longC5
    
final static  longC6
    
final public static  TimeUnitDAYS
    
final public static  TimeUnitHOURS
    
final static  longMAX
    
final public static  TimeUnitMICROSECONDS
    
final public static  TimeUnitMILLISECONDS
    
final public static  TimeUnitMINUTES
    
final public static  TimeUnitNANOSECONDS
    
final public static  TimeUnitSECONDS
    

Constructor Summary
 TimeUnit(int index, String name)
    

Method Summary
abstract public  longconvert(long sourceDuration, TimeUnit sourceUnit)
     Convert the given time duration in the given unit to this unit.
abstract  intexcessNanos(long d, long m)
     Utility to compute the excess-nanosecond argument to wait, sleep, join.
public  Stringname()
     Returns the name of this enum constant, exactly as declared in its enum declaration.
public  intordinal()
     Returns the ordinal of this enumeration constant (its position in its enum declaration, where the initial constant is assigned an ordinal of zero).
protected  ObjectreadResolve()
    
public  voidsleep(long timeout)
     Performs a Thread.sleep using this unit. This is a convenience method that converts time arguments into the form required by the Thread.sleep method.
Parameters:
  timeout - the maximum time to sleep.
public  voidtimedJoin(Thread thread, long timeout)
     Performs a timed Thread.join using this time unit. This is a convenience method that converts time arguments into the form required by the Thread.join method.
Parameters:
  thread - the thread to wait for
Parameters:
  timeout - the maximum time to wait.
public  voidtimedWait(Object obj, long timeout)
     Performs a timed Object.wait using this time unit. This is a convenience method that converts timeout arguments into the form required by the Object.wait method.

For example, you could implement a blocking poll method (see BlockingQueue.poll BlockingQueue.poll ) using:

  public synchronized  Object poll(long timeout, TimeUnit unit) throws InterruptedException {
 while (empty) {
 unit.timedWait(this, timeout);
 ...
 }
 }

Parameters:
  obj - the object to wait on
Parameters:
  timeout - the maximum time to wait.
abstract public  longtoDays(long duration)
     Equivalent to DAYS.convert(duration, this).
abstract public  longtoHours(long duration)
     Equivalent to HOURS.convert(duration, this).
abstract public  longtoMicros(long duration)
     Equivalent to MICROSECONDS.convert(duration, this).
abstract public  longtoMillis(long duration)
     Equivalent to MILLISECONDS.convert(duration, this).
abstract public  longtoMinutes(long duration)
     Equivalent to MINUTES.convert(duration, this).
abstract public  longtoNanos(long duration)
     Equivalent to NANOSECONDS.convert(duration, this).
abstract public  longtoSeconds(long duration)
     Equivalent to SECONDS.convert(duration, this).
public  StringtoString()
    
public static  TimeUnitvalueOf(String name)
     Returns the enum constant of this type with the specified name.
public static  TimeUnit[]values()
    
static  longx(long d, long m, long over)
     Scale d by m, checking for overflow.

Field Detail
C0
final static long C0(Code)



C1
final static long C1(Code)



C2
final static long C2(Code)



C3
final static long C3(Code)



C4
final static long C4(Code)



C5
final static long C5(Code)



C6
final static long C6(Code)



DAYS
final public static TimeUnit DAYS(Code)



HOURS
final public static TimeUnit HOURS(Code)



MAX
final static long MAX(Code)



MICROSECONDS
final public static TimeUnit MICROSECONDS(Code)



MILLISECONDS
final public static TimeUnit MILLISECONDS(Code)



MINUTES
final public static TimeUnit MINUTES(Code)



NANOSECONDS
final public static TimeUnit NANOSECONDS(Code)



SECONDS
final public static TimeUnit SECONDS(Code)




Constructor Detail
TimeUnit
TimeUnit(int index, String name)(Code)
Internal constructor




Method Detail
convert
abstract public long convert(long sourceDuration, TimeUnit sourceUnit)(Code)
Convert the given time duration in the given unit to this unit. Conversions from finer to coarser granularities truncate, so lose precision. For example converting 999 milliseconds to seconds results in 0. Conversions from coarser to finer granularities with arguments that would numerically overflow saturate to Long.MIN_VALUE if negative or Long.MAX_VALUE if positive.

For example, to convert 10 minutes to milliseconds, use: TimeUnit.MILLISECONDS.convert(10L, TimeUnit.MINUTES)
Parameters:
  sourceDuration - the time duration in the given sourceUnit
Parameters:
  sourceUnit - the unit of the sourceDuration argument the converted duration in this unit,or Long.MIN_VALUE if conversion would negativelyoverflow, or Long.MAX_VALUE if it would positively overflow.




excessNanos
abstract int excessNanos(long d, long m)(Code)
Utility to compute the excess-nanosecond argument to wait, sleep, join.
Parameters:
  d - the duration
Parameters:
  m - the number of milliseconds the number of nanoseconds



name
public String name()(Code)
Returns the name of this enum constant, exactly as declared in its enum declaration. Most programmers should use the TimeUnit.toString() method in preference to this one, as the toString method may return a more user-friendly name. This method is designed primarily for use in specialized situations where correctness depends on getting the exact name, which will not vary from release to release. the name of this enum constant



ordinal
public int ordinal()(Code)
Returns the ordinal of this enumeration constant (its position in its enum declaration, where the initial constant is assigned an ordinal of zero). Most programmers will have no use for this method. It is designed for use by sophisticated enum-based data structures, such as EnumSet and EnumMap. the ordinal of this enumeration constant



readResolve
protected Object readResolve() throws ObjectStreamException(Code)



sleep
public void sleep(long timeout) throws InterruptedException(Code)
Performs a Thread.sleep using this unit. This is a convenience method that converts time arguments into the form required by the Thread.sleep method.
Parameters:
  timeout - the maximum time to sleep. If less thanor equal to zero, do not sleep at all.
throws:
  InterruptedException - if interrupted while sleeping.
See Also:   java.lang.Thread.sleep



timedJoin
public void timedJoin(Thread thread, long timeout) throws InterruptedException(Code)
Performs a timed Thread.join using this time unit. This is a convenience method that converts time arguments into the form required by the Thread.join method.
Parameters:
  thread - the thread to wait for
Parameters:
  timeout - the maximum time to wait. If less thanor equal to zero, do not wait at all.
throws:
  InterruptedException - if interrupted while waiting.
See Also:   java.lang.Thread.join(longint)



timedWait
public void timedWait(Object obj, long timeout) throws InterruptedException(Code)
Performs a timed Object.wait using this time unit. This is a convenience method that converts timeout arguments into the form required by the Object.wait method.

For example, you could implement a blocking poll method (see BlockingQueue.poll BlockingQueue.poll ) using:

  public synchronized  Object poll(long timeout, TimeUnit unit) throws InterruptedException {
 while (empty) {
 unit.timedWait(this, timeout);
 ...
 }
 }

Parameters:
  obj - the object to wait on
Parameters:
  timeout - the maximum time to wait. If less thanor equal to zero, do not wait at all.
throws:
  InterruptedException - if interrupted while waiting.
See Also:   java.lang.Object.wait(longint)



toDays
abstract public long toDays(long duration)(Code)
Equivalent to DAYS.convert(duration, this).
Parameters:
  duration - the duration the converted duration
See Also:   TimeUnit.convert
since:
   1.6



toHours
abstract public long toHours(long duration)(Code)
Equivalent to HOURS.convert(duration, this).
Parameters:
  duration - the duration the converted duration,or Long.MIN_VALUE if conversion would negativelyoverflow, or Long.MAX_VALUE if it would positively overflow.
See Also:   TimeUnit.convert
since:
   1.6



toMicros
abstract public long toMicros(long duration)(Code)
Equivalent to MICROSECONDS.convert(duration, this).
Parameters:
  duration - the duration the converted duration,or Long.MIN_VALUE if conversion would negativelyoverflow, or Long.MAX_VALUE if it would positively overflow.
See Also:   TimeUnit.convert



toMillis
abstract public long toMillis(long duration)(Code)
Equivalent to MILLISECONDS.convert(duration, this).
Parameters:
  duration - the duration the converted duration,or Long.MIN_VALUE if conversion would negativelyoverflow, or Long.MAX_VALUE if it would positively overflow.
See Also:   TimeUnit.convert



toMinutes
abstract public long toMinutes(long duration)(Code)
Equivalent to MINUTES.convert(duration, this).
Parameters:
  duration - the duration the converted duration,or Long.MIN_VALUE if conversion would negativelyoverflow, or Long.MAX_VALUE if it would positively overflow.
See Also:   TimeUnit.convert
since:
   1.6



toNanos
abstract public long toNanos(long duration)(Code)
Equivalent to NANOSECONDS.convert(duration, this).
Parameters:
  duration - the duration the converted duration,or Long.MIN_VALUE if conversion would negativelyoverflow, or Long.MAX_VALUE if it would positively overflow.
See Also:   TimeUnit.convert



toSeconds
abstract public long toSeconds(long duration)(Code)
Equivalent to SECONDS.convert(duration, this).
Parameters:
  duration - the duration the converted duration,or Long.MIN_VALUE if conversion would negativelyoverflow, or Long.MAX_VALUE if it would positively overflow.
See Also:   TimeUnit.convert



toString
public String toString()(Code)



valueOf
public static TimeUnit valueOf(String name)(Code)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
Parameters:
  name - the name of the enum constant to be returned the enum constant with the specified name
throws:
  IllegalArgumentException - if this enum type has no constant with the specified name



values
public static TimeUnit[] values()(Code)



x
static long x(long d, long m, long over)(Code)
Scale d by m, checking for overflow. This has a short name to make above code more readable.



Methods inherited from java.lang.Object
native protected Object clone() throws CloneNotSupportedException(Code)(Java Doc)
public boolean equals(Object obj)(Code)(Java Doc)
protected void finalize() throws Throwable(Code)(Java Doc)
final native public Class getClass()(Code)(Java Doc)
native public int hashCode()(Code)(Java Doc)
final native public void notify()(Code)(Java Doc)
final native public void notifyAll()(Code)(Java Doc)
public String toString()(Code)(Java Doc)
final native public void wait(long timeout) throws InterruptedException(Code)(Java Doc)
final public void wait(long timeout, int nanos) throws InterruptedException(Code)(Java Doc)
final public void wait() throws InterruptedException(Code)(Java Doc)

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