-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathweb3.puml
More file actions
592 lines (590 loc) · 19.8 KB
/
Copy pathweb3.puml
File metadata and controls
592 lines (590 loc) · 19.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
@startuml
class coming.web3.ethereum.NetworkInfo {
+ String name
+ String symbol
+ String rpcServerUrl
+ String etherscanUrl
+ long chainId
+ boolean isCustom
}
class coming.web3.enity.EthereumWriteBuffer {
+ void write32(BigInteger)
+ void writeAddress(BigInteger)
+ void writeAddress(String)
+ void writeBytes(String,int)
+ void writeUnsigned4(BigInteger)
+ void writeUnsigned4(long)
+ void writeCompressedIndices(int[])
+ void writeTokenIds(List<BigInteger>)
+ void writeSignature(byte[])
+ void write4ByteMicroEth(BigInteger)
+ void writeValue(String,int)
}
class coming.web3.util.Utils {
- {static} String ISOLATE_NUMERIC
- {static} String ICON_REPO_ADDRESS_TOKEN
- {static} String CHAIN_REPO_ADDRESS_TOKEN
- {static} String TOKEN_LOGO
+ {static} String ALPHAWALLET_REPO_NAME
- {static} String TRUST_ICON_REPO_BASE
- {static} String TRUST_ICON_REPO
- {static} String ALPHAWALLET_ICON_REPO
- {static} Map<Long,String> twChainNames
- {static} String IPFS_PREFIX
+ {static} int dp2px(Context,int)
+ {static} boolean isValidUrl(String)
+ {static} boolean isAlNum(String)
+ {static} boolean isValidValue(String)
- {static} String getFirstWord(String)
+ {static} String getIconisedText(String)
+ {static} String getShortSymbol(String)
+ {static} String loadJSONFromAsset(Context,String)
+ {static} boolean isAddressValid(String)
+ {static} String longArrayToString(Long[])
+ {static} List<Long> longListToArray(String)
+ {static} int[] bigIntegerListToIntList(List<BigInteger>)
+ {static} BigInteger parseTokenId(String)
+ {static} String bigIntListToString(List<BigInteger>,boolean)
+ {static} List<Integer> stringIntsToIntegerList(String)
+ {static} String integerListToString(List<Integer>,boolean)
+ {static} Map<BigInteger,BigInteger> getIdMap(List<BigInteger>)
+ {static} boolean isNumeric(String)
+ {static} boolean isHex(String)
+ {static} String isolateNumeric(String)
+ {static} String formatAddress(String)
+ {static} String escapeHTML(String)
+ {static} long randomId()
+ {static} String getDomainName(String)
+ {static} String getTokenAddrFromUrl(String)
+ {static} String getTokenAddrFromAWUrl(String)
+ {static} String getTWTokenImageUrl(long,String)
+ {static} String getTokenImageUrl(String)
+ {static} String getAWIconRepo(String)
+ {static} String parseIPFS(String)
+ {static} String loadFile(Context,int)
+ {static} long timeUntil(long)
+ {static} boolean verifyInstallerId(Context)
+ {static} boolean isTransactionHash(String)
}
interface coming.web3.enity.Signable {
~ String getMessage()
~ long getCallbackId()
~ byte[] getPrehash()
~ String getOrigin()
~ CharSequence getUserMessage()
~ SignMessageType getMessageType()
}
class coming.web3.Web3ViewClient {
- Object lock
- JsInjectorClient jsInjectorClient
- UrlHandlerManager urlHandlerManager
- boolean isInjected
~ void addUrlHandler(UrlHandler)
~ void removeUrlHandler(UrlHandler)
+ boolean shouldOverrideUrlLoading(WebView,String)
+ boolean shouldOverrideUrlLoading(WebView,WebResourceRequest)
- boolean shouldOverrideUrlLoading(WebView,String,boolean,boolean)
+ WebResourceResponse shouldInterceptRequest(WebView,WebResourceRequest)
- void injectScriptFile(WebView)
+ void onReceivedSslError(WebView,SslErrorHandler,SslError)
+ void onReload()
}
class coming.web3.enity.TypedData {
+ String name
+ String type
+ Object data
+ {static} Creator<TypedData> CREATOR
+ int describeContents()
+ void writeToParcel(Parcel,int)
}
class coming.web3.util.Hex {
+ {static} int hexToInteger(String,int)
+ {static} Integer hexToInteger(String)
+ {static} long hexToLong(String,int)
+ {static} Long hexToLong(String)
+ {static} BigInteger hexToBigInteger(String)
+ {static} BigInteger hexToBigInteger(String,BigInteger)
+ {static} BigDecimal hexToBigDecimal(String)
+ {static} BigDecimal hexToBigDecimal(String,BigDecimal)
+ {static} boolean containsHexPrefix(String)
+ {static} String cleanHexPrefix(String)
+ {static} String hexToDecimal(String)
+ {static} byte[] hexStringToByteArray(String)
+ {static} String byteArrayToHexString(byte[],int,int,boolean)
+ {static} String byteArrayToHexString(byte[])
+ {static} String hexToUtf8(String)
}
abstract class coming.web3.ethereum.EthereumNetworkBase {
+ {static} long MAINNET_ID
+ {static} long CLASSIC_ID
+ {static} long POA_ID
+ {static} long KOVAN_ID
+ {static} long ROPSTEN_ID
+ {static} long SOKOL_ID
+ {static} long RINKEBY_ID
+ {static} long XDAI_ID
+ {static} long GOERLI_ID
+ {static} long ARTIS_SIGMA1_ID
+ {static} long ARTIS_TAU1_ID
+ {static} long BINANCE_TEST_ID
+ {static} long BINANCE_MAIN_ID
+ {static} long HECO_ID
+ {static} long HECO_TEST_ID
+ {static} long FANTOM_ID
+ {static} long FANTOM_TEST_ID
+ {static} long AVALANCHE_ID
+ {static} long FUJI_TEST_ID
+ {static} long MATIC_ID
+ {static} long MATIC_TEST_ID
+ {static} long OPTIMISTIC_MAIN_ID
+ {static} long OPTIMISTIC_TEST_ID
+ {static} long CRONOS_TEST_ID
+ {static} long ARBITRUM_MAIN_ID
+ {static} long ARBITRUM_TEST_ID
+ {static} long PALM_ID
+ {static} long PALM_TEST_ID
+ {static} String MAINNET_RPC_URL
+ {static} String CLASSIC_RPC_URL
+ {static} String XDAI_RPC_URL
+ {static} String POA_RPC_URL
+ {static} String ROPSTEN_RPC_URL
+ {static} String RINKEBY_RPC_URL
+ {static} String KOVAN_RPC_URL
+ {static} String SOKOL_RPC_URL
+ {static} String GOERLI_RPC_URL
+ {static} String ARTIS_SIGMA1_RPC_URL
+ {static} String ARTIS_TAU1_RPC_URL
+ {static} String BINANCE_TEST_RPC_URL
+ {static} String BINANCE_MAIN_RPC_URL
+ {static} String HECO_RPC_URL
+ {static} String HECO_TEST_RPC_URL
+ {static} String AVALANCHE_RPC_URL
+ {static} String FUJI_TEST_RPC_URL
+ {static} String FANTOM_RPC_URL
+ {static} String FANTOM_TEST_RPC_URL
+ {static} String MATIC_RPC_URL
+ {static} String MUMBAI_TEST_RPC_URL
+ {static} String OPTIMISTIC_MAIN_URL
+ {static} String OPTIMISTIC_TEST_URL
+ {static} String CRONOS_TEST_URL
+ {static} String ARBITRUM_RPC_URL
+ {static} String ARBITRUM_TEST_RPC_URL
+ {static} String PALM_RPC_URL
+ {static} String PALM_TEST_RPC_URL
~ {static} Map<Long,NetworkInfo> networkMap
+ {static} NetworkInfo getNetworkByChain(long)
+ {static} String getShortChainName(long)
+ {static} String getChainSymbol(long)
}
class coming.web3.UrlHandlerManager {
- Map<String,UrlHandler> handlers
+ void add(UrlHandler)
+ void remove(UrlHandler)
~ String handle(String)
~ String handle(Uri)
}
class coming.web3.enity.Numeric {
- {static} String HEX_PREFIX
- {static} boolean isValidHexQuantity(String)
+ {static} String cleanHexPrefix(String)
+ {static} String prependHexPrefix(String)
+ {static} boolean containsHexPrefix(String)
+ {static} BigInteger toBigInt(byte[],int,int)
+ {static} BigInteger toBigInt(byte[])
+ {static} BigInteger toBigInt(String)
+ {static} BigInteger toBigIntNoPrefix(String)
+ {static} String toHexStringWithPrefix(BigInteger)
+ {static} String toHexStringNoPrefix(BigInteger)
+ {static} String toHexStringNoPrefix(byte[])
+ {static} String toHexStringWithPrefixZeroPadded(BigInteger,int)
+ {static} String toHexStringNoPrefixZeroPadded(BigInteger,int)
- {static} String toHexStringZeroPadded(BigInteger,int,boolean)
+ {static} byte[] toBytesPadded(BigInteger,int)
+ {static} byte[] hexStringToByteArray(String)
+ {static} String toHexString(byte[],int,int,boolean)
+ {static} String toHexString(byte[])
+ {static} byte asByte(int,int)
+ {static} boolean isIntegerValue(BigDecimal)
}
class coming.web3.util.Convert {
+ {static} BigDecimal fromWei(String,Unit)
+ {static} BigDecimal fromWei(BigDecimal,Unit)
+ {static} BigDecimal toWei(String,Unit)
+ {static} BigDecimal toWei(BigDecimal,Unit)
+ {static} String getEthString(double)
+ {static} String getEthString(double,int)
+ {static} String getConvertedValue(BigDecimal,int)
+ {static} String getEthStringSzabo(BigInteger)
}
class coming.web3.enity.EthereumReadBuffer {
- byte[] readBuffer
+ BigInteger readBI()
+ BigInteger readBI(int)
+ String readAddress()
+ int available()
+ void readSignature(byte[])
+ void readUnsignedShort(int[])
- int toUnsignedInt(short)
- int toUnsignedInt(byte)
+ long toUnsignedLong(int)
+ List<BigInteger> readTokenIdsFromSpawnableLink(int)
+ int[] readCompressedIndices(int)
+ byte[] readBytes(int)
}
class coming.web3.enity.UnsignedLong {
+ {static} UnsignedLong create(long)
+ {static} UnsignedLong create(BigInteger)
+ {static} byte[] createBytes(long)
- {static} int getByteVal(long,int)
}
class coming.web3.util.BalanceUtils {
- {static} String weiInEth
- {static} int showDecimalPlaces
- {static} String MACRO_PATTERN
- {static} String getDigitalPattern(int)
- {static} String getDigitalPattern(int,int)
- {static} String convertToLocale(String)
+ {static} BigDecimal weiToEth(BigDecimal)
+ {static} String ethToUsd(String,String)
+ {static} String EthToWei(String)
+ {static} String UnitToEMultiplier(String,BigDecimal)
+ {static} BigDecimal weiToGweiBI(BigInteger)
+ {static} String weiToGwei(BigInteger)
+ {static} String weiToGweiInt(BigDecimal)
+ {static} String weiToGwei(BigDecimal,int)
+ {static} BigInteger gweiToWei(BigDecimal)
+ {static} BigInteger baseToSubunit(String,int)
+ {static} BigDecimal subunitToBase(BigInteger,int)
+ {static} boolean isDecimalValue(String)
+ {static} String getScaledValueWithLimit(BigDecimal,long)
+ {static} String getScaledValueFixed(BigDecimal,long,int)
+ {static} String getScaledValueMinimal(BigDecimal,long,int)
- {static} boolean requiresSuffix(BigDecimal,int)
- {static} String getSuffixedValue(BigDecimal,int)
+ {static} String getScaledValue(BigDecimal,long,int)
- {static} String scaledValue(BigDecimal,String,long,int)
+ {static} String getScaledValue(String,long,int)
}
class coming.web3.enity.TokenscriptElement {
+ String localRef
+ String ref
+ String value
+ boolean isToken()
+ int getTokenIndex()
}
interface coming.web3.OnSignMessageListener {
~ void onSignMessage(Message)
}
class coming.web3.SignCallbackJSInterface {
- WebView webView
- OnSignTransactionListener onSignTransactionListener
- OnSignMessageListener onSignMessageListener
- OnSignPersonalMessageListener onSignPersonalMessageListener
- OnSignTypedMessageListener onSignTypedMessageListener
+ void signTransaction(int,String,String,String,String,String,String)
+ void signMessage(int,String)
+ void signPersonalMessage(int,String)
+ void signTypedMessage(int,String)
- String getUrl()
}
class coming.web3.SignCallbackJSInterface.TrustProviderTypedData {
+ String name
+ String type
+ Object value
}
class coming.web3.JsInjectorResponse {
~ String data
~ String url
~ String mime
~ String charset
~ boolean isRedirect
}
class coming.web3.JsInjectorClient {
- {static} String DEFAULT_CHARSET
- {static} String DEFAULT_MIME_TYPE
- {static} String JS_TAG_TEMPLATE
- Context context
- OkHttpClient httpClient
- String jsLibrary
- int chainId
- Address walletAddress
- String rpcUrl
+ Address getWalletAddress()
+ void setWalletAddress(Address)
+ int getChainId()
+ void setChainId(int)
+ String getRpcUrl()
+ void setRpcUrl(String)
~ JsInjectorResponse loadUrl(String,String)
~ JsInjectorResponse loadUrl(String,Map<String,String>)
~ String assembleJs(Context,String)
- JsInjectorResponse buildResponse(Response)
~ String injectJS(String)
- String injectJS(String,String)
- int getInjectionPosition(String)
- Request buildRequest(String,Map<String,String>)
- String loadInitJs(Context)
- String loadFile(Context,int)
- String getMimeType(String)
- String getCharset(String)
- String getContentTypeHeader(Response)
- OkHttpClient createHttpClient()
}
class coming.web3.WrapWebSettings {
- WebSettings origin
+ void setSupportZoom(boolean)
+ boolean supportZoom()
+ void setMediaPlaybackRequiresUserGesture(boolean)
+ boolean getMediaPlaybackRequiresUserGesture()
+ void setBuiltInZoomControls(boolean)
+ boolean getBuiltInZoomControls()
+ void setDisplayZoomControls(boolean)
+ boolean getDisplayZoomControls()
+ void setAllowFileAccess(boolean)
+ boolean getAllowFileAccess()
+ void setAllowContentAccess(boolean)
+ boolean getAllowContentAccess()
+ void setLoadWithOverviewMode(boolean)
+ boolean getLoadWithOverviewMode()
+ void setEnableSmoothTransition(boolean)
+ boolean enableSmoothTransition()
+ void setSaveFormData(boolean)
+ boolean getSaveFormData()
+ void setSavePassword(boolean)
+ boolean getSavePassword()
+ void setTextZoom(int)
+ int getTextZoom()
+ void setDefaultZoom(ZoomDensity)
+ ZoomDensity getDefaultZoom()
+ void setLightTouchEnabled(boolean)
+ boolean getLightTouchEnabled()
+ void setUseWideViewPort(boolean)
+ boolean getUseWideViewPort()
+ void setSupportMultipleWindows(boolean)
+ boolean supportMultipleWindows()
+ void setLayoutAlgorithm(LayoutAlgorithm)
+ LayoutAlgorithm getLayoutAlgorithm()
+ void setStandardFontFamily(String)
+ String getStandardFontFamily()
+ void setFixedFontFamily(String)
+ String getFixedFontFamily()
+ void setSansSerifFontFamily(String)
+ String getSansSerifFontFamily()
+ void setSerifFontFamily(String)
+ String getSerifFontFamily()
+ void setCursiveFontFamily(String)
+ String getCursiveFontFamily()
+ void setFantasyFontFamily(String)
+ String getFantasyFontFamily()
+ void setMinimumFontSize(int)
+ int getMinimumFontSize()
+ void setMinimumLogicalFontSize(int)
+ int getMinimumLogicalFontSize()
+ void setDefaultFontSize(int)
+ int getDefaultFontSize()
+ void setDefaultFixedFontSize(int)
+ int getDefaultFixedFontSize()
+ void setLoadsImagesAutomatically(boolean)
+ boolean getLoadsImagesAutomatically()
+ void setBlockNetworkImage(boolean)
+ boolean getBlockNetworkImage()
+ void setBlockNetworkLoads(boolean)
+ boolean getBlockNetworkLoads()
+ void setJavaScriptEnabled(boolean)
+ void setAllowUniversalAccessFromFileURLs(boolean)
+ void setAllowFileAccessFromFileURLs(boolean)
+ void setPluginState(PluginState)
+ void setDatabasePath(String)
+ void setGeolocationDatabasePath(String)
+ void setAppCacheEnabled(boolean)
+ void setAppCachePath(String)
+ void setAppCacheMaxSize(long)
+ void setDatabaseEnabled(boolean)
+ void setDomStorageEnabled(boolean)
+ boolean getDomStorageEnabled()
+ String getDatabasePath()
+ boolean getDatabaseEnabled()
+ void setGeolocationEnabled(boolean)
+ boolean getJavaScriptEnabled()
+ boolean getAllowUniversalAccessFromFileURLs()
+ boolean getAllowFileAccessFromFileURLs()
+ PluginState getPluginState()
+ void setJavaScriptCanOpenWindowsAutomatically(boolean)
+ boolean getJavaScriptCanOpenWindowsAutomatically()
+ void setDefaultTextEncodingName(String)
+ String getDefaultTextEncodingName()
+ void setUserAgentString(String)
+ String getUserAgentString()
+ void setNeedInitialFocus(boolean)
+ void setRenderPriority(RenderPriority)
+ void setCacheMode(int)
+ int getCacheMode()
+ void setMixedContentMode(int)
+ int getMixedContentMode()
+ void setOffscreenPreRaster(boolean)
+ boolean getOffscreenPreRaster()
+ void setSafeBrowsingEnabled(boolean)
+ boolean getSafeBrowsingEnabled()
+ void setDisabledActionModeMenuItems(int)
+ int getDisabledActionModeMenuItems()
}
class coming.web3.enity.Message {
- CharSequence userMessage
+ String displayOrigin
+ long leafPosition
+ byte[] prehash
+ {static} String MESSAGE_PREFIX
- SignMessageType messageType
- byte[] getEthereumMessage(String)
+ String getMessage()
+ CharSequence getUserMessage()
+ byte[] getPrehash()
+ String getOrigin()
+ long getCallbackId()
+ SignMessageType getMessageType()
- String hexToUtf8(CharSequence)
- boolean isHex(String)
- byte[] getEthereumMessagePrefix(int)
}
class coming.web3.enity.Web3Transaction {
+ Address recipient
+ Address contract
+ BigInteger value
+ BigInteger gasPrice
+ BigInteger gasLimit
+ long nonce
+ String payload
+ long leafPosition
+ String description
+ {static} Creator<Web3Transaction> CREATOR
+ int describeContents()
+ void writeToParcel(Parcel,int)
+ boolean isConstructor()
+ Transaction getWeb3jTransaction(String,long)
}
interface coming.web3.OnSignTypedMessageListener {
~ void onSignTypedMessage(Message)
}
class coming.web3.enity.MessageUtils {
+ {static} byte[] encodeParams(ProviderTypedData[])
+ {static} byte[] encodeValues(ProviderTypedData[])
- {static} int parseTypeN(String)
}
class coming.web3.enity.Address {
+ {static} Address EMPTY
- String value
+ {static} Creator<Address> CREATOR
+ String toString()
+ int hashCode()
+ boolean equals(Object)
+ int describeContents()
+ void writeToParcel(Parcel,int)
}
class coming.web3.enity.EthereumTransaction {
+ Map<String,TokenscriptElement> args
}
interface coming.web3.OnSignTransactionListener {
~ void onSignTransaction(Web3Transaction,String)
}
class coming.web3.enity.ProviderTypedData {
+ String name
+ String type
+ Object value
}
class coming.web3.enity.Web3Call {
+ Address to
+ DefaultBlockParameter blockParam
+ String payload
+ long leafPosition
}
class coming.web3.WebViewCookieJar {
- CookieManager webViewCookieManager
+ void saveFromResponse(HttpUrl,List<Cookie>)
+ List<Cookie> loadForRequest(HttpUrl)
}
interface coming.web3.OnSignPersonalMessageListener {
~ void onSignPersonalMessage(Message)
}
class coming.web3.util.StyledStringBuilder {
- List<SpanType> spanners
- int startIndex
- int startGroup
+ SpannableStringBuilder append(CharSequence)
+ SpannableStringBuilder setStyle(StyleSpan)
+ SpannableStringBuilder setColor(int)
+ SpannableStringBuilder startStyleGroup()
+ void applyStyles()
}
class coming.web3.util.StyledStringBuilder.SpanType {
~ int begin
~ int end
~ StyleSpan style
~ ForegroundColorSpan styleColour
}
interface coming.web3.UrlHandler {
~ String getScheme()
~ String handle(Uri)
}
class coming.web3.Web3View {
- {static} String JS_PROTOCOL_CANCELLED
- {static} String JS_PROTOCOL_ON_SUCCESSFUL
- {static} String JS_PROTOCOL_ON_FAILURE
- OnSignTransactionListener onSignTransactionListener
- OnSignMessageListener onSignMessageListener
- OnSignPersonalMessageListener onSignPersonalMessageListener
- OnSignTypedMessageListener onSignTypedMessageListener
- JsInjectorClient jsInjectorClient
- Web3ViewClient webViewClient
- OnSignTransactionListener innerOnSignTransactionListener
- OnSignMessageListener innerOnSignMessageListener
- OnSignPersonalMessageListener innerOnSignPersonalMessageListener
- OnSignTypedMessageListener innerOnSignTypedMessageListener
+ void setWebChromeClient(WebChromeClient)
+ void setWebViewClient(WebViewClient)
- void init()
+ WebSettings getSettings()
+ void setWalletAddress(Address)
+ Address getWalletAddress()
+ void setChainId(int)
+ int getChainId()
+ void setRpcUrl(String)
+ String getRpcUrl()
+ void addUrlHandler(UrlHandler)
+ void removeUrlHandler(UrlHandler)
+ void setOnSignTransactionListener(OnSignTransactionListener)
+ void setOnSignMessageListener(OnSignMessageListener)
+ void setOnSignPersonalMessageListener(OnSignPersonalMessageListener)
+ void setOnSignTypedMessageListener(OnSignTypedMessageListener)
+ void onSignTransactionSuccessful(Web3Transaction,String)
+ void onSignMessageSuccessful(Message,String)
+ void onSignPersonalMessageSuccessful(Message,String)
+ void onSignError(Web3Transaction,String)
+ void onSignError(Message,String)
+ void onSignCancel(Web3Transaction)
- void callbackToJS(long,String,String)
}
class coming.web3.Web3View.WrapWebViewClient {
- Web3ViewClient internalClient
- WebViewClient externalClient
- JsInjectorClient jsInjectorClient
+ boolean shouldOverrideUrlLoading(WebView,String)
+ boolean shouldOverrideUrlLoading(WebView,WebResourceRequest)
+ WebResourceResponse shouldInterceptRequest(WebView,WebResourceRequest)
}
java.io.DataOutputStream <|-- coming.web3.enity.EthereumWriteBuffer
android.webkit.WebViewClient <|-- coming.web3.Web3ViewClient
android.os.Parcelable <|.. coming.web3.enity.TypedData
java.io.DataInputStream <|-- coming.web3.enity.EthereumReadBuffer
java.math.BigInteger <|-- coming.web3.enity.UnsignedLong
coming.web3.SignCallbackJSInterface +.. coming.web3.SignCallbackJSInterface.TrustProviderTypedData
android.webkit.WebSettings <|-- coming.web3.WrapWebSettings
coming.web3.enity.Signable <|.. coming.web3.enity.Message
android.os.Parcelable <|.. coming.web3.enity.Web3Transaction
android.os.Parcelable <|.. coming.web3.enity.Address
okhttp3.CookieJar <|.. coming.web3.WebViewCookieJar
android.text.SpannableStringBuilder <|-- coming.web3.util.StyledStringBuilder
coming.web3.util.StyledStringBuilder +.. coming.web3.util.StyledStringBuilder.SpanType
android.webkit.WebView <|-- coming.web3.Web3View
coming.web3.Web3View +.. coming.web3.Web3View.WrapWebViewClient
coming.web3.WebViewClient <|-- coming.web3.Web3View.WrapWebViewClient
@enduml