167 lines
3.8 KiB
Java
167 lines
3.8 KiB
Java
package cy.agorise.crystalwallet.models;
|
|
|
|
import cy.agorise.crystalwallet.enums.CryptoCoin;
|
|
|
|
/**
|
|
* General Coin Transaction Input/Output
|
|
*
|
|
* This class represent each Input or Output Transaction of a General Coin Transaction
|
|
*
|
|
* Created by henry on 06/02/2017.
|
|
*/
|
|
|
|
public class GTxIO {
|
|
/**
|
|
* The id on the database
|
|
*/
|
|
private long mId = -1;
|
|
/**
|
|
* The Coin type of this transaction
|
|
*/
|
|
private CryptoCoin mType;
|
|
/**
|
|
* The index on the transaction Input/Output
|
|
*/
|
|
private int mIndex;
|
|
/**
|
|
* The address that this transaction Input/Output belongs
|
|
*/
|
|
private GeneralCoinAddress mAddress;
|
|
/**
|
|
* The transaction that this Input/Output belongs
|
|
*/
|
|
private GeneralTransaction mTransaction;
|
|
/**
|
|
* The amount
|
|
*/
|
|
private long mAmount;
|
|
/**
|
|
* If this transaction is output or input
|
|
*/
|
|
private boolean mIsOut;
|
|
/**
|
|
* The address of this transaction as String
|
|
*/
|
|
private String mAddressString;
|
|
/**
|
|
* The Script as Hex
|
|
*/
|
|
private String mScriptHex;
|
|
/**
|
|
* If this is a transaction output, the original transaction where this is input
|
|
*/
|
|
private String mOriginalTxId;
|
|
|
|
/**
|
|
* Empty Constructor
|
|
*/
|
|
public GTxIO() {
|
|
|
|
}
|
|
|
|
/**
|
|
* General Constructor, used by the DB.
|
|
*
|
|
* @param id The id in the dataabase
|
|
* @param type The coin mType
|
|
* @param address The addres fo an account on the wallet, or null if the address is external
|
|
* @param transaction The transaction where this belongs
|
|
* @param amount The amount with the lowest precision
|
|
* @param isOut if this is an output
|
|
* @param addressString The string of the General Coin address, this can't be null
|
|
* @param index The index on the transaction
|
|
* @param scriptHex The script in hex String
|
|
*/
|
|
public GTxIO(long id, CryptoCoin type, GeneralCoinAddress address, GeneralTransaction transaction, long amount, boolean isOut, String addressString, int index, String scriptHex) {
|
|
this.mId = id;
|
|
this.mType = type;
|
|
this.mAddress = address;
|
|
this.mTransaction = transaction;
|
|
this.mAmount = amount;
|
|
this.mIsOut = isOut;
|
|
this.mAddressString = addressString;
|
|
this.mIndex = index;
|
|
this.mScriptHex = scriptHex;
|
|
}
|
|
|
|
public long getId() {
|
|
return mId;
|
|
}
|
|
|
|
public void setId(long id) {
|
|
this.mId = id;
|
|
}
|
|
|
|
public CryptoCoin getType() {
|
|
return mType;
|
|
}
|
|
|
|
public void setType(CryptoCoin type) {
|
|
this.mType = type;
|
|
}
|
|
|
|
public int getIndex() {
|
|
return mIndex;
|
|
}
|
|
|
|
public void setIndex(int index) {
|
|
this.mIndex = index;
|
|
}
|
|
|
|
public GeneralCoinAddress getAddress() {
|
|
return mAddress;
|
|
}
|
|
|
|
public void setAddress(GeneralCoinAddress address) {
|
|
this.mAddress = address;
|
|
}
|
|
|
|
public GeneralTransaction getTransaction() {
|
|
return mTransaction;
|
|
}
|
|
|
|
public void setTransaction(GeneralTransaction transaction) {
|
|
this.mTransaction = transaction;
|
|
}
|
|
|
|
public long getAmount() {
|
|
return mAmount;
|
|
}
|
|
|
|
public void setAmount(long amount) {
|
|
this.mAmount = amount;
|
|
}
|
|
|
|
public boolean isOut() {
|
|
return mIsOut;
|
|
}
|
|
|
|
public void setOut(boolean out) {
|
|
mIsOut = out;
|
|
}
|
|
|
|
public String getAddressString() {
|
|
return mAddressString;
|
|
}
|
|
|
|
public void setAddressString(String addressString) {
|
|
this.mAddressString = addressString;
|
|
}
|
|
|
|
public String getScriptHex() {
|
|
return mScriptHex;
|
|
}
|
|
|
|
public void setScriptHex(String scriptHex) {
|
|
this.mScriptHex = scriptHex;
|
|
}
|
|
|
|
public String getOriginalTxid() {
|
|
return mOriginalTxId;
|
|
}
|
|
|
|
public void setOriginalTxid(String originalTxid) {
|
|
this.mOriginalTxId = originalTxid;
|
|
}
|
|
}
|