com.edsdev.jconvert.domain
Class FractionalConversion

java.lang.Object
  extended bycom.edsdev.jconvert.domain.Conversion
      extended bycom.edsdev.jconvert.domain.FractionalConversion
All Implemented Interfaces:
java.lang.Comparable

public class FractionalConversion
extends Conversion

This is the class that represents a fraction conversion in the application. By fractional conversion we mean 1/34, 23/1 or some other fractional factor

Author:
Ed Sarrazin Created on Jul 14, 2007 10:10:14 AM

Constructor Summary
FractionalConversion(java.lang.String fromUnit, java.lang.String fromUnitAbbr, java.lang.String toUnit, java.lang.String toUnitAbbr, java.lang.String fromToFactor, double fromToOffset)
           
 
Method Summary
 java.lang.String convertValue(java.math.BigInteger numerator, java.math.BigInteger denominator, java.lang.String pFromUnit)
          Converts a value represented by a numerator and denominator, returning a String representation of the result
 double convertValue(double value, java.lang.String pFromUnit)
          Converts a value for you are returns the answer.
 java.lang.String divide(Conversion byConversion)
          Divide this conversion by the passed in conversion
 java.math.BigInteger getEffectiveNumerator(FractionalConversion fc)
          Simply returns what the numerator would be if this was not a composite fraction.
 java.math.BigInteger getFromToBottomFactor()
           
 double getFromToFactor()
           
 java.lang.String getFromToFactorString()
           
 java.math.BigInteger getFromToTopFactor()
           
 java.math.BigInteger getFromToWholeNumber()
           
 java.lang.String multiply(Conversion byConversion)
          Multiply this conversion by the passed in conversion
static java.lang.String reduceFraction(java.lang.String val)
           
 void setFromToBottomFactor(java.math.BigInteger fromToBottomFactor)
           
 void setFromToFactor(double fromToFactor)
           
 void setFromToFactorString(java.lang.String fromToFactor)
           
 void setFromToTopFactor(java.math.BigInteger fromToTopFactor)
           
 void setFromToWholeNumber(java.math.BigInteger fromToWholeNumber)
           
 
Methods inherited from class com.edsdev.jconvert.domain.Conversion
compareTo, convertFraction, convertValue, convertValue, createEmptyInstance, createInstance, equals, getBigInteger, getConversionPartner, getConversionPartnerAbbrev, getFromToOffset, getFromUnit, getFromUnitAbbr, getGenerationAge, getRoundedResult, getToUnit, getToUnitAbbr, hashCode, isFraction, isWholeNumber, setFromToOffset, setFromUnit, setFromUnitAbbr, setGenerationAge, setToUnit, setToUnitAbbr, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

FractionalConversion

public FractionalConversion(java.lang.String fromUnit,
                            java.lang.String fromUnitAbbr,
                            java.lang.String toUnit,
                            java.lang.String toUnitAbbr,
                            java.lang.String fromToFactor,
                            double fromToOffset)
Method Detail

convertValue

public double convertValue(double value,
                           java.lang.String pFromUnit)
Description copied from class: Conversion
Converts a value for you are returns the answer.

Specified by:
convertValue in class Conversion
Parameters:
value - double value you want to convert
pFromUnit - Unit that you want to convert from
Returns:
answer If the fromUnit does not match the classes from unit, then it is assumed that you are converting the other way ex. System.out.println(conversion.convertValue(17, conversion.getFromUnit()));

convertValue

public java.lang.String convertValue(java.math.BigInteger numerator,
                                     java.math.BigInteger denominator,
                                     java.lang.String pFromUnit)
Description copied from class: Conversion
Converts a value represented by a numerator and denominator, returning a String representation of the result

Specified by:
convertValue in class Conversion
Parameters:
numerator -
denominator -
pFromUnit -
Returns:

multiply

public java.lang.String multiply(Conversion byConversion)
Description copied from class: Conversion
Multiply this conversion by the passed in conversion

Specified by:
multiply in class Conversion
Parameters:
byConversion - Conversion you are multiplying by
Returns:
String representation of the value. I know this is a bit hokey, but it allows me to pass this back into the create method and generate another conversion if need be. This String number can be a fraction, decimal or integer.

divide

public java.lang.String divide(Conversion byConversion)
Description copied from class: Conversion
Divide this conversion by the passed in conversion

Specified by:
divide in class Conversion
Parameters:
byConversion - Conversion you are dividing by
Returns:
String representation of the value. I know this is a bit hokey, but it allows me to pass this back into the create method and generate another conversion if need be. This String number can be a fraction, decimal or integer.

getFromToBottomFactor

public java.math.BigInteger getFromToBottomFactor()
Specified by:
getFromToBottomFactor in class Conversion

setFromToBottomFactor

public void setFromToBottomFactor(java.math.BigInteger fromToBottomFactor)
Specified by:
setFromToBottomFactor in class Conversion

getFromToTopFactor

public java.math.BigInteger getFromToTopFactor()
Specified by:
getFromToTopFactor in class Conversion

setFromToTopFactor

public void setFromToTopFactor(java.math.BigInteger fromToTopFactor)
Specified by:
setFromToTopFactor in class Conversion

getFromToFactor

public double getFromToFactor()
Specified by:
getFromToFactor in class Conversion
Returns:
double representation of the FromToFacor - may not be applicable to all implementing classes.

setFromToFactor

public void setFromToFactor(double fromToFactor)
Specified by:
setFromToFactor in class Conversion
Parameters:
fromToFactor - sets the double value of the fromToFactor - may not be applicable to all implementing classes.

setFromToFactorString

public void setFromToFactorString(java.lang.String fromToFactor)
Specified by:
setFromToFactorString in class Conversion

getEffectiveNumerator

public java.math.BigInteger getEffectiveNumerator(FractionalConversion fc)
Simply returns what the numerator would be if this was not a composite fraction. Example 1 5/8 would be 13

Parameters:
fc - FractionalConversion to evaluate
Returns:
"effective numerator"

getFromToWholeNumber

public java.math.BigInteger getFromToWholeNumber()
Specified by:
getFromToWholeNumber in class Conversion

setFromToWholeNumber

public void setFromToWholeNumber(java.math.BigInteger fromToWholeNumber)
Specified by:
setFromToWholeNumber in class Conversion

reduceFraction

public static java.lang.String reduceFraction(java.lang.String val)

getFromToFactorString

public java.lang.String getFromToFactorString()
Specified by:
getFromToFactorString in class Conversion


JConvert - opensource project by Ed Sarrazin