Loading src/dlt/config/ca.org1.example.com-cert.pem +8 −8 Original line number Diff line number Diff line -----BEGIN CERTIFICATE----- MIICJjCCAc2gAwIBAgIUUg8VnWZ4QPo0ohjSzLtOg5SnqbswCgYIKoZIzj0EAwIw MIICJjCCAc2gAwIBAgIULDVQiqifWHypuW50LhHXSJeeFG0wCgYIKoZIzj0EAwIw cDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMQ8wDQYDVQQH EwZEdXJoYW0xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh Lm9yZzEuZXhhbXBsZS5jb20wHhcNMjExMTIyMTg0ODAwWhcNMzYxMTE4MTg0ODAw Lm9yZzEuZXhhbXBsZS5jb20wHhcNMjExMTIzMTIzNzAwWhcNMzYxMTE5MTIzNzAw WjBwMQswCQYDVQQGEwJVUzEXMBUGA1UECBMOTm9ydGggQ2Fyb2xpbmExDzANBgNV BAcTBkR1cmhhbTEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMT Y2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABIOo NtC20scX8QGQgcSUvaau9RwQsKnq/t0914d3BoIqvBD94Ue1xX2VKEgFdQnQtIJq /ZzT63f3QC0fG5BrSjmjRTBDMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMBAf8ECDAG AQH/AgEBMB0GA1UdDgQWBBTQn8ZDeefPmduovU85c2bqzyzb8TAKBggqhkjOPQQD AgNHADBEAiBXRKPF+MCMWIAzkHnbgeVrmKJBBjj6EeKU1IpdExDIogIgIw2PR2lx KSoiemyU6hTEWbBmpkJbTIEiuGljYvd4uIQ= Y2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABFNi ggnkzv5qQSkIAQ05Y9DUq4teNjbMTdqD0IwdQe+lcYI0wgkR9wpBn5fj2pN093+P l2crhgyNqZyAuqaylvCjRTBDMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMBAf8ECDAG AQH/AgEBMB0GA1UdDgQWBBS44tGlbJ5GIBwATL383Hw0vz8jHDAKBggqhkjOPQQD AgNHADBEAiAlkKikh7eG8lf0uI7NwBi0QrbnnY4vHf9ErceKwUhZWgIgS9Z9AzBc n9RAK3v/freT3Exs7b+MK13UeDdejRWS+RE= -----END CERTIFICATE----- src/dlt/config/connection-org1.json +4 −4 Original line number Diff line number Diff line Loading @@ -26,7 +26,7 @@ "peer0.org1.example.com": { "url": "grpcs://s2:7051", "tlsCACerts": { "pem": "-----BEGIN CERTIFICATE-----\nMIICJjCCAc2gAwIBAgIUUg8VnWZ4QPo0ohjSzLtOg5SnqbswCgYIKoZIzj0EAwIw\ncDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMQ8wDQYDVQQH\nEwZEdXJoYW0xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh\nLm9yZzEuZXhhbXBsZS5jb20wHhcNMjExMTIyMTg0ODAwWhcNMzYxMTE4MTg0ODAw\nWjBwMQswCQYDVQQGEwJVUzEXMBUGA1UECBMOTm9ydGggQ2Fyb2xpbmExDzANBgNV\nBAcTBkR1cmhhbTEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMT\nY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABIOo\nNtC20scX8QGQgcSUvaau9RwQsKnq/t0914d3BoIqvBD94Ue1xX2VKEgFdQnQtIJq\n/ZzT63f3QC0fG5BrSjmjRTBDMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMBAf8ECDAG\nAQH/AgEBMB0GA1UdDgQWBBTQn8ZDeefPmduovU85c2bqzyzb8TAKBggqhkjOPQQD\nAgNHADBEAiBXRKPF+MCMWIAzkHnbgeVrmKJBBjj6EeKU1IpdExDIogIgIw2PR2lx\nKSoiemyU6hTEWbBmpkJbTIEiuGljYvd4uIQ=\n-----END CERTIFICATE-----\n" "pem": "-----BEGIN CERTIFICATE-----\nMIICJjCCAc2gAwIBAgIULDVQiqifWHypuW50LhHXSJeeFG0wCgYIKoZIzj0EAwIw\ncDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMQ8wDQYDVQQH\nEwZEdXJoYW0xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh\nLm9yZzEuZXhhbXBsZS5jb20wHhcNMjExMTIzMTIzNzAwWhcNMzYxMTE5MTIzNzAw\nWjBwMQswCQYDVQQGEwJVUzEXMBUGA1UECBMOTm9ydGggQ2Fyb2xpbmExDzANBgNV\nBAcTBkR1cmhhbTEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMT\nY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABFNi\nggnkzv5qQSkIAQ05Y9DUq4teNjbMTdqD0IwdQe+lcYI0wgkR9wpBn5fj2pN093+P\nl2crhgyNqZyAuqaylvCjRTBDMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMBAf8ECDAG\nAQH/AgEBMB0GA1UdDgQWBBS44tGlbJ5GIBwATL383Hw0vz8jHDAKBggqhkjOPQQD\nAgNHADBEAiAlkKikh7eG8lf0uI7NwBi0QrbnnY4vHf9ErceKwUhZWgIgS9Z9AzBc\nn9RAK3v/freT3Exs7b+MK13UeDdejRWS+RE=\n-----END CERTIFICATE-----\n" }, "grpcOptions": { "ssl-target-name-override": "peer0.org1.example.com", Loading @@ -36,7 +36,7 @@ "peer0.org2.example.com": { "url": "grpcs://s2:9051", "tlsCACerts": { "pem": "-----BEGIN CERTIFICATE-----\nMIICHjCCAcWgAwIBAgIUMQ2ItO6SSHzsgvAJZFN0iG+Q+/QwCgYIKoZIzj0EAwIw\nbDELMAkGA1UEBhMCVUsxEjAQBgNVBAgTCUhhbXBzaGlyZTEQMA4GA1UEBxMHSHVy\nc2xleTEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eub3Jn\nMi5leGFtcGxlLmNvbTAeFw0yMTExMjIxODQ4MDBaFw0zNjExMTgxODQ4MDBaMGwx\nCzAJBgNVBAYTAlVLMRIwEAYDVQQIEwlIYW1wc2hpcmUxEDAOBgNVBAcTB0h1cnNs\nZXkxGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2NhLm9yZzIu\nZXhhbXBsZS5jb20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAR3g4vdVJ87A6pG\nwTV5s0TSIC6lVfNKi0HbxhaMYhFcWHt2BBho8hgIAm6oWZ++J3x5zroejxApc8E5\n19Dpsr2ho0UwQzAOBgNVHQ8BAf8EBAMCAQYwEgYDVR0TAQH/BAgwBgEB/wIBATAd\nBgNVHQ4EFgQUK2BKZZP6iV1b7eozbFe77GLv7y0wCgYIKoZIzj0EAwIDRwAwRAIg\nHsbOx6v9vCD+8Ef5Pkks+EpmPPT2opW3JJHcEvlqmzkCIGS1nOW1Rf97+8BsfCwP\ngsqR6Ye2X75ek2vTymVXVDFJ\n-----END CERTIFICATE-----\n" "pem": "-----BEGIN CERTIFICATE-----\nMIICHzCCAcWgAwIBAgIUJiJ5815YVes2sG95oFzj0QWWBKswCgYIKoZIzj0EAwIw\nbDELMAkGA1UEBhMCVUsxEjAQBgNVBAgTCUhhbXBzaGlyZTEQMA4GA1UEBxMHSHVy\nc2xleTEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eub3Jn\nMi5leGFtcGxlLmNvbTAeFw0yMTExMjMxMjM3MDBaFw0zNjExMTkxMjM3MDBaMGwx\nCzAJBgNVBAYTAlVLMRIwEAYDVQQIEwlIYW1wc2hpcmUxEDAOBgNVBAcTB0h1cnNs\nZXkxGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2NhLm9yZzIu\nZXhhbXBsZS5jb20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAATdQw+PQyT3Ql5M\nv/xvafYFhU5Jtl0CwYyrXTtRajpPnlPnNvXUqVMxmdSR+4m2WBYyBdZ8IhGaayb/\nrOro8Mpko0UwQzAOBgNVHQ8BAf8EBAMCAQYwEgYDVR0TAQH/BAgwBgEB/wIBATAd\nBgNVHQ4EFgQUrsPP1HIS6O+JeWL2ct/ujkfP7dEwCgYIKoZIzj0EAwIDSAAwRQIh\nAMynA2Q/cbMXEHihnQdpdEz/83jGAokp7dKMHst02b3gAiA0XReJWdc0AUXZtbSq\nZG8mXOJeZu0Zro9DuQUEDPBfDQ==\n-----END CERTIFICATE-----\n" }, "grpcOptions": { "ssl-target-name-override": "peer0.org2.example.com", Loading @@ -50,7 +50,7 @@ "caName": "ca-org1", "tlsCACerts": { "pem": [ "-----BEGIN CERTIFICATE-----\nMIICJjCCAc2gAwIBAgIUUg8VnWZ4QPo0ohjSzLtOg5SnqbswCgYIKoZIzj0EAwIw\ncDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMQ8wDQYDVQQH\nEwZEdXJoYW0xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh\nLm9yZzEuZXhhbXBsZS5jb20wHhcNMjExMTIyMTg0ODAwWhcNMzYxMTE4MTg0ODAw\nWjBwMQswCQYDVQQGEwJVUzEXMBUGA1UECBMOTm9ydGggQ2Fyb2xpbmExDzANBgNV\nBAcTBkR1cmhhbTEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMT\nY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABIOo\nNtC20scX8QGQgcSUvaau9RwQsKnq/t0914d3BoIqvBD94Ue1xX2VKEgFdQnQtIJq\n/ZzT63f3QC0fG5BrSjmjRTBDMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMBAf8ECDAG\nAQH/AgEBMB0GA1UdDgQWBBTQn8ZDeefPmduovU85c2bqzyzb8TAKBggqhkjOPQQD\nAgNHADBEAiBXRKPF+MCMWIAzkHnbgeVrmKJBBjj6EeKU1IpdExDIogIgIw2PR2lx\nKSoiemyU6hTEWbBmpkJbTIEiuGljYvd4uIQ=\n-----END CERTIFICATE-----\n" "-----BEGIN CERTIFICATE-----\nMIICJjCCAc2gAwIBAgIULDVQiqifWHypuW50LhHXSJeeFG0wCgYIKoZIzj0EAwIw\ncDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMQ8wDQYDVQQH\nEwZEdXJoYW0xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh\nLm9yZzEuZXhhbXBsZS5jb20wHhcNMjExMTIzMTIzNzAwWhcNMzYxMTE5MTIzNzAw\nWjBwMQswCQYDVQQGEwJVUzEXMBUGA1UECBMOTm9ydGggQ2Fyb2xpbmExDzANBgNV\nBAcTBkR1cmhhbTEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMT\nY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABFNi\nggnkzv5qQSkIAQ05Y9DUq4teNjbMTdqD0IwdQe+lcYI0wgkR9wpBn5fj2pN093+P\nl2crhgyNqZyAuqaylvCjRTBDMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMBAf8ECDAG\nAQH/AgEBMB0GA1UdDgQWBBS44tGlbJ5GIBwATL383Hw0vz8jHDAKBggqhkjOPQQD\nAgNHADBEAiAlkKikh7eG8lf0uI7NwBi0QrbnnY4vHf9ErceKwUhZWgIgS9Z9AzBc\nn9RAK3v/freT3Exs7b+MK13UeDdejRWS+RE=\n-----END CERTIFICATE-----\n" ] }, "httpOptions": { Loading @@ -62,7 +62,7 @@ "orderer0.example.com": { "url": "grpcs://s2:7050", "tlsCACerts": { "pem": "-----BEGIN CERTIFICATE-----\nMIICCzCCAbGgAwIBAgIUVXJ8op9+t1XoWR3BDbodSHNA4WcwCgYIKoZIzj0EAwIw\nYjELMAkGA1UEBhMCVVMxETAPBgNVBAgTCE5ldyBZb3JrMREwDwYDVQQHEwhOZXcg\nWW9yazEUMBIGA1UEChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1wbGUu\nY29tMB4XDTIxMTEyMjE4NDgwMFoXDTM2MTExODE4NDgwMFowYjELMAkGA1UEBhMC\nVVMxETAPBgNVBAgTCE5ldyBZb3JrMREwDwYDVQQHEwhOZXcgWW9yazEUMBIGA1UE\nChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1wbGUuY29tMFkwEwYHKoZI\nzj0CAQYIKoZIzj0DAQcDQgAE3ZjdgxSVlZpHiFHRjd7Sct5YSFlPOuKePGT8i8SN\nWh5bZje2JHSQ4JMMgiiyALJCHUdBqnfs05D0ds4Hz4rJUaNFMEMwDgYDVR0PAQH/\nBAQDAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQEwHQYDVR0OBBYEFEsA2wOBKpjnILGy\nIPtNmvIrwAt4MAoGCCqGSM49BAMCA0gAMEUCIQDxg/NK2ZuNrzA6U/lRU6IWQbwt\nC9gWNlz55pCS2HlWsAIgCHLo4oaECBYmGosqrC5hZQ5NgdV60X9Td0QC6zdYmJk=\n-----END CERTIFICATE-----\n" "pem": "-----BEGIN CERTIFICATE-----\nMIICCzCCAbGgAwIBAgIUDr4RiMRC/q95iWAfWiZTLTdDoDUwCgYIKoZIzj0EAwIw\nYjELMAkGA1UEBhMCVVMxETAPBgNVBAgTCE5ldyBZb3JrMREwDwYDVQQHEwhOZXcg\nWW9yazEUMBIGA1UEChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1wbGUu\nY29tMB4XDTIxMTEyMzEyMzcwMFoXDTM2MTExOTEyMzcwMFowYjELMAkGA1UEBhMC\nVVMxETAPBgNVBAgTCE5ldyBZb3JrMREwDwYDVQQHEwhOZXcgWW9yazEUMBIGA1UE\nChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1wbGUuY29tMFkwEwYHKoZI\nzj0CAQYIKoZIzj0DAQcDQgAE4ErISW/k5iZv0n7n1qpbOZcRMNmn8VqAOX4UIELm\nQ51neULt9T3pxdGEsq7B5O1ncB/RdZwf+3dihBHjngXerKNFMEMwDgYDVR0PAQH/\nBAQDAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQEwHQYDVR0OBBYEFP2/1CHK9OdPjs/9\np1mh3t+pyujsMAoGCCqGSM49BAMCA0gAMEUCIQDETOC8hB9EaEvdc2sdEtcNeyXu\nYryyf6I5tJC13E2hOQIgef+ymHy6eXf0jNkY6DXz041THa/67dSrXaZGgaTh4LI=\n-----END CERTIFICATE-----\n" }, "grpcOptions": { "ssl-target-name-override": "orderer0.example.com", Loading src/dlt/src/main/kotlin/Main.kt +1 −3 Original line number Diff line number Diff line Loading @@ -2,7 +2,6 @@ import io.ktor.client.* import io.ktor.client.engine.cio.* import io.ktor.client.features.* import io.ktor.client.request.* import io.ktor.http.* import io.ktor.utils.io.jvm.javaio.* import kotlinx.serialization.ExperimentalSerializationApi import proto.Config Loading Loading @@ -74,7 +73,7 @@ suspend fun main(args: Array<String>) { try { val newRecord = Config.DltRecord.newBuilder().setId(id).setOperation(Config.DltRecordOperation.UPDATE) .setType(Config.DltRecordType.SLICE).setJson("{}").build() .setType(Config.DltRecordType.UNKNOWN).setJson("{}").build() val result = client.post<ByteArray>("http://localhost:8080/dlt/record") { body = newRecord.toByteArray() } Loading Loading @@ -103,5 +102,4 @@ suspend fun main(args: Array<String>) { println(e.response.status) println(String(e.response.content.toInputStream().readAllBytes())) } } No newline at end of file src/dlt/src/main/kotlin/fabric/FabricConnector.kt +1 −8 Original line number Diff line number Diff line package fabric import com.google.protobuf.util.JsonFormat import kotlinx.serialization.decodeFromString import kotlinx.serialization.json.Json import org.hyperledger.fabric.gateway.Contract import org.hyperledger.fabric.gateway.Wallet import org.hyperledger.fabric.gateway.Wallets Loading Loading @@ -50,12 +47,8 @@ class FabricConnector(val config: Config.DltConfig) { } fun getData(uuid: String): Config.DltRecord { // TODO: get rid of json encoding/decoding val result = contract.evaluateTransaction("GetRecord", uuid) println(String(result)) val builder = Config.DltRecord.newBuilder() val protoRes = JsonFormat.parser().merge(String(result), builder) return builder.build() return Config.DltRecord.parseFrom(result) } fun updateData(record: Config.DltRecord): String { Loading src/dlt/src/main/kotlin/proto/Config.proto +9 −7 Original line number Diff line number Diff line Loading @@ -21,16 +21,18 @@ message DltRecordId { } enum DltRecordOperation { ADD = 0; UPDATE = 1; DISABLE = 2; OP_UNSET = 0; ADD = 1; UPDATE = 2; DISABLE = 3; } enum DltRecordType { UNKNOWN = 0; SERVICE = 1; DEVICE = 2; SLICE = 3; RECORD_UNSET = 0; UNKNOWN = 1; SERVICE = 2; DEVICE = 3; SLICE = 4; } message DltRecord { Loading Loading
src/dlt/config/ca.org1.example.com-cert.pem +8 −8 Original line number Diff line number Diff line -----BEGIN CERTIFICATE----- MIICJjCCAc2gAwIBAgIUUg8VnWZ4QPo0ohjSzLtOg5SnqbswCgYIKoZIzj0EAwIw MIICJjCCAc2gAwIBAgIULDVQiqifWHypuW50LhHXSJeeFG0wCgYIKoZIzj0EAwIw cDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMQ8wDQYDVQQH EwZEdXJoYW0xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh Lm9yZzEuZXhhbXBsZS5jb20wHhcNMjExMTIyMTg0ODAwWhcNMzYxMTE4MTg0ODAw Lm9yZzEuZXhhbXBsZS5jb20wHhcNMjExMTIzMTIzNzAwWhcNMzYxMTE5MTIzNzAw WjBwMQswCQYDVQQGEwJVUzEXMBUGA1UECBMOTm9ydGggQ2Fyb2xpbmExDzANBgNV BAcTBkR1cmhhbTEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMT Y2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABIOo NtC20scX8QGQgcSUvaau9RwQsKnq/t0914d3BoIqvBD94Ue1xX2VKEgFdQnQtIJq /ZzT63f3QC0fG5BrSjmjRTBDMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMBAf8ECDAG AQH/AgEBMB0GA1UdDgQWBBTQn8ZDeefPmduovU85c2bqzyzb8TAKBggqhkjOPQQD AgNHADBEAiBXRKPF+MCMWIAzkHnbgeVrmKJBBjj6EeKU1IpdExDIogIgIw2PR2lx KSoiemyU6hTEWbBmpkJbTIEiuGljYvd4uIQ= Y2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABFNi ggnkzv5qQSkIAQ05Y9DUq4teNjbMTdqD0IwdQe+lcYI0wgkR9wpBn5fj2pN093+P l2crhgyNqZyAuqaylvCjRTBDMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMBAf8ECDAG AQH/AgEBMB0GA1UdDgQWBBS44tGlbJ5GIBwATL383Hw0vz8jHDAKBggqhkjOPQQD AgNHADBEAiAlkKikh7eG8lf0uI7NwBi0QrbnnY4vHf9ErceKwUhZWgIgS9Z9AzBc n9RAK3v/freT3Exs7b+MK13UeDdejRWS+RE= -----END CERTIFICATE-----
src/dlt/config/connection-org1.json +4 −4 Original line number Diff line number Diff line Loading @@ -26,7 +26,7 @@ "peer0.org1.example.com": { "url": "grpcs://s2:7051", "tlsCACerts": { "pem": "-----BEGIN CERTIFICATE-----\nMIICJjCCAc2gAwIBAgIUUg8VnWZ4QPo0ohjSzLtOg5SnqbswCgYIKoZIzj0EAwIw\ncDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMQ8wDQYDVQQH\nEwZEdXJoYW0xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh\nLm9yZzEuZXhhbXBsZS5jb20wHhcNMjExMTIyMTg0ODAwWhcNMzYxMTE4MTg0ODAw\nWjBwMQswCQYDVQQGEwJVUzEXMBUGA1UECBMOTm9ydGggQ2Fyb2xpbmExDzANBgNV\nBAcTBkR1cmhhbTEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMT\nY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABIOo\nNtC20scX8QGQgcSUvaau9RwQsKnq/t0914d3BoIqvBD94Ue1xX2VKEgFdQnQtIJq\n/ZzT63f3QC0fG5BrSjmjRTBDMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMBAf8ECDAG\nAQH/AgEBMB0GA1UdDgQWBBTQn8ZDeefPmduovU85c2bqzyzb8TAKBggqhkjOPQQD\nAgNHADBEAiBXRKPF+MCMWIAzkHnbgeVrmKJBBjj6EeKU1IpdExDIogIgIw2PR2lx\nKSoiemyU6hTEWbBmpkJbTIEiuGljYvd4uIQ=\n-----END CERTIFICATE-----\n" "pem": "-----BEGIN CERTIFICATE-----\nMIICJjCCAc2gAwIBAgIULDVQiqifWHypuW50LhHXSJeeFG0wCgYIKoZIzj0EAwIw\ncDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMQ8wDQYDVQQH\nEwZEdXJoYW0xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh\nLm9yZzEuZXhhbXBsZS5jb20wHhcNMjExMTIzMTIzNzAwWhcNMzYxMTE5MTIzNzAw\nWjBwMQswCQYDVQQGEwJVUzEXMBUGA1UECBMOTm9ydGggQ2Fyb2xpbmExDzANBgNV\nBAcTBkR1cmhhbTEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMT\nY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABFNi\nggnkzv5qQSkIAQ05Y9DUq4teNjbMTdqD0IwdQe+lcYI0wgkR9wpBn5fj2pN093+P\nl2crhgyNqZyAuqaylvCjRTBDMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMBAf8ECDAG\nAQH/AgEBMB0GA1UdDgQWBBS44tGlbJ5GIBwATL383Hw0vz8jHDAKBggqhkjOPQQD\nAgNHADBEAiAlkKikh7eG8lf0uI7NwBi0QrbnnY4vHf9ErceKwUhZWgIgS9Z9AzBc\nn9RAK3v/freT3Exs7b+MK13UeDdejRWS+RE=\n-----END CERTIFICATE-----\n" }, "grpcOptions": { "ssl-target-name-override": "peer0.org1.example.com", Loading @@ -36,7 +36,7 @@ "peer0.org2.example.com": { "url": "grpcs://s2:9051", "tlsCACerts": { "pem": "-----BEGIN CERTIFICATE-----\nMIICHjCCAcWgAwIBAgIUMQ2ItO6SSHzsgvAJZFN0iG+Q+/QwCgYIKoZIzj0EAwIw\nbDELMAkGA1UEBhMCVUsxEjAQBgNVBAgTCUhhbXBzaGlyZTEQMA4GA1UEBxMHSHVy\nc2xleTEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eub3Jn\nMi5leGFtcGxlLmNvbTAeFw0yMTExMjIxODQ4MDBaFw0zNjExMTgxODQ4MDBaMGwx\nCzAJBgNVBAYTAlVLMRIwEAYDVQQIEwlIYW1wc2hpcmUxEDAOBgNVBAcTB0h1cnNs\nZXkxGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2NhLm9yZzIu\nZXhhbXBsZS5jb20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAR3g4vdVJ87A6pG\nwTV5s0TSIC6lVfNKi0HbxhaMYhFcWHt2BBho8hgIAm6oWZ++J3x5zroejxApc8E5\n19Dpsr2ho0UwQzAOBgNVHQ8BAf8EBAMCAQYwEgYDVR0TAQH/BAgwBgEB/wIBATAd\nBgNVHQ4EFgQUK2BKZZP6iV1b7eozbFe77GLv7y0wCgYIKoZIzj0EAwIDRwAwRAIg\nHsbOx6v9vCD+8Ef5Pkks+EpmPPT2opW3JJHcEvlqmzkCIGS1nOW1Rf97+8BsfCwP\ngsqR6Ye2X75ek2vTymVXVDFJ\n-----END CERTIFICATE-----\n" "pem": "-----BEGIN CERTIFICATE-----\nMIICHzCCAcWgAwIBAgIUJiJ5815YVes2sG95oFzj0QWWBKswCgYIKoZIzj0EAwIw\nbDELMAkGA1UEBhMCVUsxEjAQBgNVBAgTCUhhbXBzaGlyZTEQMA4GA1UEBxMHSHVy\nc2xleTEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eub3Jn\nMi5leGFtcGxlLmNvbTAeFw0yMTExMjMxMjM3MDBaFw0zNjExMTkxMjM3MDBaMGwx\nCzAJBgNVBAYTAlVLMRIwEAYDVQQIEwlIYW1wc2hpcmUxEDAOBgNVBAcTB0h1cnNs\nZXkxGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2NhLm9yZzIu\nZXhhbXBsZS5jb20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAATdQw+PQyT3Ql5M\nv/xvafYFhU5Jtl0CwYyrXTtRajpPnlPnNvXUqVMxmdSR+4m2WBYyBdZ8IhGaayb/\nrOro8Mpko0UwQzAOBgNVHQ8BAf8EBAMCAQYwEgYDVR0TAQH/BAgwBgEB/wIBATAd\nBgNVHQ4EFgQUrsPP1HIS6O+JeWL2ct/ujkfP7dEwCgYIKoZIzj0EAwIDSAAwRQIh\nAMynA2Q/cbMXEHihnQdpdEz/83jGAokp7dKMHst02b3gAiA0XReJWdc0AUXZtbSq\nZG8mXOJeZu0Zro9DuQUEDPBfDQ==\n-----END CERTIFICATE-----\n" }, "grpcOptions": { "ssl-target-name-override": "peer0.org2.example.com", Loading @@ -50,7 +50,7 @@ "caName": "ca-org1", "tlsCACerts": { "pem": [ "-----BEGIN CERTIFICATE-----\nMIICJjCCAc2gAwIBAgIUUg8VnWZ4QPo0ohjSzLtOg5SnqbswCgYIKoZIzj0EAwIw\ncDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMQ8wDQYDVQQH\nEwZEdXJoYW0xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh\nLm9yZzEuZXhhbXBsZS5jb20wHhcNMjExMTIyMTg0ODAwWhcNMzYxMTE4MTg0ODAw\nWjBwMQswCQYDVQQGEwJVUzEXMBUGA1UECBMOTm9ydGggQ2Fyb2xpbmExDzANBgNV\nBAcTBkR1cmhhbTEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMT\nY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABIOo\nNtC20scX8QGQgcSUvaau9RwQsKnq/t0914d3BoIqvBD94Ue1xX2VKEgFdQnQtIJq\n/ZzT63f3QC0fG5BrSjmjRTBDMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMBAf8ECDAG\nAQH/AgEBMB0GA1UdDgQWBBTQn8ZDeefPmduovU85c2bqzyzb8TAKBggqhkjOPQQD\nAgNHADBEAiBXRKPF+MCMWIAzkHnbgeVrmKJBBjj6EeKU1IpdExDIogIgIw2PR2lx\nKSoiemyU6hTEWbBmpkJbTIEiuGljYvd4uIQ=\n-----END CERTIFICATE-----\n" "-----BEGIN CERTIFICATE-----\nMIICJjCCAc2gAwIBAgIULDVQiqifWHypuW50LhHXSJeeFG0wCgYIKoZIzj0EAwIw\ncDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMQ8wDQYDVQQH\nEwZEdXJoYW0xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh\nLm9yZzEuZXhhbXBsZS5jb20wHhcNMjExMTIzMTIzNzAwWhcNMzYxMTE5MTIzNzAw\nWjBwMQswCQYDVQQGEwJVUzEXMBUGA1UECBMOTm9ydGggQ2Fyb2xpbmExDzANBgNV\nBAcTBkR1cmhhbTEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMT\nY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABFNi\nggnkzv5qQSkIAQ05Y9DUq4teNjbMTdqD0IwdQe+lcYI0wgkR9wpBn5fj2pN093+P\nl2crhgyNqZyAuqaylvCjRTBDMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMBAf8ECDAG\nAQH/AgEBMB0GA1UdDgQWBBS44tGlbJ5GIBwATL383Hw0vz8jHDAKBggqhkjOPQQD\nAgNHADBEAiAlkKikh7eG8lf0uI7NwBi0QrbnnY4vHf9ErceKwUhZWgIgS9Z9AzBc\nn9RAK3v/freT3Exs7b+MK13UeDdejRWS+RE=\n-----END CERTIFICATE-----\n" ] }, "httpOptions": { Loading @@ -62,7 +62,7 @@ "orderer0.example.com": { "url": "grpcs://s2:7050", "tlsCACerts": { "pem": "-----BEGIN CERTIFICATE-----\nMIICCzCCAbGgAwIBAgIUVXJ8op9+t1XoWR3BDbodSHNA4WcwCgYIKoZIzj0EAwIw\nYjELMAkGA1UEBhMCVVMxETAPBgNVBAgTCE5ldyBZb3JrMREwDwYDVQQHEwhOZXcg\nWW9yazEUMBIGA1UEChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1wbGUu\nY29tMB4XDTIxMTEyMjE4NDgwMFoXDTM2MTExODE4NDgwMFowYjELMAkGA1UEBhMC\nVVMxETAPBgNVBAgTCE5ldyBZb3JrMREwDwYDVQQHEwhOZXcgWW9yazEUMBIGA1UE\nChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1wbGUuY29tMFkwEwYHKoZI\nzj0CAQYIKoZIzj0DAQcDQgAE3ZjdgxSVlZpHiFHRjd7Sct5YSFlPOuKePGT8i8SN\nWh5bZje2JHSQ4JMMgiiyALJCHUdBqnfs05D0ds4Hz4rJUaNFMEMwDgYDVR0PAQH/\nBAQDAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQEwHQYDVR0OBBYEFEsA2wOBKpjnILGy\nIPtNmvIrwAt4MAoGCCqGSM49BAMCA0gAMEUCIQDxg/NK2ZuNrzA6U/lRU6IWQbwt\nC9gWNlz55pCS2HlWsAIgCHLo4oaECBYmGosqrC5hZQ5NgdV60X9Td0QC6zdYmJk=\n-----END CERTIFICATE-----\n" "pem": "-----BEGIN CERTIFICATE-----\nMIICCzCCAbGgAwIBAgIUDr4RiMRC/q95iWAfWiZTLTdDoDUwCgYIKoZIzj0EAwIw\nYjELMAkGA1UEBhMCVVMxETAPBgNVBAgTCE5ldyBZb3JrMREwDwYDVQQHEwhOZXcg\nWW9yazEUMBIGA1UEChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1wbGUu\nY29tMB4XDTIxMTEyMzEyMzcwMFoXDTM2MTExOTEyMzcwMFowYjELMAkGA1UEBhMC\nVVMxETAPBgNVBAgTCE5ldyBZb3JrMREwDwYDVQQHEwhOZXcgWW9yazEUMBIGA1UE\nChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1wbGUuY29tMFkwEwYHKoZI\nzj0CAQYIKoZIzj0DAQcDQgAE4ErISW/k5iZv0n7n1qpbOZcRMNmn8VqAOX4UIELm\nQ51neULt9T3pxdGEsq7B5O1ncB/RdZwf+3dihBHjngXerKNFMEMwDgYDVR0PAQH/\nBAQDAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQEwHQYDVR0OBBYEFP2/1CHK9OdPjs/9\np1mh3t+pyujsMAoGCCqGSM49BAMCA0gAMEUCIQDETOC8hB9EaEvdc2sdEtcNeyXu\nYryyf6I5tJC13E2hOQIgef+ymHy6eXf0jNkY6DXz041THa/67dSrXaZGgaTh4LI=\n-----END CERTIFICATE-----\n" }, "grpcOptions": { "ssl-target-name-override": "orderer0.example.com", Loading
src/dlt/src/main/kotlin/Main.kt +1 −3 Original line number Diff line number Diff line Loading @@ -2,7 +2,6 @@ import io.ktor.client.* import io.ktor.client.engine.cio.* import io.ktor.client.features.* import io.ktor.client.request.* import io.ktor.http.* import io.ktor.utils.io.jvm.javaio.* import kotlinx.serialization.ExperimentalSerializationApi import proto.Config Loading Loading @@ -74,7 +73,7 @@ suspend fun main(args: Array<String>) { try { val newRecord = Config.DltRecord.newBuilder().setId(id).setOperation(Config.DltRecordOperation.UPDATE) .setType(Config.DltRecordType.SLICE).setJson("{}").build() .setType(Config.DltRecordType.UNKNOWN).setJson("{}").build() val result = client.post<ByteArray>("http://localhost:8080/dlt/record") { body = newRecord.toByteArray() } Loading Loading @@ -103,5 +102,4 @@ suspend fun main(args: Array<String>) { println(e.response.status) println(String(e.response.content.toInputStream().readAllBytes())) } } No newline at end of file
src/dlt/src/main/kotlin/fabric/FabricConnector.kt +1 −8 Original line number Diff line number Diff line package fabric import com.google.protobuf.util.JsonFormat import kotlinx.serialization.decodeFromString import kotlinx.serialization.json.Json import org.hyperledger.fabric.gateway.Contract import org.hyperledger.fabric.gateway.Wallet import org.hyperledger.fabric.gateway.Wallets Loading Loading @@ -50,12 +47,8 @@ class FabricConnector(val config: Config.DltConfig) { } fun getData(uuid: String): Config.DltRecord { // TODO: get rid of json encoding/decoding val result = contract.evaluateTransaction("GetRecord", uuid) println(String(result)) val builder = Config.DltRecord.newBuilder() val protoRes = JsonFormat.parser().merge(String(result), builder) return builder.build() return Config.DltRecord.parseFrom(result) } fun updateData(record: Config.DltRecord): String { Loading
src/dlt/src/main/kotlin/proto/Config.proto +9 −7 Original line number Diff line number Diff line Loading @@ -21,16 +21,18 @@ message DltRecordId { } enum DltRecordOperation { ADD = 0; UPDATE = 1; DISABLE = 2; OP_UNSET = 0; ADD = 1; UPDATE = 2; DISABLE = 3; } enum DltRecordType { UNKNOWN = 0; SERVICE = 1; DEVICE = 2; SLICE = 3; RECORD_UNSET = 0; UNKNOWN = 1; SERVICE = 2; DEVICE = 3; SLICE = 4; } message DltRecord { Loading