86 lines
2.1 KiB
Java
86 lines
2.1 KiB
Java
package cy.agorise.crystalwallet.requestmanagers;
|
|
|
|
import android.content.Context;
|
|
|
|
import cy.agorise.crystalwallet.enums.CryptoCoin;
|
|
import cy.agorise.crystalwallet.models.GeneralCoinAccount;
|
|
|
|
public class GeneralAccountSendRequest extends CryptoNetInfoRequest {
|
|
/**
|
|
* The status code of this request
|
|
*/
|
|
public enum StatusCode{
|
|
NOT_STARTED,
|
|
SUCCEEDED,
|
|
NO_INTERNET,
|
|
NO_SERVER_CONNECTION,
|
|
BAD_TO_ADDRESS,
|
|
NO_FEE,
|
|
NO_BALANCE,
|
|
PETITION_FAILED
|
|
}
|
|
|
|
// The app context
|
|
private Context mContext;
|
|
//The soruce Account
|
|
private GeneralCoinAccount mAccount;
|
|
// The destination account address
|
|
private String mToAccount;
|
|
// The amount of the transaction
|
|
private long mAmount;
|
|
// The memo, can be null
|
|
private String mMemo;
|
|
// The state of this request
|
|
private StatusCode status = StatusCode.NOT_STARTED;
|
|
|
|
public GeneralAccountSendRequest(CryptoCoin coin, Context context, GeneralCoinAccount account, String toAccount, long amount, String memo) {
|
|
super(coin);
|
|
this.mContext = context;
|
|
this.mAccount = account;
|
|
this.mToAccount = toAccount;
|
|
this.mAmount = amount;
|
|
this.mMemo = memo;
|
|
}
|
|
|
|
public GeneralAccountSendRequest(CryptoCoin coin, Context context, GeneralCoinAccount account, String toAccount, long amount) {
|
|
this(coin,context,account,toAccount,amount,null);
|
|
|
|
}
|
|
|
|
public Context getContext() {
|
|
return mContext;
|
|
}
|
|
|
|
public GeneralCoinAccount getAccount() {
|
|
return mAccount;
|
|
}
|
|
|
|
public String getToAccount() {
|
|
return mToAccount;
|
|
}
|
|
|
|
public long getAmount() {
|
|
return mAmount;
|
|
}
|
|
|
|
public String getMemo() {
|
|
return mMemo;
|
|
}
|
|
|
|
public void validate(){
|
|
if ((this.status != StatusCode.NOT_STARTED)){
|
|
this._fireOnCarryOutEvent();
|
|
}
|
|
}
|
|
|
|
public void setStatus(StatusCode code){
|
|
this.status = code;
|
|
this._fireOnCarryOutEvent();
|
|
}
|
|
|
|
public StatusCode getStatus() {
|
|
return status;
|
|
}
|
|
|
|
}
|