/*
* Copyright 2013-2014 the original author or authors.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package devcoin.wallet.ui;
import javax.annotation.Nonnull;
import com.google.devcoin.core.Transaction;
import com.google.devcoin.core.VerificationException;
import com.google.devcoin.core.Wallet;
import devcoin.wallet.WalletApplication;
/**
* @author Andreas Schildbach
*/
public abstract class AbstractOnDemandServiceActivity extends AbstractWalletActivity
{
protected void processDirectTransaction(@Nonnull final Transaction tx)
{
final Wallet wallet = getWalletApplication().getWallet();
try
{
if (wallet.isTransactionRelevant(tx))
{
wallet.receivePending(tx, null);
final WalletApplication application = (WalletApplication) getApplication();
application.broadcastTransaction(tx);
}
else
{
longToast("Direct transaction is not relevant for you.");
}
}
catch (final VerificationException x)
{
longToast("Direct transaction is not valid.");
}
}
}