Skip to content

Commit 9e0343c

Browse files
Rename request types
- JSONRPCParameter -> APIRequestParameterType - JSONParameterElement -> APIRequestParameterElementType
1 parent f1ab07d commit 9e0343c

9 files changed

+100
-86
lines changed

Sources/web3swift/Promises/Promise+Web3+Eth+FeeHistory.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import BigInt
1111

1212
extension web3.Eth {
1313
func feeHistory(blockCount: BigUInt, block: String, percentiles:[Double]) async throws -> Web3.Oracle.FeeHistory {
14-
let parameters: [JSONRPCParameter] = [blockCount.hexString, block, percentiles]
14+
let parameters: [APIRequestParameterType] = [blockCount.hexString, block, percentiles]
1515

1616
let request = JSONRPCRequestFabric.prepareRequest(.feeHistory, parameters: parameters)
1717
let response = try await web3.dispatch(request)

Sources/web3swift/Promises/Promise+Web3+Personal+UnlockAccount.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ extension web3.Personal {
2020
throw Web3Error.inputError(desc: "Can not unlock a local keystore")
2121
}
2222

23-
let parameters: [JSONRPCParameter] = [account.lowercased(), password, seconds]
23+
let parameters: [APIRequestParameterType] = [account.lowercased(), password, seconds]
2424

2525
let request = JSONRPCRequestFabric.prepareRequest(.unlockAccount, parameters: parameters)
2626

Sources/web3swift/Transaction/EthereumTransaction.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -193,7 +193,7 @@ public struct EthereumTransaction: CustomStringConvertible {
193193
if method == .estimateGas || transactionOptions?.gasLimit == nil {
194194
txParams.gas = nil
195195
}
196-
var params: [RPCParameter] = [.transaction(txParams)]
196+
var params: [RequestParameter] = [.transaction(txParams)]
197197
if let onBlock = onBlock, method.requiredNumOfParameters == 2 {
198198
params.append(.string(onBlock))
199199
}
@@ -216,7 +216,7 @@ public struct EthereumTransaction: CustomStringConvertible {
216216
let hex = encodedData.toHexString().addHexPrefix().lowercased()
217217
var request = JSONRPCrequest()
218218
request.method = JSONRPCmethod.sendRawTransaction
219-
let params: [RPCParameter] = [.string(hex)]
219+
let params: [RequestParameter] = [.string(hex)]
220220
request.params = params
221221
if !request.isValid { return nil }
222222
return request
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
//
2+
// Web3+APIMethod.swift
3+
// Web3swift
4+
//
5+
// Created by Yaroslav on 24.05.2022.
6+
//
7+
8+
import Foundation

Sources/web3swift/Web3/Web3+JSONRPCParameter.swift renamed to Sources/web3swift/Web3/Web3+APIRequestParameter.swift

Lines changed: 34 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
1-
// Package: web3swift
2-
// Created by Alex Vlasov.
3-
// Copyright © 2022 Yaroslav Yashin. All rights reserved.
1+
//
2+
// Web3+APIRequestParameter.swift
3+
// Web3swift
4+
//
5+
// Created by Yaroslav on 24.05.2022.
6+
//
7+
8+
import Foundation
49

510
/// Protocol to restrict supported types which can be passed into `JSONRPCRequest` to a node.
611
///
@@ -12,35 +17,35 @@
1217
/// Conformance of that protocol by a custom type will be silently failed to encode (e.g. there won't be in request).
1318
///
1419
/// Please see `RPCParameter` documentation for more details.
15-
public protocol JSONRPCParameter: Encodable { }
20+
public protocol APIRequestParameterType: Encodable { }
1621

17-
protocol JSONParameterElement: Encodable { }
22+
protocol APIRequestParameterElementType: Encodable { }
1823

19-
extension Int: JSONRPCParameter { }
24+
extension Int: APIRequestParameterType { }
2025

21-
extension UInt: JSONRPCParameter { }
26+
extension UInt: APIRequestParameterType { }
2227

23-
extension Double: JSONRPCParameter { }
28+
extension Double: APIRequestParameterType { }
2429

25-
extension String: JSONRPCParameter { }
30+
extension String: APIRequestParameterType { }
2631

27-
extension Bool: JSONRPCParameter { }
32+
extension Bool: APIRequestParameterType { }
2833

29-
extension Array: JSONRPCParameter where Element: JSONParameterElement { }
34+
extension Array: APIRequestParameterType where Element: APIRequestParameterElementType { }
3035

31-
extension TransactionParameters: JSONRPCParameter { }
36+
extension TransactionParameters: APIRequestParameterType { }
3237

33-
extension EventFilterParameters: JSONRPCParameter { }
38+
extension EventFilterParameters: APIRequestParameterType { }
3439

35-
extension Int: JSONParameterElement { }
40+
extension Int: APIRequestParameterElementType { }
3641

37-
extension UInt: JSONParameterElement { }
42+
extension UInt: APIRequestParameterElementType { }
3843

39-
extension Double: JSONParameterElement { }
44+
extension Double: APIRequestParameterElementType { }
4045

41-
extension String: JSONParameterElement { }
46+
extension String: APIRequestParameterElementType { }
4247

43-
extension Bool: JSONParameterElement { }
48+
extension Bool: APIRequestParameterElementType { }
4449

4550
/**
4651
Enum to compose request to the node params.
@@ -55,11 +60,11 @@ extension Bool: JSONParameterElement { }
5560

5661
So in our case we're using such to implement custom `encode` method to any used in node request params types.
5762

58-
Latter is required to encode array of `RPCParameter` to not to `[RPCParameter.int(1)]`, but to `[1]`.
63+
Latter is required to encode array of `RequestParameter` to not to `[RequestParameter.int(1)]`, but to `[1]`.
5964

6065
Here's an example of using this enum in field.
6166
```swift
62-
let jsonRPCParams: [JSONRPCParameter] = [
67+
let jsonRPCParams: [APIRequestParameterType] = [
6368
.init(rawValue: 12)!,
6469
.init(rawValue: "this")!,
6570
.init(rawValue: 12.2)!,
@@ -70,7 +75,7 @@ extension Bool: JSONParameterElement { }
7075
//> [12,\"this\",12.2,[12.2,12.4]]`
7176
```
7277
*/
73-
public enum RPCParameter {
78+
public enum RequestParameter {
7479
case int(Int)
7580
case intArray([Int])
7681

@@ -85,22 +90,22 @@ public enum RPCParameter {
8590

8691
case bool(Bool)
8792
case boolArray([Bool])
88-
93+
8994
case transaction(TransactionParameters)
9095
case eventFilter(EventFilterParameters)
9196
}
9297

9398

94-
extension RPCParameter: RawRepresentable {
99+
extension RequestParameter: RawRepresentable {
95100
/**
96101
This init required by `RawRepresentable` protocol, which is requred to encode mixed type values array in JSON.
97102

98103
This protocol used to implement custom `encode` method for that enum,
99104
which is encodes array of self into array of self assotiated values.
100105

101-
You're totally free to use explicit and more convenience member init as `RPCParameter.int(12)` in your code.
106+
You're totally free to use explicit and more convenience member init as `RequestParameter.int(12)` in your code.
102107
*/
103-
public init?(rawValue: JSONRPCParameter) {
108+
public init?(rawValue: APIRequestParameterType) {
104109
/// force casting in this switch is safe because
105110
/// each `rawValue` forced to casts only in exact case which is runs based on `rawValues` type
106111
// swiftlint:disable force_cast
@@ -128,7 +133,7 @@ extension RPCParameter: RawRepresentable {
128133
}
129134

130135
/// Returning associated value of the enum case.
131-
public var rawValue: JSONRPCParameter {
136+
public var rawValue: APIRequestParameterType {
132137
// cases can't be merged, coz it cause compiler error since it couldn't predict what exact type on exact case will be returned.
133138
switch self {
134139
case let .int(value): return value
@@ -152,14 +157,14 @@ extension RPCParameter: RawRepresentable {
152157
}
153158
}
154159

155-
extension RPCParameter: Encodable {
160+
extension RequestParameter: Encodable {
156161
/**
157-
This encoder encodes `RPCParameter` assotiated value ignoring self value
162+
This encoder encodes `RequestParameter` assotiated value ignoring self value
158163

159164
This is required to encode mixed types array, like
160165

161166
```swift
162-
let someArray: [RPCParameter] = [
167+
let someArray: [RequestParameter] = [
163168
.init(rawValue: 12)!,
164169
.init(rawValue: "this")!,
165170
.init(rawValue: 12.2)!,

Sources/web3swift/Web3/Web3+InfuraProviders.swift

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -128,15 +128,15 @@ public final class InfuraWebsocketProvider: WebsocketProvider {
128128
return socketProvider
129129
}
130130

131-
public func writeMessage(method: InfuraWebsocketMethod, params: [JSONRPCParameter]) throws {
131+
public func writeMessage(method: InfuraWebsocketMethod, params: [APIRequestParameterType]) throws {
132132
let request = JSONRPCRequestFabric.prepareRequest(method, parameters: params)
133133
let encoder = JSONEncoder()
134134
let requestData = try encoder.encode(request)
135135
print(String(decoding: requestData, as: UTF8.self))
136136
writeMessage(requestData)
137137
}
138138

139-
public func setFilterAndGetChanges(method: InfuraWebsocketMethod, params: [JSONRPCParameter]? = nil) throws {
139+
public func setFilterAndGetChanges(method: InfuraWebsocketMethod, params: [APIRequestParameterType]? = nil) throws {
140140
filterTimer?.invalidate()
141141
filterID = nil
142142
let params = params ?? []
@@ -153,7 +153,7 @@ public final class InfuraWebsocketProvider: WebsocketProvider {
153153
try setFilterAndGetChanges(method: method, params: [filterParams])
154154
}
155155

156-
public func setFilterAndGetLogs(method: InfuraWebsocketMethod, params: [JSONRPCParameter]? = nil) throws {
156+
public func setFilterAndGetLogs(method: InfuraWebsocketMethod, params: [APIRequestParameterType]? = nil) throws {
157157
filterTimer?.invalidate()
158158
filterID = nil
159159
let params = params ?? []
@@ -204,7 +204,7 @@ public final class InfuraWebsocketProvider: WebsocketProvider {
204204
}
205205
}
206206

207-
public func subscribe(params: [JSONRPCParameter]) throws {
207+
public func subscribe(params: [APIRequestParameterType]) throws {
208208
let method = InfuraWebsocketMethod.subscribe
209209
try writeMessage(method: method, params: params)
210210
}

Sources/web3swift/Web3/Web3+JSONRPC.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ public struct Counter {
2828
public struct JSONRPCrequest: Encodable {
2929
public var jsonrpc: String = "2.0"
3030
public var method: JSONRPCmethod?
31-
public var params: [RPCParameter] = []
31+
public var params: [RequestParameter] = []
3232
public var id: UInt = Counter.increment()
3333

3434
enum CodingKeys: String, CodingKey {

0 commit comments

Comments
 (0)