From 8817ee0ac2e17c717d8113576fbf46871c9d6374 Mon Sep 17 00:00:00 2001 From: nisdas Date: Thu, 19 Apr 2018 01:07:39 +0800 Subject: [PATCH] sharding/client: Add utils.go for blob serialization(#92) --- sharding/client/utils.go | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 sharding/client/utils.go diff --git a/sharding/client/utils.go b/sharding/client/utils.go new file mode 100644 index 000000000000..a4c577ec8138 --- /dev/null +++ b/sharding/client/utils.go @@ -0,0 +1,39 @@ +package client + +import ( + "fmt" +) + +type collationbody []byte + +var ( + collationsizelimit = int64(2 * *20) + chunkSize = int64(32) + indicatorSize = int64(1) + chunkDataSize = chunkSize - indicatorSize +) + +func (c *collationbody) validateBody() bool { + return len(c) < 2^20 && len(c) > 0 +} + +func createChunks(c collationbody) { + validCollation, err := c.validateBody + if err != nil { + fmt.Errorf("Error %v", err) + } + if !validCollation { + fmt.Errorf("Error %v", err) + } + index := int64(len(c)) / chunkDataSize + + /* + for i = 0; i < index; i++ { + serialisedblob[i*chunksize] = 0 + for f = 0; f