public Parcel deserialize(Binder binder) throws Exception { return new Parcel(binder); }
/** * Create paid transaction, which consist from prepared TransactionPack you want to register * and payment contract that will be * spend to process transaction. * <br><br> * * @param payload is prepared TransactionPack you want to register in the Universa. * @param payment is approved contract with "U" belongs to you. * @param amount is number of "U" you want to spend to register payload contract. * @param keys is own private keys, which are set as owner of payment contract * @param withTestPayment if true {@link Parcel} will be created with test payment * @return parcel, it ready to send to the Universa. */ public synchronized static Parcel createParcel(TransactionPack payload, Contract payment, int amount, Set<PrivateKey> keys, boolean withTestPayment) { Contract paymentDecreased = payment.createRevision(keys); if (withTestPayment) { paymentDecreased.getStateData().set("test_transaction_units", payment.getStateData().getIntOrThrow("test_transaction_units") - amount); } else { paymentDecreased.getStateData().set("transaction_units", payment.getStateData().getIntOrThrow("transaction_units") - amount); } paymentDecreased.seal(); Parcel parcel = new Parcel(payload, paymentDecreased.getTransactionPack()); return parcel; }
/** * Create paid transaction, which consist from contract you want to register and payment contract that will be * spend to process transaction. * <br><br> * * @param payload is prepared contract you want to register in the Universa. * @param payment is approved contract with "U" belongs to you. * @param amount is number of "U" you want to spend to register payload contract. * @param keys is own private keys, which are set as owner of payment contract * @param withTestPayment if true {@link Parcel} will be created with test payment * @return parcel, it ready to send to the Universa. */ public synchronized static Parcel createParcel(Contract payload, Contract payment, int amount, Set<PrivateKey> keys, boolean withTestPayment) { Contract paymentDecreased = payment.createRevision(keys); paymentDecreased.getTransactionalData().set("id",payload.getId().toBase64String()); if (withTestPayment) { paymentDecreased.getStateData().set("test_transaction_units", payment.getStateData().getIntOrThrow("test_transaction_units") - amount); } else { paymentDecreased.getStateData().set("transaction_units", payment.getStateData().getIntOrThrow("transaction_units") - amount); } paymentDecreased.seal(); Parcel parcel = new Parcel(payload.getTransactionPack(), paymentDecreased.getTransactionPack()); return parcel; }
@Test(timeout = 90000) public void declinePaymentAndPaymentWithChangedData2() throws Exception { Set<PrivateKey> stepaPrivateKeys = new HashSet<>(); stepaPrivateKeys.add(new PrivateKey(Do.read(ROOT_PATH + "keys/stepan_mamontov.private.unikey"))); Contract uContract = getApprovedUContract(); // stepaPrivateKeys - is also U keys Contract paymentDecreased = uContract.createRevision(stepaPrivateKeys); paymentDecreased.getStateData().set("transaction_units", uContract.getStateData().getIntOrThrow("transaction_units") - 5); paymentDecreased.seal(); Contract modifiedU = paymentDecreased.createRevision(stepaPrivateKeys); modifiedU.getStateData().set("transaction_units", modifiedU.getStateData().getIntOrThrow("transaction_units") - 1); modifiedU.seal(); Parcel parcel = new Parcel(modifiedU.getTransactionPack(), paymentDecreased.getTransactionPack()); System.out.println("-------------"); node.registerParcel(parcel); synchronized (uContractLock) { uContract = parcel.getPaymentContract(); } waitAndCheckState(parcel, ItemState.UNDEFINED); }
parcel = new Parcel(payload.getTransactionPack(),payment.getTransactionPack());
paymentDecreased.traceErrors(); Parcel parcel = new Parcel(stepaCoins.getTransactionPack(), paymentDecreased.getTransactionPack());
payload = mainContract.getTransactionPack(); Parcel parcel = new Parcel(payload, paymentDecreased.getTransactionPack());
stepaCoins.traceErrors(); Parcel parcel = new Parcel(stepaCoins.getTransactionPack(), paymentDecreased.getTransactionPack());
stepaCoins.traceErrors(); Parcel parcel = new Parcel(stepaCoins.getTransactionPack(), paymentDecreased.getTransactionPack());
stepaCoins.traceErrors(); Parcel parcel = new Parcel(stepaCoins.getTransactionPack(), paymentDecreased.getTransactionPack());
stepaCoins.traceErrors(); Parcel parcel = new Parcel(stepaCoins.getTransactionPack(), paymentDecreased.getTransactionPack());
paymentDecreased.seal(); Parcel parcel = new Parcel(stepaCoins.getTransactionPack(), paymentDecreased.getTransactionPack());