-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
e1d110d
commit 3d59576
Showing
5 changed files
with
222 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,149 @@ | ||
{ | ||
"pins" : [ | ||
{ | ||
"identity" : "base58", | ||
"kind" : "remoteSourceControl", | ||
"location" : "https://github.com/anquii/Base58.git", | ||
"state" : { | ||
"revision" : "7e4a1e4e6813c750ed2f9e80a0494c608eebb2ca", | ||
"version" : "1.0.1" | ||
} | ||
}, | ||
{ | ||
"identity" : "base58check", | ||
"kind" : "remoteSourceControl", | ||
"location" : "https://github.com/anquii/Base58Check.git", | ||
"state" : { | ||
"revision" : "f35a770ff7f3fd553cc44057f492c0107cc7b481", | ||
"version" : "1.0.1" | ||
} | ||
}, | ||
{ | ||
"identity" : "bigint", | ||
"kind" : "remoteSourceControl", | ||
"location" : "https://github.com/attaswift/BigInt.git", | ||
"state" : { | ||
"revision" : "0ed110f7555c34ff468e72e1686e59721f2b0da6", | ||
"version" : "5.3.0" | ||
} | ||
}, | ||
{ | ||
"identity" : "concordium-swift-sdk", | ||
"kind" : "remoteSourceControl", | ||
"location" : "https://github.com/Concordium/concordium-swift-sdk.git", | ||
"state" : { | ||
"branch" : "main", | ||
"revision" : "89c89678e905fa5bca721a83213201d5b04b3b92" | ||
} | ||
}, | ||
{ | ||
"identity" : "grpc-swift", | ||
"kind" : "remoteSourceControl", | ||
"location" : "https://github.com/grpc/grpc-swift.git", | ||
"state" : { | ||
"revision" : "6ade19f0b57f5fc436dfecfced83f3c84d1095b9", | ||
"version" : "1.21.0" | ||
} | ||
}, | ||
{ | ||
"identity" : "swift-atomics", | ||
"kind" : "remoteSourceControl", | ||
"location" : "https://github.com/apple/swift-atomics.git", | ||
"state" : { | ||
"revision" : "cd142fd2f64be2100422d658e7411e39489da985", | ||
"version" : "1.2.0" | ||
} | ||
}, | ||
{ | ||
"identity" : "swift-collections", | ||
"kind" : "remoteSourceControl", | ||
"location" : "https://github.com/apple/swift-collections.git", | ||
"state" : { | ||
"revision" : "d029d9d39c87bed85b1c50adee7c41795261a192", | ||
"version" : "1.0.6" | ||
} | ||
}, | ||
{ | ||
"identity" : "swift-http-types", | ||
"kind" : "remoteSourceControl", | ||
"location" : "https://github.com/apple/swift-http-types", | ||
"state" : { | ||
"revision" : "1827dc94bdab2eb5f2fc804e9b0cb43574282566", | ||
"version" : "1.0.2" | ||
} | ||
}, | ||
{ | ||
"identity" : "swift-log", | ||
"kind" : "remoteSourceControl", | ||
"location" : "https://github.com/apple/swift-log.git", | ||
"state" : { | ||
"revision" : "532d8b529501fb73a2455b179e0bbb6d49b652ed", | ||
"version" : "1.5.3" | ||
} | ||
}, | ||
{ | ||
"identity" : "swift-nio", | ||
"kind" : "remoteSourceControl", | ||
"location" : "https://github.com/apple/swift-nio.git", | ||
"state" : { | ||
"revision" : "702cd7c56d5d44eeba73fdf83918339b26dc855c", | ||
"version" : "2.62.0" | ||
} | ||
}, | ||
{ | ||
"identity" : "swift-nio-extras", | ||
"kind" : "remoteSourceControl", | ||
"location" : "https://github.com/apple/swift-nio-extras.git", | ||
"state" : { | ||
"revision" : "798c962495593a23fdea0c0c63fd55571d8dff51", | ||
"version" : "1.20.0" | ||
} | ||
}, | ||
{ | ||
"identity" : "swift-nio-http2", | ||
"kind" : "remoteSourceControl", | ||
"location" : "https://github.com/apple/swift-nio-http2.git", | ||
"state" : { | ||
"revision" : "3bd9004b9d685ed6b629760fc84903e48efec806", | ||
"version" : "1.29.0" | ||
} | ||
}, | ||
{ | ||
"identity" : "swift-nio-ssl", | ||
"kind" : "remoteSourceControl", | ||
"location" : "https://github.com/apple/swift-nio-ssl.git", | ||
"state" : { | ||
"revision" : "320bd978cceb8e88c125dcbb774943a92f6286e9", | ||
"version" : "2.25.0" | ||
} | ||
}, | ||
{ | ||
"identity" : "swift-nio-transport-services", | ||
"kind" : "remoteSourceControl", | ||
"location" : "https://github.com/apple/swift-nio-transport-services.git", | ||
"state" : { | ||
"revision" : "ebf8b9c365a6ce043bf6e6326a04b15589bd285e", | ||
"version" : "1.20.0" | ||
} | ||
}, | ||
{ | ||
"identity" : "swift-protobuf", | ||
"kind" : "remoteSourceControl", | ||
"location" : "https://github.com/apple/swift-protobuf.git", | ||
"state" : { | ||
"revision" : "65e8f29b2d63c4e38e736b25c27b83e012159be8", | ||
"version" : "1.25.2" | ||
} | ||
}, | ||
{ | ||
"identity" : "swiftformat", | ||
"kind" : "remoteSourceControl", | ||
"location" : "https://github.com/nicklockwood/SwiftFormat.git", | ||
"state" : { | ||
"revision" : "fef156a6135e584985ed26713dd2e9ee41f952cb", | ||
"version" : "0.53.0" | ||
} | ||
} | ||
], | ||
"version" : 2 | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
// swift-tools-version: 5.9 | ||
|
||
import PackageDescription | ||
|
||
let package = Package( | ||
name: "concordium-swift-sdk-cli", | ||
platforms: [ | ||
.macOS(.v10_15), | ||
], | ||
dependencies: [ | ||
.package(url: "https://github.com/Concordium/concordium-swift-sdk.git", branch: "main"), | ||
], | ||
targets: [ | ||
.executableTarget( | ||
name: "concordium-swift-sdk-cli", | ||
dependencies: [ | ||
.product(name: "ConcordiumSwiftSDK", package: "concordium-swift-sdk"), | ||
] | ||
), | ||
] | ||
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
# Example: getCryptographicParameters | ||
|
||
Small example program for illustrating how to use the SDK from a consuming application. | ||
The SDK is added with the version defined as the `main` branch. | ||
Note that this is not a fixed reference and the cache may retain old revisions of that branch. | ||
Real applications should always use a specific version. | ||
|
||
The program just creates a `Client` and calls the method `getCryptographicParameters` on it (of last finalized block). | ||
No command line arguments are accepted. | ||
The program assumes to find a running node on localhost port 20000. | ||
The tool `socat` may be used to redirect the requests to a node running on IP `<ip>`, port `<port>`: | ||
|
||
```shell | ||
socat TCP-LISTEN:20000,fork TCP:<ip>:<port> | ||
``` | ||
|
||
The result is printed as a simple struct dump. | ||
|
||
## Usage | ||
|
||
Build and run the program: | ||
|
||
```shell | ||
swift run | ||
``` |
26 changes: 26 additions & 0 deletions
26
examples/get-cryptographic-parameters/Sources/concordium-swift-sdk-cli/main.swift
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
import ConcordiumSwiftSDK | ||
import GRPC | ||
import NIOPosix | ||
import XCTest | ||
|
||
// Run the following command in a terminal to redirect to a node running on a different host/port: | ||
// socat TCP-LISTEN:20000,fork TCP:<ip>:<port> | ||
let channelTarget = ConnectionTarget.host("localhost", port: 20000) | ||
|
||
let group = MultiThreadedEventLoopGroup(numberOfThreads: 1) | ||
defer { | ||
try! group.syncShutdownGracefully() | ||
} | ||
|
||
let channel = try GRPCChannelPool.with( | ||
target: channelTarget, | ||
transportSecurity: .plaintext, | ||
eventLoopGroup: group | ||
) | ||
defer { | ||
try! channel.close().wait() | ||
} | ||
|
||
let client = Client(channel: channel) | ||
let res = try await client.getCryptographicParameters(at: .lastFinal) | ||
print(res) |