litesoft
@ 804
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
// This Source Code is in the Public Domain per: http://litesoft.org/License.txt package org.litesoft.core.simpletypes.nonpublic; import org.litesoft.core.simpletypes.*; import org.litesoft.core.typeutils.*; public abstract class AbstractFloatingPointLong<T extends AbstractFloatingPointLong<T>> extends LL_FloatingPointLong<T> { private NumericFormatControl mFormatControl; /** * @deprecated - for Serialization */ protected AbstractFloatingPointLong() { } public AbstractFloatingPointLong( long pValue, int pDecimalPlaces, NumericFormatControl pFormatControl ) { super( pValue, pDecimalPlaces ); if ( pDecimalPlaces < 0 ) { throw new IllegalArgumentException( "DecimalPlaces can not be < 0" ); } Objects.assertNotNull( "NumericFormatControl", mFormatControl = pFormatControl ); } public NumericFormatControl getFormatControl() { return mFormatControl; } @Override public String toString() { return getToStringParts().toString( mFormatControl ); } public void setValueTo( String pToString ) { if ( pToString != null ) { LL_FloatingPointLong<T> floatingPointLong = LLparse( mFormatControl, pToString ); setValueTo( floatingPointLong ); } } public void setValueTo( LL_FloatingPointLong<T> pFloatingPointLong ) { if ( pFloatingPointLong != null ) { LLsetValueTo( pFloatingPointLong.getLongValue(), pFloatingPointLong.getDecimalPlaces() ); } } abstract protected void LLsetValueTo( long pValue, int pDecimalPlaces ); // todo: Math support... } |