Class GenericInteger
- java.lang.Object
-
- java.lang.Number
-
- org.ow2.authzforce.core.pdp.api.value.GenericInteger
-
- All Implemented Interfaces:
Serializable
,Comparable<GenericInteger>
- Direct Known Subclasses:
ArbitrarilyBigInteger
,LongInteger
,MediumInteger
public abstract class GenericInteger extends Number implements Comparable<GenericInteger>
Generic Integer, to be used as underlying type forIntegerValue
implementations, i.e. as a superclass for small (java short), medium (java int) or large integers (java long or BigInteger)- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description GenericInteger()
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description abstract GenericInteger
abs()
Returns the absolute value ofthis
.abstract GenericInteger
add(GenericInteger other)
Add integer to this.abstract BigInteger
bigIntegerValue()
Convert to BigIntegerabstract GenericInteger
divide(GenericInteger divisor)
Dividethis
by some other number.abstract int
intValueExact()
Converts this value to a primitive int safely, i.e.abstract long
longValueExact()
Converts this value to a primitive long safely, i.e.abstract GenericInteger
multiply(GenericInteger factor)
Multiplythis
by another integer.abstract GenericInteger
remainder(GenericInteger divisor)
Returns this %divisor
abstract GenericInteger
subtract(GenericInteger subtractedValue)
Subtract a number from this.-
Methods inherited from class java.lang.Number
byteValue, doubleValue, floatValue, intValue, longValue, shortValue
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface java.lang.Comparable
compareTo
-
-
-
-
Method Detail
-
intValueExact
public abstract int intValueExact() throws ArithmeticException
Converts this value to a primitive int safely, i.e. checking for lost information.- Returns:
- this converted to an int
- Throws:
ArithmeticException
- if the value of this will not exactly fit into an int.- See Also:
- The CERT Oracle Secure Coding Standard for Java - NUM00-J. Detect or prevent integer overflow
-
longValueExact
public abstract long longValueExact()
Converts this value to a primitive long safely, i.e. checking for lost information.- Returns:
- this converted to an int
- Throws:
ArithmeticException
- if the value of this will not exactly fit into a long.- See Also:
- The CERT Oracle Secure Coding Standard for Java - NUM00-J. Detect or prevent integer overflow
-
bigIntegerValue
public abstract BigInteger bigIntegerValue()
Convert to BigInteger- Returns:
- this as
BigInteger
-
abs
public abstract GenericInteger abs()
Returns the absolute value ofthis
. Used by the XACML "abs" functions.- Returns:
- the absolute value
-
add
public abstract GenericInteger add(GenericInteger other)
Add integer to this. Used by the XACML numeric *-add functions.- Parameters:
other
- value to add to this value- Returns:
- this + other.
- Throws:
ArithmeticException
- if the result overflows the value space of this type
-
subtract
public abstract GenericInteger subtract(GenericInteger subtractedValue)
Subtract a number from this. Used by XACML numeric *-subtract functions.- Parameters:
subtractedValue
- value to be subtracted fromthis
- Returns:
- this - subtractedValue
- Throws:
ArithmeticException
- if the result overflows the value space of this type
-
multiply
public abstract GenericInteger multiply(GenericInteger factor)
Multiplythis
by another integer. Used by the XACML "multiply" functions.- Parameters:
factor
- factor (other integer to multiply by)- Returns:
- this * factor
- Throws:
ArithmeticException
- if the result overflows the value space of this type
-
divide
public abstract GenericInteger divide(GenericInteger divisor)
Dividethis
by some other number. Used by XACML *-divide functions.- Parameters:
divisor
- number by whichthis
is divided- Returns:
- the result quotient
- Throws:
ArithmeticException
- if divisor is zero
-
remainder
public abstract GenericInteger remainder(GenericInteger divisor) throws ArithmeticException
Returns this %divisor
- Parameters:
divisor
- second argument- Returns:
- this % divisor
- Throws:
ArithmeticException
- if divisor is zero
-
-