Package tech.units.indriya.unit
Class AnnotatedUnit<Q extends javax.measure.Quantity<Q>>
- java.lang.Object
-
- tech.units.indriya.AbstractUnit<Q>
-
- tech.units.indriya.unit.AnnotatedUnit<Q>
-
- Type Parameters:
Q
- The type of the quantity measured by this unit.
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Comparable<javax.measure.Unit<Q>>
,javax.measure.Unit<Q>
,ComparableUnit<Q>
public final class AnnotatedUnit<Q extends javax.measure.Quantity<Q>> extends AbstractUnit<Q>
This class represents an annotated unit.
Instances of this class are created through the
AbstractUnit.annotate(String)
method.- Since:
- 1.0
- Version:
- 1.3.2, Dezember 27, 2017
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class tech.units.indriya.AbstractUnit
AbstractUnit.Equalizer
-
-
Field Summary
Fields Modifier and Type Field Description private AbstractUnit<Q>
actualUnit
Holds the actual unit.private java.lang.String
annotation
Holds the annotation.private static long
serialVersionUID
-
Fields inherited from class tech.units.indriya.AbstractUnit
name, ONE, SYMBOL_TO_UNIT
-
-
Constructor Summary
Constructors Constructor Description AnnotatedUnit(AbstractUnit<Q> actualUnit, java.lang.String annotation)
Creates an annotated unit equivalent to the specified unit.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(java.lang.Object obj)
AbstractUnit<Q>
getActualUnit()
Returns the actual unit of this annotated unit (never an annotated unit itself).java.lang.String
getAnnotation()
Returns the annotation of this annotated unit.java.util.Map<? extends javax.measure.Unit<?>,java.lang.Integer>
getBaseUnits()
javax.measure.Dimension
getDimension()
java.lang.String
getSymbol()
javax.measure.UnitConverter
getSystemConverter()
Returns the converter from this unit to its unscaledSystem Unit
unit.int
hashCode()
javax.measure.Unit<Q>
toSystemUnit()
Returns the unscaledSI
unit from which this unit is derived.-
Methods inherited from class tech.units.indriya.AbstractUnit
alternate, annotate, asType, compareTo, divide, divide, divide, getActualType, getConverterTo, getConverterToAny, getName, getSystemUnit, inverse, isCompatible, isEquivalentOf, isSystemUnit, multiply, multiply, multiply, parse, pow, prefix, root, setName, setSymbol, shift, toString, transform
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
actualUnit
private final AbstractUnit<Q extends javax.measure.Quantity<Q>> actualUnit
Holds the actual unit.
-
annotation
private final java.lang.String annotation
Holds the annotation.
-
-
Constructor Detail
-
AnnotatedUnit
public AnnotatedUnit(AbstractUnit<Q> actualUnit, java.lang.String annotation)
Creates an annotated unit equivalent to the specified unit.- Parameters:
actualUnit
- the unit to be annotated.annotation
- the annotation.
-
-
Method Detail
-
getActualUnit
public AbstractUnit<Q> getActualUnit()
Returns the actual unit of this annotated unit (never an annotated unit itself).- Returns:
- the actual unit.
-
getAnnotation
public java.lang.String getAnnotation()
Returns the annotation of this annotated unit.- Returns:
- the annotation.
-
getSymbol
public java.lang.String getSymbol()
-
getBaseUnits
public java.util.Map<? extends javax.measure.Unit<?>,java.lang.Integer> getBaseUnits()
- Specified by:
getBaseUnits
in interfacejavax.measure.Unit<Q extends javax.measure.Quantity<Q>>
- Specified by:
getBaseUnits
in classAbstractUnit<Q extends javax.measure.Quantity<Q>>
-
toSystemUnit
public javax.measure.Unit<Q> toSystemUnit()
Description copied from class:AbstractUnit
Returns the unscaledSI
unit from which this unit is derived. The SI unit can be be used to identify a quantity given the unit. For example:static boolean isAngularVelocity(AbstractUnit> unit) { return unit.toSystemUnit().equals(RADIAN.divide(SECOND)); } assert(REVOLUTION.divide(MINUTE).isAngularVelocity()); // Returns true.
- Specified by:
toSystemUnit
in classAbstractUnit<Q extends javax.measure.Quantity<Q>>
- Returns:
- the unscaled metric unit from which this unit is derived.
-
getDimension
public javax.measure.Dimension getDimension()
- Specified by:
getDimension
in interfacejavax.measure.Unit<Q extends javax.measure.Quantity<Q>>
- Specified by:
getDimension
in classAbstractUnit<Q extends javax.measure.Quantity<Q>>
-
getSystemConverter
public javax.measure.UnitConverter getSystemConverter()
Description copied from class:AbstractUnit
Returns the converter from this unit to its unscaledSystem Unit
unit.- Specified by:
getSystemConverter
in classAbstractUnit<Q extends javax.measure.Quantity<Q>>
- Returns:
getConverterTo(this.toSystemUnit())
- See Also:
AbstractUnit.toSystemUnit()
-
hashCode
public int hashCode()
- Specified by:
hashCode
in classAbstractUnit<Q extends javax.measure.Quantity<Q>>
-
equals
public boolean equals(java.lang.Object obj)
- Specified by:
equals
in classAbstractUnit<Q extends javax.measure.Quantity<Q>>
-
-