Commit Graph

545 Commits (master)

Author SHA1 Message Date
Nelson R. Perez 709b7e2734 Adding a memo deserializer to the Gson instance that will take care of the 'get_transaction' API response 2019-01-10 22:17:33 -05:00
Severiano Jaramillo f4be0fa596 Add a public method to obtain the currently selected node: getSelectedNode() 2019-01-10 14:20:31 -06:00
Agorise 5440286448
Update LICENSE 2019-01-01 10:42:45 -06:00
Nelson R. Perez 1c261746a2 Clearing the map between request id and the ApiCallable class because when we disconnect from one node, all previous message ids should be reset 2018-12-31 13:34:10 -05:00
Nelson R. Perez cc28f55dd5 Merge branch 'develop' of github.com:Agorise/graphenej into develop 2018-12-26 17:48:50 -05:00
Nelson R. Perez 7a02e335a0 Setting write and read timeout to 5 seconds at the NetworkService 2018-12-26 17:47:59 -05:00
Nelson R. Perez 201d6957f8 - Added support for the "get_transaction" API call for the single-connection mode
- Overrided the toString method of the Transaction class
2018-12-26 17:45:41 -05:00
Nelson R. Perez 101b4a5aba Merge branch 'develop' of github.com:Agorise/graphenej into develop 2018-12-19 20:41:55 -05:00
Nelson R. Perez 2e909a02f1 Specifying a 5 seconds timeout on both the read and write operations when creating the websocket client 2018-12-19 20:41:48 -05:00
Nelson R. Perez 3b298ebf6b Merge branch 'develop' of github.com:Agorise/graphenej into develop 2018-12-19 12:50:55 -05:00
Nelson R. Perez b54ae2cbae Added support for the 'get_assets' API call on the single-connection mode 2018-12-19 12:49:04 -05:00
Severiano Jaramillo 91a5ecdd7b Avoid NPE related carsh in NetworkService when trying to add a very high latency to a malfunctioning node. 2018-12-15 08:51:01 -06:00
Nelson R. Perez 0cba6a9f8d Added support for the broadcast_transaction API call in the single connection mode 2018-12-06 19:17:32 -05:00
Nelson R. Perez 9ceb3f048c Merge branch 'develop' of github.com:Agorise/graphenej into develop 2018-12-06 18:18:30 -05:00
Nelson R. Perez 84515d5296 Adding the getHash() public method to the Transaction class 2018-12-06 15:55:44 -05:00
Nelson R. Perez ef41f3c44a Changing requirement for the get_required_fees API call 2018-12-03 20:50:53 -05:00
Nelson R. Perez e1395a9d92 Modified the GetRequiredFees class and adjusted the sample app 2018-11-16 00:18:29 -05:00
Nelson R. Perez 39afcd26c2 Merge branch 'develop' of github.com:Agorise/graphenej into develop 2018-11-15 17:55:11 -05:00
Nelson R. Perez 843aacb859 Preventing a NullPointerException while handling a node disconnection 2018-11-15 17:54:57 -05:00
Nelson R. Perez bcb4f8a964 Merge branch 'develop' of github.com:Agorise/graphenej into develop 2018-11-13 17:48:48 -05:00
Nelson R. Perez af5896a160 Replaced the PriorityQueue by the PriorityBlockingQueue in the LatencyNodeProvider class due to the fact that multiple threads can access the same provider 2018-11-08 17:59:01 -05:00
Severiano Jaramillo b6aab142b6 - Added a method to remove nodes from LatencyNodeProvider and implemented a HashSet to keep track of such removed nodes. The reason is that calls to this class are asynchronous and only removing a node from the mFullNodeHeap was not enough to guarantee that it was not going to be added again.
- Added a isRemoved variable to FullNode class, so that the object can carry itself the removal status information and be able to use the same publish subject to broadcast the status of the FullNode.
- Added a method to remove nodes from NodeLatencyVerifier, removed such nodes from pending node latency measurements map 'nodeURLMap' and publish/broadcast the FullNode information with isRemoved=true so that components listening can act accordingly.
- Make proper changes to sample app's RemoteNodeActivity so that it removes 'removed' nodes from the list.
2018-11-08 15:14:01 -06:00
Severiano Jaramillo 21311ea5a3 Create RemoveNodeActivity in the sample project that shows an updated list of nodes sorted by latency. This whole activity while be used to add and test the functionallity of removing a node from the nodes list when the app that uses graphenej decides so, and then reconnects to the next best node. 2018-11-08 13:01:09 -06:00
Severiano Jaramillo 94511daea9 Simple improvements to sample app layouts 2018-11-08 10:44:47 -06:00
Severiano Jaramillo dee17a12be Moving away of NetworkService and graphenej in general the decision to close connection to the current node and retry with another one just because the node does not provide the info needed in PalmPay. Graphenej has to be as app agnostic as possible so a new public method 'removeCurrentNodeAndReconnect()' was implemeted to do the removal and reconnection, and the app that uses graphenej has to decide by its own metrics to remove the current connected node and call such public method. 2018-11-07 21:20:36 -06:00
Nelson R. Perez c76548cbee Merge branch 'develop' of github.com:Agorise/graphenej into develop 2018-11-07 17:45:30 -05:00
Nelson R. Perez f3731d140b Logging connection status updates and including a new node URL in the sample app 2018-11-07 17:36:35 -05:00
Severiano Jaramillo 214891fcc9 Added proper methods to deal with bitshares nodes that send 'trash info', which are nodes that potentially do not have installed the history plugin and thus do not respond properly to history related requests. As this information is needed for PalmPay we cannot rely on such nodes and have to try to connect to a different node. 2018-11-07 16:22:29 -06:00
Severiano Jaramillo 76713f0623 Merge branch 'develop' of github.com:Agorise/graphenej into develop 2018-11-06 11:37:08 -06:00
Severiano Jaramillo c6cd21cdf0 Fix crash in NetworkService due to components other than NetworkServiceManager binding to the service without the proper initialization information. This initialization was moved to another method named bootstrapService which is only called from NetworkServiceManager after the NetworkService has been properly connected. 2018-11-06 11:36:11 -06:00
Nelson R. Perez 7a19220c51 Merge branch 'develop' of github.com:Agorise/graphenej into develop 2018-11-01 16:54:30 -05:00
Nelson R. Perez f940d49cfc Added support for the 'get_account_balances' API call in the single-connection mode 2018-11-01 16:54:03 -05:00
Nelson R. Perez eecc945259 Added a toString() to the AssetAmount class 2018-11-01 16:53:19 -05:00
Severiano Jaramillo 0b1caeb372 Update targetSdkVersion and compileSdkVersion. 2018-10-31 09:45:24 -06:00
Nelson R. Perez d66c8f0ff8 Removed unneeded log 2018-10-24 19:52:50 -05:00
Nelson R. Perez 0fa75dcf22 Removed unneeded system log 2018-10-23 15:32:47 -05:00
Nelson R. Perez 878bc52d78 Fixed problem with the comparation function between two FullNode instances 2018-10-23 15:30:37 -05:00
Nelson R. Perez b70881dfb5 Updated build tools version 2018-10-23 12:05:00 -05:00
Nelson R. Perez a6e5910144 Fixing issues with the LatencyNodeProvider#getSortedNodes() method 2018-10-22 13:53:47 -05:00
Nelson R. Perez 8fb9bc57d6 Automatically trying to connect to the best node after DEFAULT_INITIAL_DELAY milliseconds, regardless of the completion of the node latency verifications 2018-10-19 00:10:11 -05:00
Nelson R. Perez a5f0ba1345 Merge branch 'develop' of github.com:Agorise/graphenej into develop 2018-10-18 18:00:19 -05:00
Nelson R. Perez d37d35e0c6 Returning latency as Long.MAX_VALUE instead of zero to non-initialized FullNode instances 2018-10-18 17:57:27 -05:00
Nelson R. Perez 63eebf11c4 Exposing an interface that allows the fine tuning of the alpha parameter used to calculate the exponential moving average of measured latencies 2018-10-18 17:36:34 -05:00
Nelson R. Perez 3a19808ac5 Moved the node list information out of the library, this must be provided by the application now 2018-10-18 12:14:05 -05:00
Nelson R. Perez 36420e7f56 Trying to fix a NullPointerException by checking the refeence and enclosing the whole chunk of code into a syncronized block 2018-10-15 18:35:26 -05:00
Nelson R. Perez d25a1f3fa0 Reduced the connection timeout from the default of 10 seconds to 2 seconds 2018-10-12 18:36:11 -05:00
Nelson R. Perez d75957e5d1 Adding a new constructor to the GetFullAccounts API wrapper class 2018-10-11 19:46:03 -05:00
Nelson R. Perez 69e5740d00 Merge branch 'develop' of github.com:Agorise/graphenej into develop 2018-10-09 18:54:51 -05:00
Nelson R. Perez c773926ef7 Givingh the AccountOptionsDeserializer class more control over when it should de-serialize its UserAccount attribute and when it should skip it in order to prevent infinite recursion loops 2018-10-09 18:54:41 -05:00
Severiano Jaramillo 5ffda797b7 Merge branch 'develop' of github.com:Agorise/graphenej into develop 2018-10-09 11:33:08 -05:00