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
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
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
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
Alexis Hernandez
8e203c9fb6
server: Handle empty set on GolombEncoding
6 years ago
Alexis Hernandez
8c0f92a07a
server: Update the GolombEncoding to use Set and SortedSet
6 years ago
Alexis Hernandez
aeeb7f5586
server: Update the GolombCodedSet to hold the hex encoded filter
6 years ago
Alexis Hernandez
2f3d2b0fae
server: Allow to derive a SipHashKey from a Blockhash
6 years ago
Alexis Hernandez
f6f3288880
server: Add the GolombEncoding
6 years ago
Alexis Hernandez
628300f9d6
server: Add the gcs SipHashKey
6 years ago
Alexis Hernandez
9ba617ed91
server: Add guava dependency
6 years ago
Alexis Hernandez
be72834662
server: Allow to reverse the block headers ordering
6 years ago
Alexis Hernandez
1b359f7585
server: Extract the OrderingConditionParser from the TransactionService
6 years ago
Alexis Hernandez
19fdfc26c8
server: Allow to sync 1000 headers per request
6 years ago
Alexis Hernandez
4a8e481e7e
server: Remove default json codecs for the LightWalletTransaction
- The AddressesController has its own codecs
- The BlocksController has its own codecs
6 years ago
Alexis Hernandez
529ef38415
server: Add the address to the LightWalletTransaction.Output
6 years ago
Alexis Hernandez
10f1932902
server: Add endpoint "GET /v2/blocks/:blockhash/light-wallet-transactions"
6 years ago
Alexis Hernandez
d9c56e31e4
server: Update blocks.difficulty precision
6 years ago
Alexis Hernandez
ff85797565
server: Refactor the TransactionVIN into a typed alternative
Now we are able to use types to detect when a TransactionVIN has the
cached values.
6 years ago
Alexis Hernandez
b6e41002d0
server: Add instructions for Bitcoin
6 years ago
Alexis Hernandez
aa05af72ac
server: Return the txid after pushing a transaction to the network
6 years ago
Alexis Hernandez
c921d73415
server: Update classes related to the ledger sync process to use the Block.HasTransactions model
6 years ago
Alexis Hernandez
8b9f1c00f3
server: Add Block.HasTransactions persisted model
6 years ago
Alexis Hernandez
485faea74b
server: Fix AddressesControllerSpec
6 years ago
Alexis Hernandez
dbd1f28ff7
server: Log invalid response details on XSNService
6 years ago
Alexis Hernandez
9dd24a4212
server: Update Address format to allow bitcoin addresses
6 years ago