Alexis Hernandez
87b345dd76
server: Refactor the transaction models to support multisig transactions
This refactor changes the input/output model from transactions to store
the possibly empty address list, which allows to deal with certain
transactions on bitcoin as well as with multisig transactions.
6 years ago
Alexis Hernandez
67f724ed21
infra: Update hidden_addresses
6 years ago
Alexis Hernandez
6961c764f7
server: Refactor the TransactionCollectorService
6 years ago
Alexis Hernandez
364fe6a997
server: Handle duplicate txid by excluding inputs referring them
When syncing the ledger, the inputs that are spending outputs from
duplicated txids are excluded.
6 years ago
Alexis Hernandez
666561124d
server: Allow upto 250,000 headers on the cache
6 years ago
Alexis Hernandez
f065e142b2
infra: Set the app host as the bitcoin lite server
6 years ago
Alexis Hernandez
67a0e62b97
server: Allow to set the app host as the allowed host
6 years ago
Alexis Hernandez
be415eaa22
infra: Update bitcoin ip
6 years ago
Alexis Hernandez
3888041470
server: Add endpoint "GET /blocks/estimate-fee"
6 years ago
Alexis Hernandez
092f3b7b94
server: Add estimateSmartFee method to the XSNService
6 years ago
Alexis Hernandez
28c8c71705
infra: Add script for syncing headers
6 years ago
Alexis Hernandez
62a313b28a
infra: Increase bitcoin-explorer memory
6 years ago
Alexis Hernandez
1185c799ba
server: Use the TransactionCollectorService on the LedgerSynchronizerService
6 years ago
Alexis Hernandez
9fc35c16ce
server: Add the TransactionCollectorService
6 years ago
Alexis Hernandez
d670d13850
server: Add getOutput method to the TransactionDataHandler
6 years ago
Alexis Hernandez
21fcb826a0
server: Simplify the validators
6 years ago
Alexis Hernandez
277abf922b
server: Use the validators in the service package
6 years ago
Alexis Hernandez
8a9ce8179b
server: Use the TransactionIdValidator on the TransactionService
6 years ago
Alexis Hernandez
bbe4828a0e
server: Simplify the AddressValidator
6 years ago
Alexis Hernandez
a723a6501c
server: Extract the BlockValidator from the BlockLogic
6 years ago
Alexis Hernandez
0373dff0fe
server: Use the AddressValidator on the BalanceService
6 years ago
Alexis Hernandez
a74e7cd714
server: Use the AddressValidator on the TransactionService
6 years ago
Alexis Hernandez
3ea419bf85
server: Optimize the ledger synchronization process
The block transactions are loaded only when they are required, this
is specially useful while synchronizing bitcoin because it reduces
the workload to the bitcoind on the initial sync.
6 years ago
Alexis Hernandez
13e25faa08
infra: Update the xsn-backend memory
6 years ago
Alexis Hernandez
c0ba0b4306
server: Enable POST method on the CORSFilter
6 years ago
Alexis Hernandez
0f04494d65
server: Add endpoint "GET /addresses/:address/tposcontracts"
6 years ago
Alexis Hernandez
8c3a0cb3e6
server: Add the TPoSContractDataHandler
6 years ago
Alexis Hernandez
f926b44272
infra: Update xsnd
6 years ago
Alexis Hernandez
887af0ff56
server: Synchronize the TPoS contracts
- A TPoS contract is created when the transaction is synchronized.
- A TPoS contract is deleted when the transaction is rolled back.
- A TPoS contract is closed when the collateral output is spent.
- A TPoS contract is enabled when the collateral output gets unspent.
6 years ago
Alexis Hernandez
87793c7bcb
server: Add the TPoSContractDAO
6 years ago
Alexis Hernandez
35f1b3b3ac
server: Add the tpos_contracts table
6 years ago
Alexis Hernandez
80f02664e5
server: Update the persisted Transaction model
- Allow mapping from rpc transaction with values only
- While mapping from rpc transactions, return the TPoS contract if there is one.
6 years ago
Alexis Hernandez
1daa9ee3cc
server: Remove the TPoS addresses from the transaction_outputs table
6 years ago
Alexis Hernandez
9d2edf8314
server: Remove the TPoS addresses from the Transaction.Output
The addresses are useless and the whole contract will be stored instead.
6 years ago
Alexis Hernandez
4af9a6cac4
server: Remove TPoS contract logic from the ScriptPubKey model
6 years ago
Alexis Hernandez
c6800a1fc7
server: Add the TPoSContract model
6 years ago
Alexis Hernandez
bdbaa415b5
server: Add isTPoSContract method to the XSNService
The method verifies whether a transaction is a TPoS contract.
6 years ago
Alexis Hernandez
750ab7c4ae
server: Simplify the anorm parsers
6 years ago
Alexis Hernandez
d781a0f646
server: Remove hardcoded 1000 on the BlockHeaderCache
6 years ago
Alexis Hernandez
b9ee34d97d
server: BlockService uses the cache for loading headers
6 years ago
Alexis Hernandez
4c7b05b48d
server: Add the CacheModule which loads the available caches
6 years ago
Alexis Hernandez
0153d8dfae
server: Add the BlockHeaderCache
6 years ago
Alexis Hernandez
5439314522
server: Add caffeine dependency
6 years ago
Alexis Hernandez
5657c5b5cd
infra: Update nginx certs
6 years ago
Alexis Hernandez
4f6ab522d4
server: Disable CSRFFilter
As there are no authenticated routes, CSRF protection can be disabled.
6 years ago
Alexis Hernandez
5d1b3662c0
server: Attach the filter while retrieving block headers
6 years ago
Alexis Hernandez
8f5f4a48cb
server: Store the filter on the BlockHeader
6 years ago
Alexis Hernandez
52ae52e3c4
server: Store the block filter while synchronizing the ledger
6 years ago
Alexis Hernandez
18f2260e80
server: Add the block_address_gcs table
6 years ago
Alexis Hernandez
37cb7ceb81
server: Allow to create a GolombCodedSet from block addresses
6 years ago