|
41 | 41 | - [Get new pending transactions](https://github.com/matter-labs/web3swift/blob/master/Documentation/Usage.md#get-new-pending-transactions)
|
42 | 42 | - [Create a new subscription over particular events](https://github.com/matter-labs/web3swift/blob/master/Documentation/Usage.md#create-a-new-subscription-over-particular-events)
|
43 | 43 | - [Subscribe on new pending transactions](https://github.com/matter-labs/web3swift/blob/master/Documentation/Usage.md#subscribe-on-new-pending-transactions)
|
| 44 | +- **[ENS](https://github.com/matter-labs/web3swift/blob/master/Documentation/Usage.md#ens)** |
| 45 | + - [Registry](https://github.com/matter-labs/web3swift/blob/master/Documentation/Usage.md#registry) |
| 46 | + - [Resolver](https://github.com/matter-labs/web3swift/blob/master/Documentation/Usage.md#resolver) |
| 47 | + - [BaseRegistrar](https://github.com/matter-labs/web3swift/blob/master/Documentation/Usage.md#baseregistrar) |
| 48 | + - [RegistrarController](https://github.com/matter-labs/web3swift/blob/master/Documentation/Usage.md#registrarcontroller) |
44 | 49 |
|
45 | 50 | ## Introduction
|
46 | 51 |
|
@@ -432,3 +437,66 @@ try! socketProvider.subscribe(params: <[Encodable]>)
|
432 | 437 | try! socketProvider.subscribeOnNewPendingTransactions()
|
433 | 438 | ```
|
434 | 439 |
|
| 440 | +## ENS |
| 441 | + |
| 442 | +You need ENS instance for future actions: |
| 443 | +```swift |
| 444 | +let web = web3(provider: InfuraProvider(Networks.Mainnet)!) |
| 445 | +let ens = ENS(web3: web)! |
| 446 | +``` |
| 447 | + |
| 448 | +### Registry |
| 449 | + |
| 450 | +You can get/set owner, resolver, ttl via ENS property registry: |
| 451 | +```swift |
| 452 | +let owner = try! ens.registry.getOwner(node: node) |
| 453 | +let resultSettingOwner = try! ens.registry.setOwner(node: node, owner: owner, options: options, password: password) |
| 454 | +... |
| 455 | +``` |
| 456 | + |
| 457 | +### Resolver |
| 458 | + |
| 459 | +You use convenient resolver methods from ENS instance: |
| 460 | +```swift |
| 461 | +let address = try! ens.getAddress(forNode: node) |
| 462 | +let name = try! ens.getName(forNode: node) |
| 463 | +let content = try! ens.getContent(forNode: node) |
| 464 | +let abi = try! ens.getABI(forNode: node) |
| 465 | +let pubkey = try! ens.getPublicKey(forNode: node) |
| 466 | +let text = try! ens.getText(forNode: node, key: key) |
| 467 | + |
| 468 | +let result = try! ens.setAddress(forNode: node, address: address, options: options, password: password) |
| 469 | +let result = try! ens.setName(forNode: node, name: name, options: options, password: password) |
| 470 | +let result = try! ens.setContent(forNode: node, hash: hash, options: options, password: password) |
| 471 | +let result = try! ens.setABI(forNode: node, contentType: .JSON, data: data, options: options, password: password) |
| 472 | +let result = try! ens.setPublicKey(forNode: node, publicKey: publicKey, options: options, password: password) |
| 473 | +let result = try! ens.setText(forNode: node, key: key, value: value, options: options, password: password) |
| 474 | +``` |
| 475 | +or you can get resolver to use its methods directly: |
| 476 | +```swift |
| 477 | +let resolver = try! ens.registry.getResolver(forDomain: domain) |
| 478 | +let doSomething = try! resolver. ... |
| 479 | +``` |
| 480 | +or set it as ENS instance property and use its methods from it: |
| 481 | +```swift |
| 482 | +try! ens.setENSResolver(withDomain: domain) |
| 483 | +let doSomething = try! ens.resolver!. ... |
| 484 | +``` |
| 485 | + |
| 486 | +### BaseRegistrar |
| 487 | +You can set BaseRegistrar as ENS instance property and use its methods from it: |
| 488 | +```swift |
| 489 | +ens.setBaseRegistrar(withAddress: address) |
| 490 | +let doSomething = try! ens.baseRegistrar!. ... |
| 491 | +``` |
| 492 | + |
| 493 | +### RegistrarController |
| 494 | +You can set RegistrarController as ENS instance property and use its methods from it: |
| 495 | +```swift |
| 496 | +ens.setRegistrarController(withAddresss: address) |
| 497 | +let doSomething = try! ens.registrarController!. ... |
| 498 | +``` |
| 499 | + |
| 500 | + |
| 501 | + |
| 502 | + |
0 commit comments