package com.ripple.core.coretypes.uint; import com.ripple.core.fields.Field; import com.ripple.core.fields.Type; import com.ripple.core.fields.UInt32Field; import com.ripple.core.serialized.BytesSink; import com.ripple.core.serialized.TypeTranslator; import java.math.BigInteger; public class UInt32 extends UInt<UInt32> { public final static UInt32 ZERO = new UInt32(0); public static TypeTranslator<UInt32> translate = new UINTTranslator<UInt32>() { @Override public UInt32 newInstance(BigInteger i) { return new UInt32(i); } @Override public int byteWidth() { return 4; } }; public UInt32(byte[] bytes) { super(bytes); } public UInt32(BigInteger value) { super(value); } public UInt32(Number s) { super(s); } public UInt32(String s) { super(s); } public UInt32(String s, int radix) { super(s, radix); } @Override public int getByteWidth() { return 4; } @Override public UInt32 instanceFrom(BigInteger n) { return new UInt32(n); } @Override public Long value() { return longValue(); } private UInt32(){} private static UInt32Field int32Field(final Field f) { return new UInt32Field(){ @Override public Field getField() {return f;}}; } static public UInt32Field Flags = int32Field(Field.Flags); static public UInt32Field SourceTag = int32Field(Field.SourceTag); static public UInt32Field Sequence = int32Field(Field.Sequence); static public UInt32Field PreviousTxnLgrSeq = int32Field(Field.PreviousTxnLgrSeq); static public UInt32Field LedgerSequence = int32Field(Field.LedgerSequence); static public UInt32Field CloseTime = int32Field(Field.CloseTime); static public UInt32Field ParentCloseTime = int32Field(Field.ParentCloseTime); static public UInt32Field SigningTime = int32Field(Field.SigningTime); static public UInt32Field Expiration = int32Field(Field.Expiration); static public UInt32Field TransferRate = int32Field(Field.TransferRate); static public UInt32Field WalletSize = int32Field(Field.WalletSize); static public UInt32Field OwnerCount = int32Field(Field.OwnerCount); static public UInt32Field DestinationTag = int32Field(Field.DestinationTag); static public UInt32Field HighQualityIn = int32Field(Field.HighQualityIn); static public UInt32Field HighQualityOut = int32Field(Field.HighQualityOut); static public UInt32Field LowQualityIn = int32Field(Field.LowQualityIn); static public UInt32Field LowQualityOut = int32Field(Field.LowQualityOut); static public UInt32Field QualityIn = int32Field(Field.QualityIn); static public UInt32Field QualityOut = int32Field(Field.QualityOut); static public UInt32Field StampEscrow = int32Field(Field.StampEscrow); static public UInt32Field BondAmount = int32Field(Field.BondAmount); static public UInt32Field LoadFee = int32Field(Field.LoadFee); static public UInt32Field OfferSequence = int32Field(Field.OfferSequence); static public UInt32Field FirstLedgerSequence = int32Field(Field.FirstLedgerSequence); static public UInt32Field LastLedgerSequence = int32Field(Field.LastLedgerSequence); static public UInt32Field TransactionIndex = int32Field(Field.TransactionIndex); static public UInt32Field OperationLimit = int32Field(Field.OperationLimit); static public UInt32Field ReferenceFeeUnits = int32Field(Field.ReferenceFeeUnits); static public UInt32Field ReserveBase = int32Field(Field.ReserveBase); static public UInt32Field ReserveIncrement = int32Field(Field.ReserveIncrement); static public UInt32Field SetFlag = int32Field(Field.SetFlag); static public UInt32Field ClearFlag = int32Field(Field.ClearFlag); @Override public Object toJSON() { return translate.toJSON(this); } @Override public byte[] toBytes() { return translate.toBytes(this); } @Override public String toHex() { return translate.toHex(this); } @Override public void toBytesSink(BytesSink to) { translate.toBytesSink(this, to); } @Override public Type type() { return Type.UInt32; } }