Package 

Class CompactBlockProcessor.State

    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      public interface CompactBlockProcessor.State.IConnected

      Marker interface for State instances that represent when the wallet is connected.

      public interface CompactBlockProcessor.State.ISyncing

      Marker interface for State instances that represent when the wallet is syncing.

      public class CompactBlockProcessor.State.Syncing

      State for common syncing stage. It starts with downloading new blocks, then validating these blocks and scanning them at the end.

      Downloading is when the wallet is actively downloading compact blocks because the latest block height available from the server is greater than what we have locally. We move out of this state once our local height matches the server.

      Scanning is when the blocks that have been downloaded are actively being decrypted and validated to ensure that there are no gaps and that every block is chain-sequential to the previous block, which determines whether a reorg has happened on our watch.

      Deleting is when the temporary block files being removed from the persistence.

      Enhancing is when transaction details are being retrieved. This typically means the wallet has downloaded and scanned blocks and is now processing any transactions that were discovered. Once a transaction is discovered, followup network requests are needed in order to retrieve memos or outbound transaction information, like the recipient address. The existing information we have about transactions is enhanced by the new information.

      public final class CompactBlockProcessor.State.Synced

      State for when we are done with syncing the blocks, for now, i.e. all necessary stages done (download, scan).

      public class CompactBlockProcessor.State.Disconnected

      State for when we have no connection to lightwalletd.

      public class CompactBlockProcessor.State.Stopped

      State for when stop has been called. For simplicity, processors should not be restarted but they are not prevented from this behavior.

      public class CompactBlockProcessor.State.Initialized

      State the initial state of the processor, once it is constructed.