Skip to content

Commit a9f6793

Browse files
authored
Merge pull request tronprotocol#1088 from tronprotocol/release
Release
2 parents fdba19a + d25f09f commit a9f6793

28 files changed

+724
-140
lines changed

src/main/java/org/tron/core/Wallet.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -346,7 +346,8 @@ public AssetIssueList getAssetIssueList() {
346346

347347
public AssetIssueList getAssetIssueList(long offset, long limit) {
348348
AssetIssueList.Builder builder = AssetIssueList.newBuilder();
349-
List<AssetIssueCapsule> assetIssueList = dbManager.getAssetIssueStore().getAssetIssuesPaginated(offset, limit);
349+
List<AssetIssueCapsule> assetIssueList = dbManager.getAssetIssueStore()
350+
.getAssetIssuesPaginated(offset, limit);
350351
if (null == assetIssueList || assetIssueList.size() == 0) {
351352
return null;
352353
}
@@ -467,6 +468,7 @@ public Transaction getTransactionById(ByteString transactionId) {
467468
try {
468469
transactionCapsule = dbManager.getTransactionStore()
469470
.get(transactionId.toByteArray());
471+
470472
} catch (BadItemException e) {
471473
}
472474
if (transactionCapsule != null) {

src/main/java/org/tron/core/WalletSolidity.java

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,21 +2,28 @@
22

33
import com.google.protobuf.ByteString;
44
import java.util.List;
5+
import java.util.Objects;
56
import lombok.extern.slf4j.Slf4j;
67
import org.springframework.beans.factory.annotation.Autowired;
78
import org.springframework.stereotype.Component;
89
import org.tron.api.GrpcAPI.TransactionList;
910
import org.tron.common.utils.ByteArray;
11+
import org.tron.core.capsule.TransactionInfoCapsule;
12+
import org.tron.core.db.Manager;
1013
import org.tron.core.db.api.StoreAPI;
14+
import org.tron.core.exception.BadItemException;
1115
import org.tron.core.exception.NonUniqueObjectException;
1216
import org.tron.protos.Protocol.Transaction;
17+
import org.tron.protos.Protocol.TransactionInfo;
1318

1419
@Slf4j
1520
@Component
1621
public class WalletSolidity {
1722

1823
@Autowired
1924
private StoreAPI storeAPI;
25+
@Autowired
26+
private Manager dbManager;
2027

2128
public Transaction getTransactionById(ByteString id) {
2229
try {
@@ -28,7 +35,23 @@ public Transaction getTransactionById(ByteString id) {
2835
}
2936
return null;
3037
}
31-
38+
39+
public TransactionInfo getTransactionInfoById(ByteString id) {
40+
if (Objects.isNull(id)) {
41+
return null;
42+
}
43+
TransactionInfoCapsule transactionInfoCapsule = null;
44+
try {
45+
transactionInfoCapsule = dbManager.getTransactionHistoryStore()
46+
.get(id.toByteArray());
47+
} catch (BadItemException e) {
48+
}
49+
if (transactionInfoCapsule != null) {
50+
return transactionInfoCapsule.getInstance();
51+
}
52+
return null;
53+
}
54+
3255
public TransactionList getTransactionsFromThis(ByteString thisAddress, long offset, long limit) {
3356
List<Transaction> transactionsFromThis = storeAPI
3457
.getTransactionsFromThis(ByteArray.toHexString(thisAddress.toByteArray()), offset, limit);

src/main/java/org/tron/core/capsule/TransactionCapsule.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -172,7 +172,6 @@ public TransactionCapsule(com.google.protobuf.Message message, ContractType cont
172172
Transaction.raw.Builder transactionBuilder = Transaction.raw.newBuilder().addContract(
173173
Transaction.Contract.newBuilder().setType(contractType).setParameter(
174174
Any.pack(message)).build());
175-
logger.info("Transaction create succeeded!");
176175
transaction = Transaction.newBuilder().setRawData(transactionBuilder.build()).build();
177176
}
178177

@@ -181,7 +180,6 @@ public void createTransaction(com.google.protobuf.Message message, ContractType
181180
Transaction.raw.Builder transactionBuilder = Transaction.raw.newBuilder().addContract(
182181
Transaction.Contract.newBuilder().setType(contractType).setParameter(
183182
Any.pack(message)).build());
184-
logger.info("Transaction create succeeded!");
185183
transaction = Transaction.newBuilder().setRawData(transactionBuilder.build()).build();
186184
}
187185

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
package org.tron.core.capsule;
2+
3+
import com.google.protobuf.ByteString;
4+
import com.google.protobuf.InvalidProtocolBufferException;
5+
import lombok.extern.slf4j.Slf4j;
6+
import org.tron.core.exception.BadItemException;
7+
import org.tron.protos.Protocol.TransactionInfo;
8+
9+
@Slf4j
10+
public class TransactionInfoCapsule implements ProtoCapsule<TransactionInfo> {
11+
12+
private TransactionInfo transactionInfo;
13+
14+
/**
15+
* constructor TransactionCapsule.
16+
*/
17+
public TransactionInfoCapsule(TransactionInfo trxRet) {
18+
this.transactionInfo = trxRet;
19+
}
20+
21+
public TransactionInfoCapsule(byte[] data) throws BadItemException {
22+
try {
23+
this.transactionInfo = TransactionInfo.parseFrom(data);
24+
} catch (InvalidProtocolBufferException e) {
25+
throw new BadItemException("TransactionInfoCapsule proto data parse exception");
26+
}
27+
}
28+
29+
public TransactionInfoCapsule() {
30+
this.transactionInfo = TransactionInfo.newBuilder().build();
31+
}
32+
33+
public long getFee() {
34+
return transactionInfo.getFee();
35+
}
36+
37+
public void setId(byte[] id) {
38+
this.transactionInfo = this.transactionInfo.toBuilder()
39+
.setId(ByteString.copyFrom(id)).build();
40+
}
41+
42+
public byte[] getId() {
43+
return transactionInfo.getId().toByteArray();
44+
}
45+
46+
public void setFee(long fee) {
47+
this.transactionInfo = this.transactionInfo.toBuilder().setFee(fee).build();
48+
}
49+
50+
public void addFee(long fee) {
51+
this.transactionInfo = this.transactionInfo.toBuilder()
52+
.setFee(this.transactionInfo.getFee() + fee).build();
53+
}
54+
55+
public long getBlockNumber() {
56+
return transactionInfo.getBlockNumber();
57+
}
58+
59+
public void setBlockNumber(long num) {
60+
this.transactionInfo = this.transactionInfo.toBuilder().setBlockNumber(num)
61+
.build();
62+
}
63+
64+
public long getBlockTimeStamp() {
65+
return transactionInfo.getBlockTimeStamp();
66+
}
67+
68+
public void setBlockTimeStamp(long time) {
69+
this.transactionInfo = this.transactionInfo.toBuilder().setBlockTimeStamp(time)
70+
.build();
71+
}
72+
73+
@Override
74+
public byte[] getData() {
75+
return this.transactionInfo.toByteArray();
76+
}
77+
78+
@Override
79+
public TransactionInfo getInstance() {
80+
return this.transactionInfo;
81+
}
82+
}

src/main/java/org/tron/core/capsule/TransactionResultCapsule.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
package org.tron.core.capsule;
22

3+
import com.google.protobuf.InvalidProtocolBufferException;
34
import lombok.extern.slf4j.Slf4j;
5+
import org.tron.core.exception.BadItemException;
46
import org.tron.protos.Protocol.Transaction;
57
import org.tron.protos.Protocol.Transaction.Result;
68

@@ -16,6 +18,14 @@ public TransactionResultCapsule(Transaction.Result trxRet) {
1618
this.transactionResult = trxRet;
1719
}
1820

21+
public TransactionResultCapsule(byte[] data) throws BadItemException {
22+
try {
23+
this.transactionResult = Transaction.Result.parseFrom(data);
24+
} catch (InvalidProtocolBufferException e) {
25+
throw new BadItemException("TransactionResult proto data parse exception");
26+
}
27+
}
28+
1929
public TransactionResultCapsule() {
2030
this.transactionResult = Transaction.Result.newBuilder().build();
2131
}

src/main/java/org/tron/core/config/args/Args.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222
import java.util.List;
2323
import java.util.Optional;
2424
import java.util.Properties;
25-
import java.util.Random;
2625
import java.util.stream.Collectors;
2726
import lombok.Getter;
2827
import lombok.NoArgsConstructor;
@@ -34,7 +33,6 @@
3433
import org.springframework.stereotype.Component;
3534
import org.tron.common.crypto.ECKey;
3635
import org.tron.common.overlay.discover.node.Node;
37-
import org.tron.core.Constant;
3836
import org.tron.common.utils.ByteArray;
3937
import org.tron.core.Constant;
4038
import org.tron.core.Wallet;
@@ -175,9 +173,9 @@ public class Args {
175173
@Setter
176174
private String p2pNodeId;
177175

176+
//If you are running a solidity node for java tron, this flag is set to true
178177
@Getter
179178
@Setter
180-
//If you are running a solidity node for java tron, this flag is set to true
181179
private boolean solidityNode = false;
182180

183181
@Getter

src/main/java/org/tron/core/db/AbstractRevokingStore.java

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ public synchronized void onRemove(RevokingTuple tuple, byte[] value) {
109109
}
110110

111111
@Override
112-
public synchronized void merge() throws RevokingStoreIllegalStateException {
112+
public synchronized void merge() {
113113
if (activeDialog <= 0) {
114114
throw new RevokingStoreIllegalStateException("activeDialog has to be greater than 0");
115115
}
@@ -148,7 +148,7 @@ public synchronized void merge() throws RevokingStoreIllegalStateException {
148148
.filter(e -> {
149149
boolean has = prevState.oldValues.containsKey(e.getKey());
150150
if (has) {
151-
prevState.removed.put(e.getKey(), e.getValue());
151+
prevState.removed.put(e.getKey(), prevState.oldValues.get(e.getKey()));
152152
prevState.oldValues.remove(e.getKey());
153153
}
154154

@@ -161,7 +161,7 @@ public synchronized void merge() throws RevokingStoreIllegalStateException {
161161
}
162162

163163
@Override
164-
public synchronized void revoke() throws RevokingStoreIllegalStateException {
164+
public synchronized void revoke() {
165165
if (disabled) {
166166
return;
167167
}
@@ -189,7 +189,7 @@ public synchronized void revoke() throws RevokingStoreIllegalStateException {
189189
}
190190

191191
@Override
192-
public synchronized void commit() throws RevokingStoreIllegalStateException {
192+
public synchronized void commit() {
193193
if (activeDialog <= 0) {
194194
throw new RevokingStoreIllegalStateException("activeDialog has to be greater than 0");
195195
}
@@ -198,7 +198,7 @@ public synchronized void commit() throws RevokingStoreIllegalStateException {
198198
}
199199

200200
@Override
201-
public synchronized void pop() throws RevokingStoreIllegalStateException {
201+
public synchronized void pop() {
202202
if (activeDialog != 0) {
203203
throw new RevokingStoreIllegalStateException("activeDialog has to be equal 0");
204204
}
@@ -311,28 +311,28 @@ public Dialog(RevokingDatabase revokingDatabase, boolean disableOnExit) {
311311
this.disableOnExit = disableOnExit;
312312
}
313313

314-
void commit() throws RevokingStoreIllegalStateException {
314+
void commit() {
315315
applyRevoking = false;
316316
revokingDatabase.commit();
317317
}
318318

319-
void revoke() throws RevokingStoreIllegalStateException {
319+
void revoke() {
320320
if (applyRevoking) {
321321
revokingDatabase.revoke();
322322
}
323323

324324
applyRevoking = false;
325325
}
326326

327-
void merge() throws RevokingStoreIllegalStateException {
327+
void merge() {
328328
if (applyRevoking) {
329329
revokingDatabase.merge();
330330
}
331331

332332
applyRevoking = false;
333333
}
334334

335-
void copy(Dialog dialog) throws RevokingStoreIllegalStateException {
335+
void copy(Dialog dialog) {
336336
if (this.equals(dialog)) {
337337
return;
338338
}
@@ -358,7 +358,7 @@ public void destroy() {
358358
}
359359

360360
@Override
361-
public void close() throws RevokingStoreIllegalStateException {
361+
public void close() {
362362
try {
363363
if (applyRevoking) {
364364
revokingDatabase.revoke();

src/main/java/org/tron/core/db/AssetIssueStore.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010
import lombok.extern.slf4j.Slf4j;
1111
import org.apache.commons.lang3.ArrayUtils;
1212
import org.springframework.beans.factory.annotation.Autowired;
13-
import org.springframework.beans.factory.annotation.Qualifier;
1413
import org.springframework.beans.factory.annotation.Value;
1514
import org.springframework.stereotype.Component;
1615
import org.tron.core.capsule.AssetIssueCapsule;
@@ -39,7 +38,6 @@ public AssetIssueCapsule get(byte[] key) {
3938
@Override
4039
public boolean has(byte[] key) {
4140
byte[] assetIssue = dbSource.getData(key);
42-
logger.info("name is {}, asset issue is {}", key, assetIssue);
4341
return null != assetIssue;
4442
}
4543

src/main/java/org/tron/core/db/BandwidthProcessor.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,6 @@ private void consumeForCreateNewAccount(AccountCapsule accountCapsule, long byte
160160
}
161161
}
162162

163-
164163
public boolean consumeBandwidthForCreateNewAccount(AccountCapsule accountCapsule, long bytes,
165164
long now) {
166165
long netUsage = accountCapsule.getNetUsage();
@@ -389,6 +388,7 @@ private boolean useFreeNet(AccountCapsule accountCapsule, long bytes, long now)
389388
return true;
390389

391390
}
391+
392392
}
393393

394394

0 commit comments

Comments
 (0)