/src/main/java/org/ocpsoft/prettytime/TimeUnit.java
Java | 48 lines | 5 code | 4 blank | 39 comment | 0 complexity | 671541332b4198775b3e64837ad70fa2 MD5 | raw file
Possible License(s): Apache-2.0
1/* 2 * Copyright 2012 <a href="mailto:lincolnbaxter@gmail.com">Lincoln Baxter, III</a> 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16package org.ocpsoft.prettytime; 17 18 19/** 20 * Defines a Unit of time (e.g. seconds, minutes, hours) and its conversion to milliseconds. 21 * 22 * @author <a href="mailto:lincolnbaxter@gmail.com">Lincoln Baxter, III</a> 23 */ 24public interface TimeUnit { 25 26 /** 27 * The number of milliseconds represented by each instance of this TimeUnit. 28 * Must be a positive number greater than zero. 29 */ 30 public long getMillisPerUnit(); 31 32 /** 33 * The maximum quantity of this Unit to be used as a threshold for the next 34 * largest Unit (e.g. if one <code>Second</code> represents 1000ms, and 35 * <code>Second</code> has a maxQuantity of 5, then if the difference 36 * between compared timestamps is larger than 5000ms, PrettyTime will move 37 * on to the next smallest TimeUnit for calculation; <code>Minute</code>, by 38 * default) 39 * <p> 40 * millisPerUnit * maxQuantity = maxAllowedMs 41 * <p> 42 * If maxQuantity is zero, it will be equal to the next highest 43 * <code>TimeUnit.getMillisPerUnit() / 44 * this.getMillisPerUnit()</code> or infinity if there are no greater 45 * TimeUnits 46 */ 47 public long getMaxQuantity(); 48}