Regenerate key docs.

This commit is contained in:
Kevin Gorham 2020-01-15 08:07:00 -05:00
parent 3f60bd3c75
commit 028b541823
No known key found for this signature in database
GPG Key ID: CCA55602DF49FC38
59 changed files with 668 additions and 211 deletions

195
Cargo.lock generated
View File

@ -151,15 +151,6 @@ dependencies = [
"constant_time_eq 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "block-buffer"
version = "0.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
"byte-tools 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "block-buffer"
version = "0.7.0"
@ -189,17 +180,12 @@ dependencies = [
[[package]]
name = "bs58"
version = "0.2.2"
version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"sha2 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
"sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "byte-tools"
version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "byte-tools"
version = "0.3.1"
@ -341,14 +327,6 @@ dependencies = [
"crypto_api 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "digest"
version = "0.7.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"generic-array 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "digest"
version = "0.8.0"
@ -421,6 +399,16 @@ dependencies = [
"rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "ff"
version = "0.5.0"
source = "git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925#f3f5338282eeda6d9f5bff69f6930a5473c95925"
dependencies = [
"byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"ff_derive 0.4.0 (git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925)",
"rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "ff_derive"
version = "0.3.0"
@ -434,6 +422,19 @@ dependencies = [
"syn 0.14.9 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "ff_derive"
version = "0.4.0"
source = "git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925#f3f5338282eeda6d9f5bff69f6930a5473c95925"
dependencies = [
"num-bigint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
"num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)",
"num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
"proc-macro2 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
"quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
"syn 1.0.13 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "fpe"
version = "0.2.0"
@ -479,14 +480,6 @@ dependencies = [
"num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "generic-array"
version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "generic-array"
version = "0.12.0"
@ -515,6 +508,16 @@ dependencies = [
"rand_xorshift 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "group"
version = "0.2.0"
source = "git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925#f3f5338282eeda6d9f5bff69f6930a5473c95925"
dependencies = [
"ff 0.5.0 (git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925)",
"rand 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"rand_xorshift 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "grpc"
version = "0.6.1"
@ -785,6 +788,17 @@ dependencies = [
"rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "pairing"
version = "0.15.0"
source = "git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925#f3f5338282eeda6d9f5bff69f6930a5473c95925"
dependencies = [
"byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"ff 0.5.0 (git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925)",
"group 0.2.0 (git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925)",
"rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "parking_lot"
version = "0.7.1"
@ -824,6 +838,14 @@ dependencies = [
"unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "proc-macro2"
version = "1.0.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "protobuf"
version = "2.3.0"
@ -857,6 +879,14 @@ dependencies = [
"proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "quote"
version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"proc-macro2 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "rand"
version = "0.6.5"
@ -1083,17 +1113,6 @@ name = "semver-parser"
version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "sha2"
version = "0.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"block-buffer 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
"byte-tools 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
"digest 0.7.6 (registry+https://github.com/rust-lang/crates.io-index)",
"fake-simd 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "sha2"
version = "0.8.0"
@ -1153,6 +1172,16 @@ dependencies = [
"unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "syn"
version = "1.0.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"proc-macro2 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
"quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
"unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "synstructure"
version = "0.10.1"
@ -1423,6 +1452,11 @@ name = "unicode-xid"
version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "unicode-xid"
version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "unix_socket"
version = "0.5.0"
@ -1517,51 +1551,51 @@ version = "0.0.1"
dependencies = [
"android_logger 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
"ff 0.4.0 (git+https://github.com/str4d/librustzcash.git?rev=1cbeac9d593d65938870797fb8dbafa352644d34)",
"ff 0.5.0 (git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925)",
"futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
"grpc 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
"hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
"jni 0.13.1 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
"log-panics 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
"pairing 0.14.2 (git+https://github.com/str4d/librustzcash.git?rev=1cbeac9d593d65938870797fb8dbafa352644d34)",
"pairing 0.15.0 (git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925)",
"protobuf 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"zcash_client_backend 0.0.0 (git+https://github.com/str4d/librustzcash.git?rev=1cbeac9d593d65938870797fb8dbafa352644d34)",
"zcash_client_sqlite 0.0.0 (git+https://github.com/str4d/librustzcash.git?rev=1cbeac9d593d65938870797fb8dbafa352644d34)",
"zcash_primitives 0.0.0 (git+https://github.com/str4d/librustzcash.git?rev=1cbeac9d593d65938870797fb8dbafa352644d34)",
"zcash_client_backend 0.1.0 (git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925)",
"zcash_client_sqlite 0.0.0 (git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925)",
"zcash_primitives 0.1.0 (git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925)",
"zcash_proofs 0.0.0 (git+https://github.com/str4d/librustzcash.git?rev=1cbeac9d593d65938870797fb8dbafa352644d34)",
]
[[package]]
name = "zcash_client_backend"
version = "0.0.0"
source = "git+https://github.com/str4d/librustzcash.git?rev=1cbeac9d593d65938870797fb8dbafa352644d34#1cbeac9d593d65938870797fb8dbafa352644d34"
version = "0.1.0"
source = "git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925#f3f5338282eeda6d9f5bff69f6930a5473c95925"
dependencies = [
"bech32 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
"bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
"ff 0.4.0 (git+https://github.com/str4d/librustzcash.git?rev=1cbeac9d593d65938870797fb8dbafa352644d34)",
"bs58 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"ff 0.5.0 (git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925)",
"hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
"pairing 0.14.2 (git+https://github.com/str4d/librustzcash.git?rev=1cbeac9d593d65938870797fb8dbafa352644d34)",
"pairing 0.15.0 (git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925)",
"protobuf 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"protobuf-codegen-pure 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"subtle 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
"zcash_primitives 0.0.0 (git+https://github.com/str4d/librustzcash.git?rev=1cbeac9d593d65938870797fb8dbafa352644d34)",
"zcash_primitives 0.1.0 (git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925)",
]
[[package]]
name = "zcash_client_sqlite"
version = "0.0.0"
source = "git+https://github.com/str4d/librustzcash.git?rev=1cbeac9d593d65938870797fb8dbafa352644d34#1cbeac9d593d65938870797fb8dbafa352644d34"
source = "git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925#f3f5338282eeda6d9f5bff69f6930a5473c95925"
dependencies = [
"bech32 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
"bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
"ff 0.4.0 (git+https://github.com/str4d/librustzcash.git?rev=1cbeac9d593d65938870797fb8dbafa352644d34)",
"pairing 0.14.2 (git+https://github.com/str4d/librustzcash.git?rev=1cbeac9d593d65938870797fb8dbafa352644d34)",
"bs58 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"ff 0.5.0 (git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925)",
"pairing 0.15.0 (git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925)",
"protobuf 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"rusqlite 0.20.0 (registry+https://github.com/rust-lang/crates.io-index)",
"time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
"zcash_client_backend 0.0.0 (git+https://github.com/str4d/librustzcash.git?rev=1cbeac9d593d65938870797fb8dbafa352644d34)",
"zcash_primitives 0.0.0 (git+https://github.com/str4d/librustzcash.git?rev=1cbeac9d593d65938870797fb8dbafa352644d34)",
"zcash_client_backend 0.1.0 (git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925)",
"zcash_primitives 0.1.0 (git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925)",
]
[[package]]
@ -1585,6 +1619,27 @@ dependencies = [
"sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "zcash_primitives"
version = "0.1.0"
source = "git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925#f3f5338282eeda6d9f5bff69f6930a5473c95925"
dependencies = [
"aes 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
"blake2b_simd 0.5.7 (registry+https://github.com/rust-lang/crates.io-index)",
"blake2s_simd 0.5.7 (registry+https://github.com/rust-lang/crates.io-index)",
"byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"crypto_api_chachapoly 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
"ff 0.5.0 (git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925)",
"fpe 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
"hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
"pairing 0.15.0 (git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925)",
"rand 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
"sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "zcash_proofs"
version = "0.0.0"
@ -1619,12 +1674,10 @@ dependencies = [
"checksum bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "228047a76f468627ca71776ecdebd732a3423081fcf5125585bcd7c49886ce12"
"checksum blake2b_simd 0.5.7 (registry+https://github.com/rust-lang/crates.io-index)" = "bf775a81bb2d464e20ff170ac20316c7b08a43d11dbc72f0f82e8e8d3d6d0499"
"checksum blake2s_simd 0.5.7 (registry+https://github.com/rust-lang/crates.io-index)" = "9753e94cdd99139f89745e552a2a86e21b247e2007cd1dcb2506dc540b6dd603"
"checksum block-buffer 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a076c298b9ecdb530ed9d967e74a6027d6a7478924520acddcddc24c1c8ab3ab"
"checksum block-buffer 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "49665c62e0e700857531fa5d3763e91b539ff1abeebd56808d378b495870d60d"
"checksum block-cipher-trait 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1c924d49bd09e7c06003acda26cd9742e796e34282ec6c1189404dee0c1f4774"
"checksum block-padding 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "d75255892aeb580d3c566f213a2b6fdc1c66667839f45719ee1d30ebf2aea591"
"checksum bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "0de79cfb98e7aa9988188784d8664b4b5dad6eaaa0863b91d9a4ed871d4f7a42"
"checksum byte-tools 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "560c32574a12a89ecd91f5e742165893f86e3ab98d21f8ea548658eb9eef5f40"
"checksum bs58 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b170cd256a3f9fa6b9edae3e44a7dfdfc77e8124dbc3e2612d75f9c3e2396dae"
"checksum byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7"
"checksum byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a019b10a2a7cdeb292db131fc8113e57ea2a908f6e7894b0c3c671893b65dbeb"
"checksum bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)" = "40ade3d27603c2cb345eb0912aec461a6dec7e06a4ae48589904e808335c7afa"
@ -1643,7 +1696,6 @@ dependencies = [
"checksum crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "f8306fcef4a7b563b76b7dd949ca48f52bc1141aa067d2ea09565f3e2652aa5c"
"checksum crypto_api 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2f855e87e75a4799e18b8529178adcde6fd4f97c1449ff4821e747ff728bb102"
"checksum crypto_api_chachapoly 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "95b2ad7cab08fd71addba81df5077c49df208effdfb3118a1519f9cdeac5aaf2"
"checksum digest 0.7.6 (registry+https://github.com/rust-lang/crates.io-index)" = "03b072242a8cbaf9c145665af9d250c59af3b958f83ed6824e13533cf76d5b90"
"checksum digest 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "05f47366984d3ad862010e22c7ce81a7dbcaebbdfb37241a620f8b6596ee135c"
"checksum directories 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "72d337a64190607d4fcca2cb78982c5dd57f4916e19696b48a575fa746b6cb0f"
"checksum either 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3be565ca5c557d7f59e7cfcf1844f9e3033650c929c6566f511e8005f205c1d0"
@ -1654,7 +1706,9 @@ dependencies = [
"checksum fallible-iterator 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7"
"checksum fallible-streaming-iterator 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "7360491ce676a36bf9bb3c56c1aa791658183a54d2744120f27285738d90465a"
"checksum ff 0.4.0 (git+https://github.com/str4d/librustzcash.git?rev=1cbeac9d593d65938870797fb8dbafa352644d34)" = "<none>"
"checksum ff 0.5.0 (git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925)" = "<none>"
"checksum ff_derive 0.3.0 (git+https://github.com/str4d/librustzcash.git?rev=1cbeac9d593d65938870797fb8dbafa352644d34)" = "<none>"
"checksum ff_derive 0.4.0 (git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925)" = "<none>"
"checksum fpe 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "21988a326139165b75e3196bc6962ca638e5fb0c95102fbf152a3743174b01e4"
"checksum fuchsia-cprng 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "81f7f8eb465745ea9b02e2704612a9946a59fa40572086c6fd49d6ddcf30bf31"
"checksum fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82"
@ -1662,9 +1716,9 @@ dependencies = [
"checksum futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)" = "49e7653e374fe0d0c12de4250f0bdb60680b8c80eed558c5c7538eec9c89e21b"
"checksum futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "ab90cde24b3319636588d0c35fe03b1333857621051837ed769faefb4c2162e4"
"checksum generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3c0f28c2f5bfb5960175af447a2da7c18900693738343dc896ffbcabd9839592"
"checksum generic-array 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ef25c5683767570c2bbd7deba372926a55eaae9982d7726ee2a1050239d45b9d"
"checksum getrandom 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "fc344b02d3868feb131e8b5fe2b9b0a1cc42942679af493061fc13b853243872"
"checksum group 0.1.0 (git+https://github.com/str4d/librustzcash.git?rev=1cbeac9d593d65938870797fb8dbafa352644d34)" = "<none>"
"checksum group 0.2.0 (git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925)" = "<none>"
"checksum grpc 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8e530ef7894a104a1c8525ce68787b3491efa2098ce5e5454e8324ea78893548"
"checksum hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "805026a5d0141ffc30abb3be3173848ad46a1b1664fe632428479619a3644d77"
"checksum httpbis 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7689cfa896b2a71da4f16206af167542b75d242b6906313e53857972a92d5614"
@ -1696,15 +1750,18 @@ dependencies = [
"checksum opaque-debug 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "93f5bb2e8e8dec81642920ccff6b61f1eb94fa3020c5a325c9851ff604152409"
"checksum owning_ref 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "49a4b8ea2179e6a2e27411d3bca09ca6dd630821cf6894c6c7c8467a8ee7ef13"
"checksum pairing 0.14.2 (git+https://github.com/str4d/librustzcash.git?rev=1cbeac9d593d65938870797fb8dbafa352644d34)" = "<none>"
"checksum pairing 0.15.0 (git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925)" = "<none>"
"checksum parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ab41b4aed082705d1056416ae4468b6ea99d52599ecf3169b00088d43113e337"
"checksum parking_lot_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94c8c7923936b28d546dfd14d4472eaf34c99b14e1c973a32b3e6d4eb04298c9"
"checksum pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)" = "676e8eb2b1b4c9043511a9b7bea0915320d7e502b0a079fb03f9635a5252b18c"
"checksum ppv-lite86 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e3cbf9f658cdb5000fcf6f362b8ea2ba154b9f146a61c7a20d647034c6b6561b"
"checksum proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)" = "4d317f9caece796be1980837fd5cb3dfec5613ebdb04ad0956deea83ce168915"
"checksum proc-macro2 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "0319972dcae462681daf4da1adeeaa066e3ebd29c69be96c6abb1259d2ee2bcc"
"checksum protobuf 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d82d117bc7565ce6be0150159251c9b1eeec7b129f5a2aa86e10acb5970de1cb"
"checksum protobuf-codegen 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5f25bf531a031dd128d4e7285401caed1038d4f732b56bb1d99f02bdad4ad125"
"checksum protobuf-codegen-pure 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "54f908fafe335c1e04c0ba4ea4e0c3ca63fcf1a5dec97db98acc95521e7fc44d"
"checksum quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)" = "cdd8e04bd9c52e0342b406469d494fcb033be4bdbe5c606016defbb1681411e1"
"checksum quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "053a8c8bcc71fcce321828dc897a98ab9760bef03a4fc36693c231e5b3216cfe"
"checksum rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca"
"checksum rand 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d47eab0e83d9693d40f825f86948aa16eff6750ead4bdffc4ab95b8b3a7f052c"
"checksum rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef"
@ -1732,7 +1789,6 @@ dependencies = [
"checksum scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27"
"checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
"checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
"checksum sha2 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9eb6be24e4c23a84d7184280d2722f7f2731fcdd4a9d886efbfe4413e4847ea0"
"checksum sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7b4d8bfd0e469f417657573d8451fb33d16cfe0989359b93baf3a1ffc639543d"
"checksum slab 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "17b4fcaed89ab08ef143da37bc52adbcc04d4a69014f4c1208d6b51f0c47bc23"
"checksum slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8"
@ -1741,6 +1797,7 @@ dependencies = [
"checksum subtle 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "01f40907d9ffc762709e4ff3eb4a6f6b41b650375a3f09ac92b641942b7fb082"
"checksum syn 0.14.9 (registry+https://github.com/rust-lang/crates.io-index)" = "261ae9ecaa397c42b960649561949d69311f08eeaea86a65696e6e46517cf741"
"checksum syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)" = "f92e629aa1d9c827b2bb8297046c1ccffc57c99b947a680d3ccff1f136a3bee9"
"checksum syn 1.0.13 (registry+https://github.com/rust-lang/crates.io-index)" = "1e4ff033220a41d1a57d8125eab57bf5263783dfdcc18688b1dacc6ce9651ef8"
"checksum synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "73687139bf99285483c96ac0add482c3776528beac1d97d444f6e91f203a2015"
"checksum time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f"
"checksum tls-api 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)" = "e452fe2fdf40a10715adb3a5f244c7411cdf2ecc887b07160310939785db9182"
@ -1764,6 +1821,7 @@ dependencies = [
"checksum tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "037ffc3ba0e12a0ab4aca92e5234e0dedeb48fddf6ccd260f1f150a36a9f2445"
"checksum typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "612d636f949607bdf9b123b4a6f6d966dedf3ff669f7f045890d3a4a73948169"
"checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
"checksum unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "826e7639553986605ec5979c7dd957c7895e93eabed50ab2ffa7f6128a75097c"
"checksum unix_socket 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6aa2700417c405c38f5e6902d699345241c28c0b7ade4abaad71e35a87eb1564"
"checksum unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56"
"checksum vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "def296d3eb3b12371b2c7d0e83bfe1403e4db2d7a0bba324a12b21c4ee13143d"
@ -1777,7 +1835,8 @@ dependencies = [
"checksum winapi-util 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7168bab6e1daee33b4557efd0e95d5ca70a03706d39fa5f3fe7a236f584b03c9"
"checksum winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
"checksum ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e"
"checksum zcash_client_backend 0.0.0 (git+https://github.com/str4d/librustzcash.git?rev=1cbeac9d593d65938870797fb8dbafa352644d34)" = "<none>"
"checksum zcash_client_sqlite 0.0.0 (git+https://github.com/str4d/librustzcash.git?rev=1cbeac9d593d65938870797fb8dbafa352644d34)" = "<none>"
"checksum zcash_client_backend 0.1.0 (git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925)" = "<none>"
"checksum zcash_client_sqlite 0.0.0 (git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925)" = "<none>"
"checksum zcash_primitives 0.0.0 (git+https://github.com/str4d/librustzcash.git?rev=1cbeac9d593d65938870797fb8dbafa352644d34)" = "<none>"
"checksum zcash_primitives 0.1.0 (git+https://github.com/str4d/librustzcash.git?rev=f3f5338282eeda6d9f5bff69f6930a5473c95925)" = "<none>"
"checksum zcash_proofs 0.0.0 (git+https://github.com/str4d/librustzcash.git?rev=1cbeac9d593d65938870797fb8dbafa352644d34)" = "<none>"

View File

@ -1,8 +1,8 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk.data](../index.md) / [SdkSynchronizer](index.md) / [balances](./balances.md)
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [SdkSynchronizer](index.md) / [balances](./balances.md)
# balances
`fun balances(): ReceiveChannel<`[`Wallet.WalletBalance`](../../cash.z.wallet.sdk.secure/-wallet/-wallet-balance/index.md)`>`
`val balances: Flow<`[`CompactBlockProcessor.WalletBalance`](../../cash.z.wallet.sdk.block/-compact-block-processor/-wallet-balance/index.md)`>`
Overrides [Synchronizer.balances](../-synchronizer/balances.md)

View File

@ -0,0 +1,18 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [SdkSynchronizer](index.md) / [cancelSpend](./cancel-spend.md)
# cancelSpend
`suspend fun cancelSpend(transaction: `[`PendingTransaction`](../../cash.z.wallet.sdk.entity/-pending-transaction/index.md)`): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)
Overrides [Synchronizer.cancelSpend](../-synchronizer/cancel-spend.md)
Attempts to cancel a transaction that is about to be sent. Typically, cancellation is only
an option if the transaction has not yet been submitted to the server.
### Parameters
`transaction` - the transaction to cancel.
**Return**
true when the cancellation request was successful. False when it is too late.

View File

@ -1,11 +1,10 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk.data](../index.md) / [SdkSynchronizer](index.md) / [clearedTransactions](./cleared-transactions.md)
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [SdkSynchronizer](index.md) / [clearedTransactions](./cleared-transactions.md)
# clearedTransactions
`fun clearedTransactions(): ReceiveChannel<`[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`ClearedTransaction`](../../cash.z.wallet.sdk.entity/-cleared-transaction/index.md)`>>`
`val clearedTransactions: Flow<PagedList<`[`ConfirmedTransaction`](../../cash.z.wallet.sdk.entity/-confirmed-transaction/index.md)`>>`
Overrides [Synchronizer.clearedTransactions](../-synchronizer/cleared-transactions.md)
A stream of all the transactions that are on the blockchain. Implementations should consider only returning a
subset like the most recent 100 transactions, perhaps through paging the underlying database.
A flow of all the transactions that are on the blockchain.

View File

@ -1,12 +1,12 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk.data](../index.md) / [SdkSynchronizer](index.md) / [coroutineScope](./coroutine-scope.md)
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [SdkSynchronizer](index.md) / [coroutineScope](./coroutine-scope.md)
# coroutineScope
`lateinit var coroutineScope: CoroutineScope`
The lifespan of this Synchronizer. This scope is initialized once the Synchronizer starts because it will be a
child of the parentScope that gets passed into the [start](start.md) function. Everything launched by this Synchronizer
will be cancelled once the Synchronizer or its parentScope stops. This is a lateinit rather than nullable
property so that it fails early rather than silently, whenever the scope is used before the Synchronizer has been
started.
The lifespan of this Synchronizer. This scope is initialized once the Synchronizer starts
because it will be a child of the parentScope that gets passed into the [start](start.md) function.
Everything launched by this Synchronizer will be cancelled once the Synchronizer or its
parentScope stops. This is a lateinit rather than nullable property so that it fails early
rather than silently, whenever the scope is used before the Synchronizer has been started.

View File

@ -1,4 +1,4 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk.data](../index.md) / [SdkSynchronizer](index.md) / [getAddress](./get-address.md)
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [SdkSynchronizer](index.md) / [getAddress](./get-address.md)
# getAddress
@ -10,4 +10,5 @@ Gets the address for the given account.
### Parameters
`accountId` - the optional accountId whose address is of interest. By default, the first account is used.
`accountId` - the optional accountId whose address is of interest. By default, the first
account is used.

View File

@ -1,61 +1,53 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk.data](../index.md) / [SdkSynchronizer](./index.md)
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [SdkSynchronizer](./index.md)
# SdkSynchronizer
`@ExperimentalCoroutinesApi class SdkSynchronizer : `[`Synchronizer`](../-synchronizer/index.md)
A synchronizer that attempts to remain operational, despite any number of errors that can occur. It acts as the glue
that ties all the pieces of the SDK together. Each component of the SDK is designed for the potential of stand-alone
usage but coordinating all the interactions is non-trivial. So the synchronizer facilitates this, acting as reference
that demonstrates how all the pieces can be tied together. Its goal is to allow a developer to focus on their app
rather than the nuances of how Zcash works.
A Synchronizer that attempts to remain operational, despite any number of errors that can occur.
It acts as the glue that ties all the pieces of the SDK together. Each component of the SDK is
designed for the potential of stand-alone usage but coordinating all the interactions is non-
trivial. So the Synchronizer facilitates this, acting as reference that demonstrates how all the
pieces can be tied together. Its goal is to allow a developer to focus on their app rather than
the nuances of how Zcash works.
### Parameters
`wallet` - the component that wraps the JNI layer that interacts with the rust backend and manages wallet config.
`ledger` - exposes flows of wallet transaction information.
`repository` - the component that exposes streams of wallet transaction information.
`manager` - manages and tracks outbound transactions.
`sender` - the component responsible for sending transactions to lightwalletd in order to spend funds.
`processor` - the component that saves the downloaded compact blocks to the cache and then scans those blocks for
`processor` - saves the downloaded compact blocks to the cache and then scans those blocks for
data related to this wallet.
`encoder` - the component that creates a signed transaction, used for spending funds.
### Constructors
| Name | Summary |
|---|---|
| [&lt;init&gt;](-init-.md) | `SdkSynchronizer(wallet: `[`Wallet`](../../cash.z.wallet.sdk.secure/-wallet/index.md)`, ledger: `[`TransactionRepository`](../-transaction-repository/index.md)`, sender: `[`TransactionSender`](../-transaction-sender/index.md)`, processor: `[`CompactBlockProcessor`](../../cash.z.wallet.sdk.block/-compact-block-processor/index.md)`, encoder: `[`TransactionEncoder`](../-transaction-encoder/index.md)`)`<br>A synchronizer that attempts to remain operational, despite any number of errors that can occur. It acts as the glue that ties all the pieces of the SDK together. Each component of the SDK is designed for the potential of stand-alone usage but coordinating all the interactions is non-trivial. So the synchronizer facilitates this, acting as reference that demonstrates how all the pieces can be tied together. Its goal is to allow a developer to focus on their app rather than the nuances of how Zcash works. |
### Properties
| Name | Summary |
|---|---|
| [balances](balances.md) | `val balances: Flow<`[`CompactBlockProcessor.WalletBalance`](../../cash.z.wallet.sdk.block/-compact-block-processor/-wallet-balance/index.md)`>`<br>A stream of balance values, separately reflecting both the available and total balance. |
| [clearedTransactions](cleared-transactions.md) | `val clearedTransactions: Flow<PagedList<`[`ConfirmedTransaction`](../../cash.z.wallet.sdk.entity/-confirmed-transaction/index.md)`>>`<br>A flow of all the transactions that are on the blockchain. |
| [coroutineScope](coroutine-scope.md) | `lateinit var coroutineScope: CoroutineScope`<br>The lifespan of this Synchronizer. This scope is initialized once the Synchronizer starts because it will be a child of the parentScope that gets passed into the [start](start.md) function. Everything launched by this Synchronizer will be cancelled once the Synchronizer or its parentScope stops. This is a lateinit rather than nullable property so that it fails early rather than silently, whenever the scope is used before the Synchronizer has been started. |
| [isConnected](is-connected.md) | `val isConnected: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)<br>A property that is true while a connection to the lightwalletd server exists. |
| [isScanning](is-scanning.md) | `val isScanning: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)<br>A property that is true while actively scanning the cache of compact blocks for transactions. |
| [isSyncing](is-syncing.md) | `val isSyncing: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)<br>A property that is true while actively downloading blocks from lightwalletd. |
| [onCriticalErrorHandler](on-critical-error-handler.md) | `var onCriticalErrorHandler: ((`[`Throwable`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throwable/index.html)`?) -> `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`)?`<br>A callback to invoke whenever an uncaught error is encountered. By definition, the return value of the function is ignored because this error is unrecoverable. The only reason the function has a return value is so that all error handlers work with the same signature which allows one function to handle all errors in simple apps. This callback is not called on the main thread so any UI work would need to switch context to the main thread. |
| [onProcessorErrorHandler](on-processor-error-handler.md) | `var onProcessorErrorHandler: ((`[`Throwable`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throwable/index.html)`?) -> `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`)?`<br>A callback to invoke whenver a processor error is encountered. Returning true signals that the error was handled and a retry attempt should be made, if possible. This callback is not called on the main thread so any UI work would need to switch context to the main thread. |
| [onProcessorErrorHandler](on-processor-error-handler.md) | `var onProcessorErrorHandler: ((`[`Throwable`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throwable/index.html)`?) -> `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`)?`<br>A callback to invoke whenever a processor error is encountered. Returning true signals that the error was handled and a retry attempt should be made, if possible. This callback is not called on the main thread so any UI work would need to switch context to the main thread. |
| [onSubmissionErrorHandler](on-submission-error-handler.md) | `var onSubmissionErrorHandler: ((`[`Throwable`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throwable/index.html)`?) -> `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`)?`<br>A callback to invoke whenever a server error is encountered while submitting a transaction to lightwalletd. Returning true signals that the error was handled and a retry attempt should be made, if possible. This callback is not called on the main thread so any UI work would need to switch context to the main thread. |
| [pendingTransactions](pending-transactions.md) | `val pendingTransactions: Flow<`[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`PendingTransaction`](../../cash.z.wallet.sdk.entity/-pending-transaction/index.md)`>>`<br>A flow of all the outbound pending transaction that have been sent but are awaiting confirmations. |
| [processor](processor.md) | `val processor: `[`CompactBlockProcessor`](../../cash.z.wallet.sdk.block/-compact-block-processor/index.md)<br>saves the downloaded compact blocks to the cache and then scans those blocks for data related to this wallet. |
| [processorInfo](processor-info.md) | `val processorInfo: Flow<`[`CompactBlockProcessor.ProcessorInfo`](../../cash.z.wallet.sdk.block/-compact-block-processor/-processor-info/index.md)`>`<br>Indicates the latest information about the blocks that have been processed by the SDK. This is very helpful for conveying detailed progress and status to the user. |
| [progress](progress.md) | `val progress: Flow<`[`Int`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`>`<br>Indicates the download progress of the Synchronizer. When progress reaches 100, that signals that the Synchronizer is in sync with the network. Balances should be considered inaccurate and outbound transactions should be prevented until this sync is complete. It is a simplified version of [processorInfo](processor-info.md). |
| [receivedTransactions](received-transactions.md) | `val receivedTransactions: Flow<PagedList<`[`ConfirmedTransaction`](../../cash.z.wallet.sdk.entity/-confirmed-transaction/index.md)`>>`<br>A flow of all transactions related to receiving funds. |
| [sentTransactions](sent-transactions.md) | `val sentTransactions: Flow<PagedList<`[`ConfirmedTransaction`](../../cash.z.wallet.sdk.entity/-confirmed-transaction/index.md)`>>`<br>A flow of all transactions related to sending funds. |
| [status](status.md) | `val status: Flow<`[`Synchronizer.Status`](../-synchronizer/-status/index.md)`>`<br>Indicates the status of this Synchronizer. This implementation basically simplifies the status of the processor to focus only on the high level states that matter most. Whenever the processor is finished scanning, the synchronizer updates transaction and balance info and then emits a [SYNCED](../-synchronizer/-status/-s-y-n-c-e-d.md) status. |
### Functions
| Name | Summary |
|---|---|
| [balances](balances.md) | `fun balances(): ReceiveChannel<`[`Wallet.WalletBalance`](../../cash.z.wallet.sdk.secure/-wallet/-wallet-balance/index.md)`>`<br>A stream of balance values, separately reflecting both the available and total balance. |
| [cancelSend](cancel-send.md) | `fun cancelSend(transaction: `[`SentTransaction`](../../cash.z.wallet.sdk.entity/-sent-transaction/index.md)`): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)<br>Attempts to cancel a previously sent transaction. Typically, cancellation is only an option if the transaction has not yet been submitted to the server. |
| [clearedTransactions](cleared-transactions.md) | `fun clearedTransactions(): ReceiveChannel<`[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`ClearedTransaction`](../../cash.z.wallet.sdk.entity/-cleared-transaction/index.md)`>>`<br>A stream of all the transactions that are on the blockchain. Implementations should consider only returning a subset like the most recent 100 transactions, perhaps through paging the underlying database. |
| [cancelSpend](cancel-spend.md) | `suspend fun cancelSpend(transaction: `[`PendingTransaction`](../../cash.z.wallet.sdk.entity/-pending-transaction/index.md)`): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)<br>Attempts to cancel a transaction that is about to be sent. Typically, cancellation is only an option if the transaction has not yet been submitted to the server. |
| [getAddress](get-address.md) | `suspend fun getAddress(accountId: `[`Int`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`): `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)<br>Gets the address for the given account. |
| [lastBalance](last-balance.md) | `fun lastBalance(): `[`Wallet.WalletBalance`](../../cash.z.wallet.sdk.secure/-wallet/-wallet-balance/index.md)<br>Holds the most recent value that was transmitted through the [balances](../-synchronizer/balances.md) channel. Typically, if the underlying channel is a BroadcastChannel (and it should be), then this value is simply [balanceChannel.value](#) |
| [lastCleared](last-cleared.md) | `fun lastCleared(): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`ClearedTransaction`](../../cash.z.wallet.sdk.entity/-cleared-transaction/index.md)`>`<br>Holds the most recent value that was transmitted through the [clearedTransactions](../-synchronizer/cleared-transactions.md) channel. Typically, if the underlying channel is a BroadcastChannel (and it should be), then this value is simply [clearedChannel.value](#) |
| [lastPending](last-pending.md) | `fun lastPending(): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`PendingTransaction`](../../cash.z.wallet.sdk.entity/-pending-transaction/index.md)`>`<br>Holds the most recent value that was transmitted through the [pendingTransactions](../-synchronizer/pending-transactions.md) channel. Typically, if the underlying channel is a BroadcastChannel (and it should be),then this value is simply [pendingChannel.value](#) |
| [onTransactionsChanged](on-transactions-changed.md) | `fun onTransactionsChanged(): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) |
| [pendingTransactions](pending-transactions.md) | `fun pendingTransactions(): ReceiveChannel<`[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`PendingTransaction`](../../cash.z.wallet.sdk.entity/-pending-transaction/index.md)`>>`<br>A stream of all the outbound pending transaction that have been sent but are awaiting confirmations. |
| [progress](progress.md) | `fun progress(): ReceiveChannel<`[`Int`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`>`<br>A stream of progress values, typically corresponding to this Synchronizer downloading blocks. Typically, any non- zero value below 100 indicates that progress indicators can be shown and a value of 100 signals that progress is complete and any progress indicators can be hidden. |
| [isValidShieldedAddr](is-valid-shielded-addr.md) | `suspend fun isValidShieldedAddr(address: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)<br>Returns true when the given address is a valid z-addr. Invalid addresses will throw an exception. Valid z-addresses have these characteristics: //TODO |
| [isValidTransparentAddr](is-valid-transparent-addr.md) | `suspend fun isValidTransparentAddr(address: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)<br>Returns true when the given address is a valid t-addr. Invalid addresses will throw an exception. Valid t-addresses have these characteristics: //TODO |
| [refreshBalance](refresh-balance.md) | `suspend fun refreshBalance(): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) |
| [sendToAddress](send-to-address.md) | `suspend fun sendToAddress(zatoshi: `[`Long`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)`, toAddress: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, memo: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, fromAccountId: `[`Int`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`): `[`PendingTransaction`](../../cash.z.wallet.sdk.entity/-pending-transaction/index.md)<br>Sends zatoshi. |
| [start](start.md) | `fun start(parentScope: CoroutineScope): `[`Synchronizer`](../-synchronizer/index.md)<br>Starts this synchronizer within the given scope. For simplicity, attempting to start an instance that has already been started will throw a [SynchronizerException.FalseStart](../../cash.z.wallet.sdk.exception/-synchronizer-exception/-false-start.md) exception. This reduces the complexity of managing resources that must be recycled. Instead, each synchronizer is designed to have a long lifespan and should be started from an activity, application or session. |
| [sendToAddress](send-to-address.md) | `fun sendToAddress(spendingKey: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, zatoshi: `[`Long`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)`, toAddress: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, memo: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, fromAccountIndex: `[`Int`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`): Flow<`[`PendingTransaction`](../../cash.z.wallet.sdk.entity/-pending-transaction/index.md)`>`<br>Sends zatoshi. |
| [start](start.md) | `fun start(parentScope: CoroutineScope?): `[`Synchronizer`](../-synchronizer/index.md)<br>Starts this synchronizer within the given scope. For simplicity, attempting to start an instance that has already been started will throw a [SynchronizerException.FalseStart](../../cash.z.wallet.sdk.exception/-synchronizer-exception/-false-start.md) exception. This reduces the complexity of managing resources that must be recycled. Instead, each synchronizer is designed to have a long lifespan and should be started from an activity, application or session. |
| [stop](stop.md) | `fun stop(): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)<br>Stop this synchronizer and all of its child jobs. Once a synchronizer has been stopped it should not be restarted and attempting to do so will result in an error. Also, this function will throw an exception if the synchronizer was never previously started. |
| [validateAddress](validate-address.md) | `suspend fun validateAddress(address: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`): `[`Synchronizer.AddressType`](../-synchronizer/-address-type/index.md)<br>Validates the given address, returning information about why it is invalid. |

View File

@ -0,0 +1,18 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [SdkSynchronizer](index.md) / [isValidShieldedAddr](./is-valid-shielded-addr.md)
# isValidShieldedAddr
`suspend fun isValidShieldedAddr(address: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)
Overrides [Synchronizer.isValidShieldedAddr](../-synchronizer/is-valid-shielded-addr.md)
Returns true when the given address is a valid z-addr. Invalid addresses will throw an
exception. Valid z-addresses have these characteristics: //TODO
### Parameters
`address` - the address to validate.
### Exceptions
`RuntimeException` - when the address is invalid.

View File

@ -0,0 +1,18 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [SdkSynchronizer](index.md) / [isValidTransparentAddr](./is-valid-transparent-addr.md)
# isValidTransparentAddr
`suspend fun isValidTransparentAddr(address: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)
Overrides [Synchronizer.isValidTransparentAddr](../-synchronizer/is-valid-transparent-addr.md)
Returns true when the given address is a valid t-addr. Invalid addresses will throw an
exception. Valid t-addresses have these characteristics: //TODO
### Parameters
`address` - the address to validate.
### Exceptions
`RuntimeException` - when the address is invalid.

View File

@ -1,4 +1,4 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk.data](../index.md) / [SdkSynchronizer](index.md) / [onCriticalErrorHandler](./on-critical-error-handler.md)
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [SdkSynchronizer](index.md) / [onCriticalErrorHandler](./on-critical-error-handler.md)
# onCriticalErrorHandler
@ -6,8 +6,9 @@
Overrides [Synchronizer.onCriticalErrorHandler](../-synchronizer/on-critical-error-handler.md)
A callback to invoke whenever an uncaught error is encountered. By definition, the return value of the function
is ignored because this error is unrecoverable. The only reason the function has a return value is so that all
error handlers work with the same signature which allows one function to handle all errors in simple apps. This
callback is not called on the main thread so any UI work would need to switch context to the main thread.
A callback to invoke whenever an uncaught error is encountered. By definition, the return
value of the function is ignored because this error is unrecoverable. The only reason the
function has a return value is so that all error handlers work with the same signature which
allows one function to handle all errors in simple apps. This callback is not called on the
main thread so any UI work would need to switch context to the main thread.

View File

@ -1,4 +1,4 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk.data](../index.md) / [SdkSynchronizer](index.md) / [onProcessorErrorHandler](./on-processor-error-handler.md)
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [SdkSynchronizer](index.md) / [onProcessorErrorHandler](./on-processor-error-handler.md)
# onProcessorErrorHandler
@ -6,7 +6,7 @@
Overrides [Synchronizer.onProcessorErrorHandler](../-synchronizer/on-processor-error-handler.md)
A callback to invoke whenver a processor error is encountered. Returning true signals that the error was handled
and a retry attempt should be made, if possible. This callback is not called on the main thread so any UI work
would need to switch context to the main thread.
A callback to invoke whenever a processor error is encountered. Returning true signals that
the error was handled and a retry attempt should be made, if possible. This callback is not
called on the main thread so any UI work would need to switch context to the main thread.

View File

@ -1,4 +1,4 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk.data](../index.md) / [SdkSynchronizer](index.md) / [onSubmissionErrorHandler](./on-submission-error-handler.md)
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [SdkSynchronizer](index.md) / [onSubmissionErrorHandler](./on-submission-error-handler.md)
# onSubmissionErrorHandler
@ -6,7 +6,8 @@
Overrides [Synchronizer.onSubmissionErrorHandler](../-synchronizer/on-submission-error-handler.md)
A callback to invoke whenever a server error is encountered while submitting a transaction to lightwalletd.
Returning true signals that the error was handled and a retry attempt should be made, if possible. This callback
is not called on the main thread so any UI work would need to switch context to the main thread.
A callback to invoke whenever a server error is encountered while submitting a transaction to
lightwalletd. Returning true signals that the error was handled and a retry attempt should be
made, if possible. This callback is not called on the main thread so any UI work would need
to switch context to the main thread.

View File

@ -1,10 +1,11 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk.data](../index.md) / [SdkSynchronizer](index.md) / [pendingTransactions](./pending-transactions.md)
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [SdkSynchronizer](index.md) / [pendingTransactions](./pending-transactions.md)
# pendingTransactions
`fun pendingTransactions(): ReceiveChannel<`[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`PendingTransaction`](../../cash.z.wallet.sdk.entity/-pending-transaction/index.md)`>>`
`val pendingTransactions: Flow<`[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`PendingTransaction`](../../cash.z.wallet.sdk.entity/-pending-transaction/index.md)`>>`
Overrides [Synchronizer.pendingTransactions](../-synchronizer/pending-transactions.md)
A stream of all the outbound pending transaction that have been sent but are awaiting confirmations.
A flow of all the outbound pending transaction that have been sent but are awaiting
confirmations.

View File

@ -0,0 +1,11 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [SdkSynchronizer](index.md) / [processorInfo](./processor-info.md)
# processorInfo
`val processorInfo: Flow<`[`CompactBlockProcessor.ProcessorInfo`](../../cash.z.wallet.sdk.block/-compact-block-processor/-processor-info/index.md)`>`
Overrides [Synchronizer.processorInfo](../-synchronizer/processor-info.md)
Indicates the latest information about the blocks that have been processed by the SDK. This
is very helpful for conveying detailed progress and status to the user.

View File

@ -0,0 +1,9 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [SdkSynchronizer](index.md) / [processor](./processor.md)
# processor
`val processor: `[`CompactBlockProcessor`](../../cash.z.wallet.sdk.block/-compact-block-processor/index.md)
saves the downloaded compact blocks to the cache and then scans those blocks for
data related to this wallet.

View File

@ -1,12 +1,13 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk.data](../index.md) / [SdkSynchronizer](index.md) / [progress](./progress.md)
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [SdkSynchronizer](index.md) / [progress](./progress.md)
# progress
`fun progress(): ReceiveChannel<`[`Int`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`>`
`val progress: Flow<`[`Int`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`>`
Overrides [Synchronizer.progress](../-synchronizer/progress.md)
A stream of progress values, typically corresponding to this Synchronizer downloading blocks. Typically, any non-
zero value below 100 indicates that progress indicators can be shown and a value of 100 signals that progress is
complete and any progress indicators can be hidden.
Indicates the download progress of the Synchronizer. When progress reaches 100, that
signals that the Synchronizer is in sync with the network. Balances should be considered
inaccurate and outbound transactions should be prevented until this sync is complete. It is
a simplified version of [processorInfo](processor-info.md).

View File

@ -0,0 +1,10 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [SdkSynchronizer](index.md) / [receivedTransactions](./received-transactions.md)
# receivedTransactions
`val receivedTransactions: Flow<PagedList<`[`ConfirmedTransaction`](../../cash.z.wallet.sdk.entity/-confirmed-transaction/index.md)`>>`
Overrides [Synchronizer.receivedTransactions](../-synchronizer/received-transactions.md)
A flow of all transactions related to receiving funds.

View File

@ -1,4 +1,4 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk.data](../index.md) / [SdkSynchronizer](index.md) / [refreshBalance](./refresh-balance.md)
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [SdkSynchronizer](index.md) / [refreshBalance](./refresh-balance.md)
# refreshBalance

View File

@ -1,8 +1,8 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk.data](../index.md) / [SdkSynchronizer](index.md) / [sendToAddress](./send-to-address.md)
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [SdkSynchronizer](index.md) / [sendToAddress](./send-to-address.md)
# sendToAddress
`suspend fun sendToAddress(zatoshi: `[`Long`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)`, toAddress: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, memo: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, fromAccountId: `[`Int`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`): `[`PendingTransaction`](../../cash.z.wallet.sdk.entity/-pending-transaction/index.md)
`fun sendToAddress(spendingKey: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, zatoshi: `[`Long`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)`, toAddress: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, memo: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, fromAccountIndex: `[`Int`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`): Flow<`[`PendingTransaction`](../../cash.z.wallet.sdk.entity/-pending-transaction/index.md)`>`
Overrides [Synchronizer.sendToAddress](../-synchronizer/send-to-address.md)
@ -10,6 +10,8 @@ Sends zatoshi.
### Parameters
`spendingKey` - the key that allows spends to occur.
`zatoshi` - the amount of zatoshi to send.
`toAddress` - the recipient's address.

View File

@ -0,0 +1,10 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [SdkSynchronizer](index.md) / [sentTransactions](./sent-transactions.md)
# sentTransactions
`val sentTransactions: Flow<PagedList<`[`ConfirmedTransaction`](../../cash.z.wallet.sdk.entity/-confirmed-transaction/index.md)`>>`
Overrides [Synchronizer.sentTransactions](../-synchronizer/sent-transactions.md)
A flow of all transactions related to sending funds.

View File

@ -1,18 +1,21 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk.data](../index.md) / [SdkSynchronizer](index.md) / [start](./start.md)
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [SdkSynchronizer](index.md) / [start](./start.md)
# start
`fun start(parentScope: CoroutineScope): `[`Synchronizer`](../-synchronizer/index.md)
`fun start(parentScope: CoroutineScope?): `[`Synchronizer`](../-synchronizer/index.md)
Overrides [Synchronizer.start](../-synchronizer/start.md)
Starts this synchronizer within the given scope. For simplicity, attempting to start an instance that has already
been started will throw a [SynchronizerException.FalseStart](../../cash.z.wallet.sdk.exception/-synchronizer-exception/-false-start.md) exception. This reduces the complexity of managing
resources that must be recycled. Instead, each synchronizer is designed to have a long lifespan and should be
started from an activity, application or session.
Starts this synchronizer within the given scope. For simplicity, attempting to start an
instance that has already been started will throw a [SynchronizerException.FalseStart](../../cash.z.wallet.sdk.exception/-synchronizer-exception/-false-start.md)
exception. This reduces the complexity of managing resources that must be recycled. Instead,
each synchronizer is designed to have a long lifespan and should be started from an activity,
application or session.
### Parameters
`parentScope` - the scope to use for this synchronizer, typically something with a lifecycle such as an
Activity for single-activity apps or a logged in user session. This scope is only used for launching this
synchronzer's job as a child.
`parentScope` - the scope to use for this synchronizer, typically something with a
lifecycle such as an Activity for single-activity apps or a logged in user session. This
scope is only used for launching this synchronzer's job as a child. If no scope is provided,
then this synchronizer and all of its coroutines will run until stop is called, which is not
recommended since it can leak resources. That type of behavior is more useful for tests.

View File

@ -0,0 +1,13 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [SdkSynchronizer](index.md) / [status](./status.md)
# status
`val status: Flow<`[`Synchronizer.Status`](../-synchronizer/-status/index.md)`>`
Overrides [Synchronizer.status](../-synchronizer/status.md)
Indicates the status of this Synchronizer. This implementation basically simplifies the
status of the processor to focus only on the high level states that matter most. Whenever the
processor is finished scanning, the synchronizer updates transaction and balance info and
then emits a [SYNCED](../-synchronizer/-status/-s-y-n-c-e-d.md) status.

View File

@ -1,4 +1,4 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk.data](../index.md) / [SdkSynchronizer](index.md) / [stop](./stop.md)
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [SdkSynchronizer](index.md) / [stop](./stop.md)
# stop
@ -6,7 +6,7 @@
Overrides [Synchronizer.stop](../-synchronizer/stop.md)
Stop this synchronizer and all of its child jobs. Once a synchronizer has been stopped it should not be restarted
and attempting to do so will result in an error. Also, this function will throw an exception if the synchronizer
was never previously started.
Stop this synchronizer and all of its child jobs. Once a synchronizer has been stopped it
should not be restarted and attempting to do so will result in an error. Also, this function
will throw an exception if the synchronizer was never previously started.

View File

@ -0,0 +1,13 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [SdkSynchronizer](index.md) / [validateAddress](./validate-address.md)
# validateAddress
`suspend fun validateAddress(address: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`): `[`Synchronizer.AddressType`](../-synchronizer/-address-type/index.md)
Overrides [Synchronizer.validateAddress](../-synchronizer/validate-address.md)
Validates the given address, returning information about why it is invalid.
### Parameters
`address` - the address to validate.

View File

@ -0,0 +1,5 @@
[zcash-android-wallet-sdk](../../../../index.md) / [cash.z.wallet.sdk](../../../index.md) / [Synchronizer](../../index.md) / [AddressType](../index.md) / [Invalid](index.md) / [&lt;init&gt;](./-init-.md)
# &lt;init&gt;
`Invalid(reason: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)` = "Invalid")`

View File

@ -0,0 +1,23 @@
[zcash-android-wallet-sdk](../../../../index.md) / [cash.z.wallet.sdk](../../../index.md) / [Synchronizer](../../index.md) / [AddressType](../index.md) / [Invalid](./index.md)
# Invalid
`class Invalid : `[`Synchronizer.AddressType`](../index.md)
### Constructors
| Name | Summary |
|---|---|
| [&lt;init&gt;](-init-.md) | `Invalid(reason: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)` = "Invalid")` |
### Properties
| Name | Summary |
|---|---|
| [reason](reason.md) | `val reason: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
### Inherited Properties
| Name | Summary |
|---|---|
| [isNotValid](../is-not-valid.md) | `val isNotValid: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |

View File

@ -0,0 +1,5 @@
[zcash-android-wallet-sdk](../../../../index.md) / [cash.z.wallet.sdk](../../../index.md) / [Synchronizer](../../index.md) / [AddressType](../index.md) / [Invalid](index.md) / [reason](./reason.md)
# reason
`val reason: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)

View File

@ -0,0 +1,11 @@
[zcash-android-wallet-sdk](../../../index.md) / [cash.z.wallet.sdk](../../index.md) / [Synchronizer](../index.md) / [AddressType](index.md) / [Shielded](./-shielded.md)
# Shielded
`object Shielded : `[`Synchronizer.AddressType.Valid`](-valid.md)`, `[`Synchronizer.AddressType`](index.md)
### Inherited Properties
| Name | Summary |
|---|---|
| [isNotValid](is-not-valid.md) | `val isNotValid: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |

View File

@ -0,0 +1,11 @@
[zcash-android-wallet-sdk](../../../index.md) / [cash.z.wallet.sdk](../../index.md) / [Synchronizer](../index.md) / [AddressType](index.md) / [Transparent](./-transparent.md)
# Transparent
`object Transparent : `[`Synchronizer.AddressType.Valid`](-valid.md)`, `[`Synchronizer.AddressType`](index.md)
### Inherited Properties
| Name | Summary |
|---|---|
| [isNotValid](is-not-valid.md) | `val isNotValid: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |

View File

@ -0,0 +1,12 @@
[zcash-android-wallet-sdk](../../../index.md) / [cash.z.wallet.sdk](../../index.md) / [Synchronizer](../index.md) / [AddressType](index.md) / [Valid](./-valid.md)
# Valid
`interface Valid`
### Inheritors
| Name | Summary |
|---|---|
| [Shielded](-shielded.md) | `object Shielded : `[`Synchronizer.AddressType.Valid`](./-valid.md)`, `[`Synchronizer.AddressType`](index.md) |
| [Transparent](-transparent.md) | `object Transparent : `[`Synchronizer.AddressType.Valid`](./-valid.md)`, `[`Synchronizer.AddressType`](index.md) |

View File

@ -0,0 +1,28 @@
[zcash-android-wallet-sdk](../../../index.md) / [cash.z.wallet.sdk](../../index.md) / [Synchronizer](../index.md) / [AddressType](./index.md)
# AddressType
`sealed class AddressType`
### Types
| Name | Summary |
|---|---|
| [Invalid](-invalid/index.md) | `class Invalid : `[`Synchronizer.AddressType`](./index.md) |
| [Shielded](-shielded.md) | `object Shielded : `[`Synchronizer.AddressType.Valid`](-valid.md)`, `[`Synchronizer.AddressType`](./index.md) |
| [Transparent](-transparent.md) | `object Transparent : `[`Synchronizer.AddressType.Valid`](-valid.md)`, `[`Synchronizer.AddressType`](./index.md) |
| [Valid](-valid.md) | `interface Valid` |
### Properties
| Name | Summary |
|---|---|
| [isNotValid](is-not-valid.md) | `val isNotValid: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
### Inheritors
| Name | Summary |
|---|---|
| [Invalid](-invalid/index.md) | `class Invalid : `[`Synchronizer.AddressType`](./index.md) |
| [Shielded](-shielded.md) | `object Shielded : `[`Synchronizer.AddressType.Valid`](-valid.md)`, `[`Synchronizer.AddressType`](./index.md) |
| [Transparent](-transparent.md) | `object Transparent : `[`Synchronizer.AddressType.Valid`](-valid.md)`, `[`Synchronizer.AddressType`](./index.md) |

View File

@ -0,0 +1,5 @@
[zcash-android-wallet-sdk](../../../index.md) / [cash.z.wallet.sdk](../../index.md) / [Synchronizer](../index.md) / [AddressType](index.md) / [isNotValid](./is-not-valid.md)
# isNotValid
`val isNotValid: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)

View File

@ -0,0 +1,9 @@
[zcash-android-wallet-sdk](../../../index.md) / [cash.z.wallet.sdk](../../index.md) / [Synchronizer](../index.md) / [Status](index.md) / [DISCONNECTED](./-d-i-s-c-o-n-n-e-c-t-e-d.md)
# DISCONNECTED
`DISCONNECTED`
Indicates that this Synchronizer is disconnected from its lightwalletd server.
When set, a UI element may want to turn red.

View File

@ -0,0 +1,8 @@
[zcash-android-wallet-sdk](../../../index.md) / [cash.z.wallet.sdk](../../index.md) / [Synchronizer](../index.md) / [Status](index.md) / [DOWNLOADING](./-d-o-w-n-l-o-a-d-i-n-g.md)
# DOWNLOADING
`DOWNLOADING`
Indicates that this Synchronizer is actively downloading new blocks from the server.

View File

@ -0,0 +1,9 @@
[zcash-android-wallet-sdk](../../../index.md) / [cash.z.wallet.sdk](../../index.md) / [Synchronizer](../index.md) / [Status](index.md) / [SCANNING](./-s-c-a-n-n-i-n-g.md)
# SCANNING
`SCANNING`
Indicates that this Synchronizer is actively decrypting new blocks that were downloaded
from the server.

View File

@ -0,0 +1,8 @@
[zcash-android-wallet-sdk](../../../index.md) / [cash.z.wallet.sdk](../../index.md) / [Synchronizer](../index.md) / [Status](index.md) / [STOPPED](./-s-t-o-p-p-e-d.md)
# STOPPED
`STOPPED`
Indicates that [stop](../stop.md) has been called on this Synchronizer and it will no longer be used.

View File

@ -0,0 +1,9 @@
[zcash-android-wallet-sdk](../../../index.md) / [cash.z.wallet.sdk](../../index.md) / [Synchronizer](../index.md) / [Status](index.md) / [SYNCED](./-s-y-n-c-e-d.md)
# SYNCED
`SYNCED`
Indicates that this Synchronizer is fully up to date and ready for all wallet functions.
When set, a UI element may want to turn green. In this state, the balance can be trusted.

View File

@ -0,0 +1,10 @@
[zcash-android-wallet-sdk](../../../index.md) / [cash.z.wallet.sdk](../../index.md) / [Synchronizer](../index.md) / [Status](index.md) / [VALIDATING](./-v-a-l-i-d-a-t-i-n-g.md)
# VALIDATING
`VALIDATING`
Indicates that this Synchronizer is actively validating new blocks that were downloaded
from the server. Blocks need to be verified before they are scanned. This confirms that
each block is chain-sequential, thereby detecting missing blocks and reorgs.

View File

@ -0,0 +1,16 @@
[zcash-android-wallet-sdk](../../../index.md) / [cash.z.wallet.sdk](../../index.md) / [Synchronizer](../index.md) / [Status](./index.md)
# Status
`enum class Status`
### Enum Values
| Name | Summary |
|---|---|
| [STOPPED](-s-t-o-p-p-e-d.md) | Indicates that [stop](../stop.md) has been called on this Synchronizer and it will no longer be used. |
| [DISCONNECTED](-d-i-s-c-o-n-n-e-c-t-e-d.md) | Indicates that this Synchronizer is disconnected from its lightwalletd server. When set, a UI element may want to turn red. |
| [DOWNLOADING](-d-o-w-n-l-o-a-d-i-n-g.md) | Indicates that this Synchronizer is actively downloading new blocks from the server. |
| [VALIDATING](-v-a-l-i-d-a-t-i-n-g.md) | Indicates that this Synchronizer is actively validating new blocks that were downloaded from the server. Blocks need to be verified before they are scanned. This confirms that each block is chain-sequential, thereby detecting missing blocks and reorgs. |
| [SCANNING](-s-c-a-n-n-i-n-g.md) | Indicates that this Synchronizer is actively decrypting new blocks that were downloaded from the server. |
| [SYNCED](-s-y-n-c-e-d.md) | Indicates that this Synchronizer is fully up to date and ready for all wallet functions. When set, a UI element may want to turn green. In this state, the balance can be trusted. |

View File

@ -1,8 +1,8 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk.data](../index.md) / [Synchronizer](index.md) / [balances](./balances.md)
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [Synchronizer](index.md) / [balances](./balances.md)
# balances
`abstract fun balances(): ReceiveChannel<`[`Wallet.WalletBalance`](../../cash.z.wallet.sdk.secure/-wallet/-wallet-balance/index.md)`>`
`abstract val balances: Flow<`[`CompactBlockProcessor.WalletBalance`](../../cash.z.wallet.sdk.block/-compact-block-processor/-wallet-balance/index.md)`>`
A stream of balance values, separately reflecting both the available and total balance.

View File

@ -0,0 +1,16 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [Synchronizer](index.md) / [cancelSpend](./cancel-spend.md)
# cancelSpend
`abstract suspend fun cancelSpend(transaction: `[`PendingTransaction`](../../cash.z.wallet.sdk.entity/-pending-transaction/index.md)`): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)
Attempts to cancel a transaction that is about to be sent. Typically, cancellation is only
an option if the transaction has not yet been submitted to the server.
### Parameters
`transaction` - the transaction to cancel.
**Return**
true when the cancellation request was successful. False when it is too late.

View File

@ -1,9 +1,8 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk.data](../index.md) / [Synchronizer](index.md) / [clearedTransactions](./cleared-transactions.md)
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [Synchronizer](index.md) / [clearedTransactions](./cleared-transactions.md)
# clearedTransactions
`abstract fun clearedTransactions(): ReceiveChannel<`[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`ClearedTransaction`](../../cash.z.wallet.sdk.entity/-cleared-transaction/index.md)`>>`
`abstract val clearedTransactions: Flow<PagedList<`[`ConfirmedTransaction`](../../cash.z.wallet.sdk.entity/-confirmed-transaction/index.md)`>>`
A stream of all the transactions that are on the blockchain. Implementations should consider only returning a
subset like the most recent 100 transactions, perhaps through paging the underlying database.
A flow of all the transactions that are on the blockchain.

View File

@ -1,4 +1,4 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk.data](../index.md) / [Synchronizer](index.md) / [getAddress](./get-address.md)
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [Synchronizer](index.md) / [getAddress](./get-address.md)
# getAddress
@ -8,4 +8,5 @@ Gets the address for the given account.
### Parameters
`accountId` - the optional accountId whose address is of interest. By default, the first account is used.
`accountId` - the optional accountId whose address is of interest. By default, the first
account is used.

View File

@ -1,44 +1,52 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk.data](../index.md) / [Synchronizer](./index.md)
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [Synchronizer](./index.md)
# Synchronizer
`interface Synchronizer`
Primary interface for interacting with the SDK. Defines the contract that specific implementations like
[MockSynchronizer](../-mock-synchronizer/index.md) and [SdkSynchronizer](../-sdk-synchronizer/index.md) fulfill. Given the language-level support for coroutines, we favor their
use in the SDK and incorporate that choice into this contract.
Primary interface for interacting with the SDK. Defines the contract that specific
implementations like [MockSynchronizer](#) and [SdkSynchronizer](../-sdk-synchronizer/index.md) fulfill. Given the language-level
support for coroutines, we favor their use in the SDK and incorporate that choice into this
contract.
### Types
| Name | Summary |
|---|---|
| [AddressType](-address-type/index.md) | `sealed class AddressType` |
| [Status](-status/index.md) | `enum class Status` |
### Properties
| Name | Summary |
|---|---|
| [isConnected](is-connected.md) | `abstract val isConnected: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)<br>A flag indicating whether this Synchronizer is connected to its lightwalletd server. When false, a UI element may want to turn red. |
| [isScanning](is-scanning.md) | `abstract val isScanning: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)<br>A flag indicating whether this Synchronizer is actively decrypting compact blocks, searching for transactions. When true, a UI element may want to turn yellow. |
| [isSyncing](is-syncing.md) | `abstract val isSyncing: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)<br>A flag indicating whether this Synchronizer is actively downloading compact blocks. When true, a UI element may want to turn yellow. |
| [balances](balances.md) | `abstract val balances: Flow<`[`CompactBlockProcessor.WalletBalance`](../../cash.z.wallet.sdk.block/-compact-block-processor/-wallet-balance/index.md)`>`<br>A stream of balance values, separately reflecting both the available and total balance. |
| [clearedTransactions](cleared-transactions.md) | `abstract val clearedTransactions: Flow<PagedList<`[`ConfirmedTransaction`](../../cash.z.wallet.sdk.entity/-confirmed-transaction/index.md)`>>`<br>A flow of all the transactions that are on the blockchain. |
| [onCriticalErrorHandler](on-critical-error-handler.md) | `abstract var onCriticalErrorHandler: ((`[`Throwable`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throwable/index.html)`?) -> `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`)?`<br>Gets or sets a global error handler. This is a useful hook for handling unexpected critical errors. |
| [onProcessorErrorHandler](on-processor-error-handler.md) | `abstract var onProcessorErrorHandler: ((`[`Throwable`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throwable/index.html)`?) -> `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`)?`<br>An error handler for exceptions during processing. For instance, a block might be missing or a reorg may get mishandled or the database may get corrupted. |
| [onSubmissionErrorHandler](on-submission-error-handler.md) | `abstract var onSubmissionErrorHandler: ((`[`Throwable`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throwable/index.html)`?) -> `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`)?`<br>An error handler for exceptions while submitting transactions to lightwalletd. For instance, a transaction may get rejected because it would be a double-spend or the user might lose their cellphone signal. |
| [pendingTransactions](pending-transactions.md) | `abstract val pendingTransactions: Flow<`[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`PendingTransaction`](../../cash.z.wallet.sdk.entity/-pending-transaction/index.md)`>>`<br>A flow of all the outbound pending transaction that have been sent but are awaiting confirmations. |
| [processorInfo](processor-info.md) | `abstract val processorInfo: Flow<`[`CompactBlockProcessor.ProcessorInfo`](../../cash.z.wallet.sdk.block/-compact-block-processor/-processor-info/index.md)`>`<br>A flow of processor details, updated every time blocks are processed to include the latest block height, blocks downloaded and blocks scanned. Similar to the [progress](progress.md) flow but with a lot more detail. |
| [progress](progress.md) | `abstract val progress: Flow<`[`Int`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`>`<br>A flow of progress values, typically corresponding to this Synchronizer downloading blocks. Typically, any non- zero value below 100 indicates that progress indicators can be shown and a value of 100 signals that progress is complete and any progress indicators can be hidden. |
| [receivedTransactions](received-transactions.md) | `abstract val receivedTransactions: Flow<PagedList<`[`ConfirmedTransaction`](../../cash.z.wallet.sdk.entity/-confirmed-transaction/index.md)`>>`<br>A flow of all transactions related to receiving funds. |
| [sentTransactions](sent-transactions.md) | `abstract val sentTransactions: Flow<PagedList<`[`ConfirmedTransaction`](../../cash.z.wallet.sdk.entity/-confirmed-transaction/index.md)`>>`<br>A flow of all transactions related to sending funds. |
| [status](status.md) | `abstract val status: Flow<`[`Synchronizer.Status`](-status/index.md)`>`<br>A flow of values representing the [Status](-status/index.md) of this Synchronizer. As the status changes, a new value will be emitted by this flow. |
### Functions
| Name | Summary |
|---|---|
| [balances](balances.md) | `abstract fun balances(): ReceiveChannel<`[`Wallet.WalletBalance`](../../cash.z.wallet.sdk.secure/-wallet/-wallet-balance/index.md)`>`<br>A stream of balance values, separately reflecting both the available and total balance. |
| [cancelSend](cancel-send.md) | `abstract fun cancelSend(transaction: `[`SentTransaction`](../../cash.z.wallet.sdk.entity/-sent-transaction/index.md)`): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)<br>Attempts to cancel a previously sent transaction. Typically, cancellation is only an option if the transaction has not yet been submitted to the server. |
| [clearedTransactions](cleared-transactions.md) | `abstract fun clearedTransactions(): ReceiveChannel<`[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`ClearedTransaction`](../../cash.z.wallet.sdk.entity/-cleared-transaction/index.md)`>>`<br>A stream of all the transactions that are on the blockchain. Implementations should consider only returning a subset like the most recent 100 transactions, perhaps through paging the underlying database. |
| [cancelSpend](cancel-spend.md) | `abstract suspend fun cancelSpend(transaction: `[`PendingTransaction`](../../cash.z.wallet.sdk.entity/-pending-transaction/index.md)`): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)<br>Attempts to cancel a transaction that is about to be sent. Typically, cancellation is only an option if the transaction has not yet been submitted to the server. |
| [getAddress](get-address.md) | `abstract suspend fun getAddress(accountId: `[`Int`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)` = 0): `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)<br>Gets the address for the given account. |
| [lastBalance](last-balance.md) | `abstract fun lastBalance(): `[`Wallet.WalletBalance`](../../cash.z.wallet.sdk.secure/-wallet/-wallet-balance/index.md)<br>Holds the most recent value that was transmitted through the [balances](balances.md) channel. Typically, if the underlying channel is a BroadcastChannel (and it should be), then this value is simply [balanceChannel.value](#) |
| [lastCleared](last-cleared.md) | `abstract fun lastCleared(): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`ClearedTransaction`](../../cash.z.wallet.sdk.entity/-cleared-transaction/index.md)`>`<br>Holds the most recent value that was transmitted through the [clearedTransactions](cleared-transactions.md) channel. Typically, if the underlying channel is a BroadcastChannel (and it should be), then this value is simply [clearedChannel.value](#) |
| [lastPending](last-pending.md) | `abstract fun lastPending(): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`PendingTransaction`](../../cash.z.wallet.sdk.entity/-pending-transaction/index.md)`>`<br>Holds the most recent value that was transmitted through the [pendingTransactions](pending-transactions.md) channel. Typically, if the underlying channel is a BroadcastChannel (and it should be),then this value is simply [pendingChannel.value](#) |
| [pendingTransactions](pending-transactions.md) | `abstract fun pendingTransactions(): ReceiveChannel<`[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`PendingTransaction`](../../cash.z.wallet.sdk.entity/-pending-transaction/index.md)`>>`<br>A stream of all the outbound pending transaction that have been sent but are awaiting confirmations. |
| [progress](progress.md) | `abstract fun progress(): ReceiveChannel<`[`Int`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`>`<br>A stream of progress values, typically corresponding to this Synchronizer downloading blocks. Typically, any non- zero value below 100 indicates that progress indicators can be shown and a value of 100 signals that progress is complete and any progress indicators can be hidden. |
| [sendToAddress](send-to-address.md) | `abstract suspend fun sendToAddress(zatoshi: `[`Long`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)`, toAddress: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, memo: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)` = "", fromAccountId: `[`Int`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)` = 0): `[`PendingTransaction`](../../cash.z.wallet.sdk.entity/-pending-transaction/index.md)<br>Sends zatoshi. |
| [start](start.md) | `abstract fun start(parentScope: CoroutineScope): `[`Synchronizer`](./index.md)<br>Starts this synchronizer within the given scope. |
| [isValidShieldedAddr](is-valid-shielded-addr.md) | `abstract suspend fun isValidShieldedAddr(address: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)<br>Returns true when the given address is a valid z-addr. Invalid addresses will throw an exception. Valid z-addresses have these characteristics: //TODO |
| [isValidTransparentAddr](is-valid-transparent-addr.md) | `abstract suspend fun isValidTransparentAddr(address: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)<br>Returns true when the given address is a valid t-addr. Invalid addresses will throw an exception. Valid t-addresses have these characteristics: //TODO |
| [sendToAddress](send-to-address.md) | `abstract fun sendToAddress(spendingKey: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, zatoshi: `[`Long`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)`, toAddress: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, memo: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)` = "", fromAccountIndex: `[`Int`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)` = 0): Flow<`[`PendingTransaction`](../../cash.z.wallet.sdk.entity/-pending-transaction/index.md)`>`<br>Sends zatoshi. |
| [start](start.md) | `abstract fun start(parentScope: CoroutineScope? = null): `[`Synchronizer`](./index.md)<br>Starts this synchronizer within the given scope. |
| [stop](stop.md) | `abstract fun stop(): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)<br>Stop this synchronizer. Implementations should ensure that calling this method cancels all jobs that were created by this instance. |
| [validateAddress](validate-address.md) | `abstract suspend fun validateAddress(address: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`): `[`Synchronizer.AddressType`](-address-type/index.md)<br>Validates the given address, returning information about why it is invalid. |
### Inheritors
| Name | Summary |
|---|---|
| [MockSynchronizer](../-mock-synchronizer/index.md) | `abstract class MockSynchronizer : `[`Synchronizer`](./index.md)`, CoroutineScope`<br>Utility for building UIs. It does the best it can to mock the SDKSynchronizer so that it can be dropped into any project and drive the UI. It generates active transactions in response to funds being sent and generates random received transactions, periodically. |
| [SdkSynchronizer](../-sdk-synchronizer/index.md) | `class SdkSynchronizer : `[`Synchronizer`](./index.md)<br>A synchronizer that attempts to remain operational, despite any number of errors that can occur. It acts as the glue that ties all the pieces of the SDK together. Each component of the SDK is designed for the potential of stand-alone usage but coordinating all the interactions is non-trivial. So the synchronizer facilitates this, acting as reference that demonstrates how all the pieces can be tied together. Its goal is to allow a developer to focus on their app rather than the nuances of how Zcash works. |
| [SdkSynchronizer](../-sdk-synchronizer/index.md) | `class SdkSynchronizer : `[`Synchronizer`](./index.md)<br>A Synchronizer that attempts to remain operational, despite any number of errors that can occur. It acts as the glue that ties all the pieces of the SDK together. Each component of the SDK is designed for the potential of stand-alone usage but coordinating all the interactions is non- trivial. So the Synchronizer facilitates this, acting as reference that demonstrates how all the pieces can be tied together. Its goal is to allow a developer to focus on their app rather than the nuances of how Zcash works. |

View File

@ -0,0 +1,16 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [Synchronizer](index.md) / [isValidShieldedAddr](./is-valid-shielded-addr.md)
# isValidShieldedAddr
`abstract suspend fun isValidShieldedAddr(address: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)
Returns true when the given address is a valid z-addr. Invalid addresses will throw an
exception. Valid z-addresses have these characteristics: //TODO
### Parameters
`address` - the address to validate.
### Exceptions
`RuntimeException` - when the address is invalid.

View File

@ -0,0 +1,16 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [Synchronizer](index.md) / [isValidTransparentAddr](./is-valid-transparent-addr.md)
# isValidTransparentAddr
`abstract suspend fun isValidTransparentAddr(address: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)
Returns true when the given address is a valid t-addr. Invalid addresses will throw an
exception. Valid t-addresses have these characteristics: //TODO
### Parameters
`address` - the address to validate.
### Exceptions
`RuntimeException` - when the address is invalid.

View File

@ -1,12 +1,13 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk.data](../index.md) / [Synchronizer](index.md) / [onCriticalErrorHandler](./on-critical-error-handler.md)
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [Synchronizer](index.md) / [onCriticalErrorHandler](./on-critical-error-handler.md)
# onCriticalErrorHandler
`abstract var onCriticalErrorHandler: ((`[`Throwable`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throwable/index.html)`?) -> `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`)?`
Gets or sets a global error handler. This is a useful hook for handling unexpected critical errors.
Gets or sets a global error handler. This is a useful hook for handling unexpected critical
errors.
**Return**
true when the error has been handled and the Synchronizer should attempt to continue. False when the
error is unrecoverable and the Synchronizer should [stop](stop.md).
true when the error has been handled and the Synchronizer should attempt to continue.
False when the error is unrecoverable and the Synchronizer should [stop](stop.md).

View File

@ -1,13 +1,13 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk.data](../index.md) / [Synchronizer](index.md) / [onProcessorErrorHandler](./on-processor-error-handler.md)
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [Synchronizer](index.md) / [onProcessorErrorHandler](./on-processor-error-handler.md)
# onProcessorErrorHandler
`abstract var onProcessorErrorHandler: ((`[`Throwable`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throwable/index.html)`?) -> `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`)?`
An error handler for exceptions during processing. For instance, a block might be missing or a reorg may get
mishandled or the database may get corrupted.
An error handler for exceptions during processing. For instance, a block might be missing or
a reorg may get mishandled or the database may get corrupted.
**Return**
true when the error has been handled and the processor should attempt to continue. False when the
error is unrecoverable and the processor should [stop](stop.md).
true when the error has been handled and the processor should attempt to continue.
False when the error is unrecoverable and the processor should [stop](stop.md).

View File

@ -1,13 +1,14 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk.data](../index.md) / [Synchronizer](index.md) / [onSubmissionErrorHandler](./on-submission-error-handler.md)
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [Synchronizer](index.md) / [onSubmissionErrorHandler](./on-submission-error-handler.md)
# onSubmissionErrorHandler
`abstract var onSubmissionErrorHandler: ((`[`Throwable`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throwable/index.html)`?) -> `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`)?`
An error handler for exceptions while submitting transactions to lightwalletd. For instance, a transaction may
get rejected because it would be a double-spend or the user might lose their cellphone signal.
An error handler for exceptions while submitting transactions to lightwalletd. For instance,
a transaction may get rejected because it would be a double-spend or the user might lose
their cellphone signal.
**Return**
true when the error has been handled and the sender should attempt to resend. False when the
error is unrecoverable and the sender should [stop](stop.md).
true when the error has been handled and the sender should attempt to resend. False
when the error is unrecoverable and the sender should [stop](stop.md).

View File

@ -1,8 +1,9 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk.data](../index.md) / [Synchronizer](index.md) / [pendingTransactions](./pending-transactions.md)
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [Synchronizer](index.md) / [pendingTransactions](./pending-transactions.md)
# pendingTransactions
`abstract fun pendingTransactions(): ReceiveChannel<`[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`PendingTransaction`](../../cash.z.wallet.sdk.entity/-pending-transaction/index.md)`>>`
`abstract val pendingTransactions: Flow<`[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`PendingTransaction`](../../cash.z.wallet.sdk.entity/-pending-transaction/index.md)`>>`
A stream of all the outbound pending transaction that have been sent but are awaiting confirmations.
A flow of all the outbound pending transaction that have been sent but are awaiting
confirmations.

View File

@ -0,0 +1,10 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [Synchronizer](index.md) / [processorInfo](./processor-info.md)
# processorInfo
`abstract val processorInfo: Flow<`[`CompactBlockProcessor.ProcessorInfo`](../../cash.z.wallet.sdk.block/-compact-block-processor/-processor-info/index.md)`>`
A flow of processor details, updated every time blocks are processed to include the latest
block height, blocks downloaded and blocks scanned. Similar to the [progress](progress.md) flow but with a
lot more detail.

View File

@ -1,10 +1,10 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk.data](../index.md) / [Synchronizer](index.md) / [progress](./progress.md)
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [Synchronizer](index.md) / [progress](./progress.md)
# progress
`abstract fun progress(): ReceiveChannel<`[`Int`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`>`
`abstract val progress: Flow<`[`Int`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`>`
A stream of progress values, typically corresponding to this Synchronizer downloading blocks. Typically, any non-
zero value below 100 indicates that progress indicators can be shown and a value of 100 signals that progress is
complete and any progress indicators can be hidden.
A flow of progress values, typically corresponding to this Synchronizer downloading blocks.
Typically, any non- zero value below 100 indicates that progress indicators can be shown and
a value of 100 signals that progress is complete and any progress indicators can be hidden.

View File

@ -0,0 +1,8 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [Synchronizer](index.md) / [receivedTransactions](./received-transactions.md)
# receivedTransactions
`abstract val receivedTransactions: Flow<PagedList<`[`ConfirmedTransaction`](../../cash.z.wallet.sdk.entity/-confirmed-transaction/index.md)`>>`
A flow of all transactions related to receiving funds.

View File

@ -1,13 +1,15 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk.data](../index.md) / [Synchronizer](index.md) / [sendToAddress](./send-to-address.md)
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [Synchronizer](index.md) / [sendToAddress](./send-to-address.md)
# sendToAddress
`abstract suspend fun sendToAddress(zatoshi: `[`Long`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)`, toAddress: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, memo: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)` = "", fromAccountId: `[`Int`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)` = 0): `[`PendingTransaction`](../../cash.z.wallet.sdk.entity/-pending-transaction/index.md)
`abstract fun sendToAddress(spendingKey: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, zatoshi: `[`Long`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)`, toAddress: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, memo: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)` = "", fromAccountIndex: `[`Int`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)` = 0): Flow<`[`PendingTransaction`](../../cash.z.wallet.sdk.entity/-pending-transaction/index.md)`>`
Sends zatoshi.
### Parameters
`spendingKey` - the key that allows spends to occur.
`zatoshi` - the amount of zatoshi to send.
`toAddress` - the recipient's address.

View File

@ -0,0 +1,8 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [Synchronizer](index.md) / [sentTransactions](./sent-transactions.md)
# sentTransactions
`abstract val sentTransactions: Flow<PagedList<`[`ConfirmedTransaction`](../../cash.z.wallet.sdk.entity/-confirmed-transaction/index.md)`>>`
A flow of all transactions related to sending funds.

View File

@ -1,12 +1,13 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk.data](../index.md) / [Synchronizer](index.md) / [start](./start.md)
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [Synchronizer](index.md) / [start](./start.md)
# start
`abstract fun start(parentScope: CoroutineScope): `[`Synchronizer`](index.md)
`abstract fun start(parentScope: CoroutineScope? = null): `[`Synchronizer`](index.md)
Starts this synchronizer within the given scope.
### Parameters
`parentScope` - the scope to use for this synchronizer, typically something with a lifecycle such as an
Activity. Implementations should leverage structured concurrency and cancel all jobs when this scope completes.
`parentScope` - the scope to use for this synchronizer, typically something with a
lifecycle such as an Activity. Implementations should leverage structured concurrency and
cancel all jobs when this scope completes.

View File

@ -0,0 +1,9 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [Synchronizer](index.md) / [status](./status.md)
# status
`abstract val status: Flow<`[`Synchronizer.Status`](-status/index.md)`>`
A flow of values representing the [Status](-status/index.md) of this Synchronizer. As the status changes, a new
value will be emitted by this flow.

View File

@ -1,9 +1,9 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk.data](../index.md) / [Synchronizer](index.md) / [stop](./stop.md)
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [Synchronizer](index.md) / [stop](./stop.md)
# stop
`abstract fun stop(): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
Stop this synchronizer. Implementations should ensure that calling this method cancels all jobs that were created
by this instance.
Stop this synchronizer. Implementations should ensure that calling this method cancels all
jobs that were created by this instance.

View File

@ -0,0 +1,11 @@
[zcash-android-wallet-sdk](../../index.md) / [cash.z.wallet.sdk](../index.md) / [Synchronizer](index.md) / [validateAddress](./validate-address.md)
# validateAddress
`abstract suspend fun validateAddress(address: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`): `[`Synchronizer.AddressType`](-address-type/index.md)
Validates the given address, returning information about why it is invalid.
### Parameters
`address` - the address to validate.