forked from DeepCoin/nxt-decompiled
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Nxt$6.java
51 lines (45 loc) · 1.77 KB
/
Nxt$6.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
import java.util.Collection;
import java.util.Iterator;
import java.util.concurrent.ConcurrentMap;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
class Nxt$6
implements Runnable
{
Nxt$6(Nxt paramNxt) {}
public void run()
{
try
{
int curTime = Nxt.getEpochTime(System.currentTimeMillis());
JSONArray removedUnconfirmedTransactions = new JSONArray();
Iterator<Nxt.Transaction> iterator = Nxt.unconfirmedTransactions.values().iterator();
while (iterator.hasNext())
{
Nxt.Transaction transaction = (Nxt.Transaction)iterator.next();
if ((transaction.timestamp + transaction.deadline * 60 < curTime) || (!transaction.validateAttachment()))
{
iterator.remove();
Nxt.Account account = (Nxt.Account)Nxt.accounts.get(Long.valueOf(transaction.getSenderAccountId()));
account.addToUnconfirmedBalance((transaction.amount + transaction.fee) * 100L);
JSONObject removedUnconfirmedTransaction = new JSONObject();
removedUnconfirmedTransaction.put("index", Integer.valueOf(transaction.index));
removedUnconfirmedTransactions.add(removedUnconfirmedTransaction);
}
}
if (removedUnconfirmedTransactions.size() > 0)
{
response = new JSONObject();
response.put("response", "processNewData");
response.put("removedUnconfirmedTransactions", removedUnconfirmedTransactions);
for (Nxt.User user : Nxt.users.values()) {
user.send(response);
}
}
}
catch (Exception e)
{
JSONObject response;
Nxt.logDebugMessage("Error removing unconfirmed transactions", e);
}
catch (Throwable t)