risesdk 0.7.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 40613f6e114a5b79154b126fb8c5e226a6902782
4
+ data.tar.gz: 998c332e61d2f84323e248a8d188fb4a7928ebf4
5
+ SHA512:
6
+ metadata.gz: 8f4631ce7bce8bbf52a49329b762a4187c8748a0c25ad5e3d9dc30854c24e0e9a7cc87c2476e91eea7d9c26ae12ad1a82d2ee5d1b7ec636a736d22457dd1f383
7
+ data.tar.gz: a7059c3201c17d67121bbfc5f8a968423445e728042afdbba7659bbf6555e1f7dfefe54db1632c4253360f066c0dd4f21d2a72e7443a21f83ef5928ef1f02e34
@@ -0,0 +1,38 @@
1
+ require_relative 'helpers'
2
+
3
+ class Accounts
4
+ def initialize(helpers)
5
+ @helpers = helpers
6
+ end
7
+ def open(secret)
8
+ return @helpers.send_request("POST", "/api/accounts/open", data: { "secret" => secret })
9
+ end
10
+
11
+ def getBalance(address)
12
+ return @helpers.send_request("GET", "/api/accounts/getBalance?address=" + address)
13
+ end
14
+
15
+ def getPublicKey(address)
16
+ return @helpers.send_request("GET", "/api/accounts/getPublicKey?address=" + address)
17
+ end
18
+
19
+ def generatePublicKey(secret)
20
+ return @helpers.send_request("POST", "/api/accounts/generatePublicKey", data: { "secret" => secret })
21
+ end
22
+
23
+ def getAccount(address)
24
+ return @helpers.send_request("GET", "/api/accounts?address=" + address)
25
+ end
26
+
27
+ def getDelegates(address)
28
+ return @helpers.send_request("GET", "/api/accounts/delegates?address=" + address)
29
+ end
30
+
31
+ def putDelegates(secret, publicKey, delegates, secondSecret: nil)
32
+ options = { "secret" => secret, "publicKey" => publicKey, "delegates" => delegates }
33
+ unless secondSecret == nil then
34
+ options["secondSecret"] = secondSecret
35
+ end
36
+ return @helpers.send_request("PUT", "/api/accounts/delegates", data: options)
37
+ end
38
+ end
data/lib/api/blocks.rb ADDED
@@ -0,0 +1,72 @@
1
+ require_relative 'helpers'
2
+
3
+ class Blocks
4
+ def initialize(helpers)
5
+ @helpers = helpers
6
+ end
7
+
8
+ def get(id)
9
+ return @helpers.send_request("GET", "/api/blocks/get?id=" + id)
10
+ end
11
+
12
+ def getList(**kwargs)
13
+ query = ""
14
+ if kwargs.has_key? :generatorPublicKey then
15
+ query = @helpers.addToQuery(query, "generatorPublicKey", kwargs[:generatorPublicKey])
16
+ end
17
+ if kwargs.has_key? :totalFee then
18
+ query = @helpers.addToQuery(query, "totalFee", kwargs[:totalFee])
19
+ end
20
+ if kwargs.has_key? :totalAmount then
21
+ query = @helpers.addToQuery(query, "totalAmount", kwargs[:totalAmount])
22
+ end
23
+ if kwargs.has_key? :previousBlock then
24
+ query = @helpers.addToQuery(query, "previousBlock", kwargs[:previousBlock])
25
+ end
26
+ if kwargs.has_key? :height then
27
+ query = @helpers.addToQuery(query, "height", kwargs[:height])
28
+ end
29
+ if kwargs.has_key? :limit then
30
+ query = @helpers.addToQuery(query, "limit", kwargs[:limit])
31
+ end
32
+ if kwargs.has_key? :offset then
33
+ query = @helpers.addToQuery(query, "offset", kwargs[:offset])
34
+ end
35
+ if kwargs.has_key? :orderBy then
36
+ query = @helpers.addToQuery(query, "orderBy", kwargs[:orderBy])
37
+ end
38
+ return @helpers.send_request("GET", "/api/blocks" + query)
39
+ end
40
+
41
+ def getFee()
42
+ return @helpers.send_request("GET", "/api/blocks/getFee")
43
+ end
44
+
45
+ def getFeesSchedule()
46
+ return @helpers.send_request("GET", "/api/blocks/getFees")
47
+ end
48
+
49
+ def getReward()
50
+ return @helpers.send_request("GET", "/api/blocks/getReward")
51
+ end
52
+
53
+ def getSupply()
54
+ return @helpers.send_request("GET", "/api/blocks/getSupply")
55
+ end
56
+
57
+ def getHeight()
58
+ return @helpers.send_request("GET", "/api/blocks/getHeight")
59
+ end
60
+
61
+ def getStatus()
62
+ return @helpers.send_request("GET", "/api/blocks/getStatus")
63
+ end
64
+
65
+ def getNethash()
66
+ return @helpers.send_request("GET", "/api/blocks/getNethash")
67
+ end
68
+
69
+ def getMilestone()
70
+ return @helpers.send_request("GET", "/api/blocks/getMilestone")
71
+ end
72
+ end
@@ -0,0 +1,54 @@
1
+ require_relative 'helpers'
2
+
3
+ class Delegates
4
+ def initialize(helpers)
5
+ @helpers = helpers
6
+ end
7
+
8
+ def enable(secret, secondSecret, username)
9
+ return @helpers.send_request("PUT", "/api/delegates", {"secret" => secret, "secondSecret" => secondSecret, "username" => username})
10
+ end
11
+
12
+ def getList(**kwargs)
13
+ query = ""
14
+ if kwargs.has_key? :limit then
15
+ query = @helpers.addToQuery(query, "limit", kwargs[:limit])
16
+ end
17
+ if kwargs.has_key? :offset then
18
+ query = @helpers.addToQuery(query, "offset", kwargs[:offset])
19
+ end
20
+ if kwargs.has_key? :orderBy then
21
+ query = @helpers.addToQuery(query, "orderBy", kwargs[:orderBy])
22
+ end
23
+
24
+ return @helpers.send_request("GET", "/api/delegates" + query)
25
+ end
26
+
27
+ def getByPublicKey(publicKey)
28
+ return @helpers.send_request("GET", "/api/delegates/get?publicKey=" + publicKey)
29
+ end
30
+
31
+ def getByUsername(username)
32
+ return @helpers.send_request("GET", "/api/delegates/get?username=" + username)
33
+ end
34
+
35
+ def count()
36
+ return @helpers.send_request("GET", "/api/delegates/count")
37
+ end
38
+
39
+ def getVoters(publicKey)
40
+ return @helpers.send_request("GET" , "/api/delegates/voters?publicKey=" + publicKey)
41
+ end
42
+
43
+ def enableForging(secret)
44
+ return @helpers.send_request("POST", "/api/delegates/forging/enable", { "secret" => secret })
45
+ end
46
+
47
+ def disableForging(secret)
48
+ return @helpers.send_request("POST", "/api/delegates/forging/disable", { "secret" => secret })
49
+ end
50
+
51
+ def getForgedByAccount(generatorPublicKey)
52
+ return @helpers.send_request("POST", "/api/delegates/forging/getForgedByAccount?generatorPublicKey=" + generatorPublicKey)
53
+ end
54
+ end
@@ -0,0 +1,19 @@
1
+ require 'requests'
2
+ require 'json'
3
+
4
+ class Helpers
5
+ attr_accessor :baseURL
6
+ @baseURL = ""
7
+ def send_request(type, url, data: {})
8
+ return JSON.parse(Requests.request(type, @baseURL + url, data: data.to_json, headers: {"Content-type" => "application/json"}).body)
9
+ end
10
+ def addToQuery(query, name, param)
11
+ if query.length == 0 then
12
+ query += "?"
13
+ else
14
+ query += "&"
15
+ end
16
+ query += name + "=" + param.to_s
17
+ return query
18
+ end
19
+ end
data/lib/api/loader.rb ADDED
@@ -0,0 +1,13 @@
1
+ require_relative 'helpers'
2
+
3
+ class Loader
4
+ def initialize(helpers)
5
+ @helpers = helpers
6
+ end
7
+ def status
8
+ return @helpers.send_request("GET", "/api/loader/status")
9
+ end
10
+ def syncStatus
11
+ return @helpers.send_request("GET", "/api/loader/status/sync")
12
+ end
13
+ end
@@ -0,0 +1,23 @@
1
+ require_relative 'helpers'
2
+
3
+ class MultiSignatures
4
+ def initialize(helpers)
5
+ @helpers = helpers
6
+ end
7
+
8
+ def getPending(publicKey)
9
+ return @helpers.send_request("GET", "/api/multisignatures/pending?publicKey=" + publicKey)
10
+ end
11
+
12
+ def create(secret, lifetime, min, keysGroup)
13
+ return @helpers.send_request("PUT", "/api/multisignatures", { "secret" => secret, "lifetime" => lifetime, "min" => min, "keysgroup" => keysGroup })
14
+ end
15
+
16
+ def sign(secret, publicKey, transactionId)
17
+ return @helpers.send_request("POST", "/api/multisignatures/sign", { "secret" => secret, "publicKey" => publicKey, "transactionId" => transactionId })
18
+ end
19
+
20
+ def getAccounts(publicKey)
21
+ return @helpers.send_request("GET", "/api/multisignatures/accounts?publicKey=" + publicKey)
22
+ end
23
+ end
data/lib/api/peers.rb ADDED
@@ -0,0 +1,35 @@
1
+ require_relative 'helpers'
2
+
3
+ class Peers
4
+ def initialize(helpers)
5
+ @helpers = helpers
6
+ end
7
+ def getList(**kwargs)
8
+ query = ""
9
+ if kwargs.has_key? :state then
10
+ query = @helpers.addToQuery(query, "state", kwargs[:state])
11
+ end
12
+ if kwargs.has_key? :os then
13
+ query = @helpers.addToQuery(query, "os", kwargs[:os])
14
+ end
15
+ if kwargs.has_key? :version then
16
+ query = @helpers.addToQuery(query, "version", kwargs[:version])
17
+ end
18
+ if kwargs.has_key? :limit then
19
+ query = @helpers.addToQuery(query, "limit", kwargs[:limit])
20
+ end
21
+ if kwargs.has_key? :offset then
22
+ query = @helpers.addToQuery(query, "offset", kwargs[:offset])
23
+ end
24
+ if kwargs.has_key? :orderBy then
25
+ query = @helpers.addToQuery(query, "orderBy", kwargs[:orderBy])
26
+ end
27
+ return @helpers.send_request("GET", "/api/peers" + query)
28
+ end
29
+ def get(ip, port)
30
+ return @helpers.send_request("GET", "/api/peers/get?ip=" + ip + "&port=" + port.to_s)
31
+ end
32
+ def version()
33
+ return @helpers.send_request("GET", "/api/peers/version")
34
+ end
35
+ end
@@ -0,0 +1,19 @@
1
+ require_relative 'helpers'
2
+
3
+ class Signatures
4
+ def initialize(helpers)
5
+ @helpers = helpers
6
+ end
7
+
8
+ def get(id)
9
+ return @helpers.send_request("GET", "/api/signatures/get?id=" + id)
10
+ end
11
+
12
+ def add(secret, secondSecret, publicKey=nil)
13
+ options = { "secret" => secret, "secondSecret" => secondSecret}
14
+ unless publicKey == nil then
15
+ options["publicKey"] = publicKey
16
+ end
17
+ return @helpers.send_request("PUT", "/api/signatures", options)
18
+ end
19
+ end
@@ -0,0 +1,47 @@
1
+ require_relative 'helpers'
2
+
3
+ class Transactions
4
+ def initialize(helpers)
5
+ @helpers = helpers
6
+ end
7
+
8
+ def getList(**kwargs)
9
+ query = ""
10
+ if kwargs.has_key? :blockId then
11
+ query = addToQuery(query, "blockId", kwargs[:blockId])
12
+ end
13
+ if kwargs.has_key? :senderId then
14
+ query = addToQuery(query, "senderId", kwargs[:senderId])
15
+ end
16
+ if kwargs.has_key? :recipientId then
17
+ query = addToQuery(query, "recipientId", kwargs[:recipientId])
18
+ end
19
+ if kwargs.has_key? :limit then
20
+ query = addToQuery(query, "limit", kwargs[:limit])
21
+ end
22
+ if kwargs.has_key? :offset then
23
+ query = addToQuery(query, "offset", kwargs[:offset])
24
+ end
25
+ if kwargs.has_key? :orderBy then
26
+ query = addToQuery(query, "orderBy", kwargs[:orderBy])
27
+ end
28
+
29
+ return send_request("GET", "/api/transactions" + query)
30
+ end
31
+ def send(secret, amount, recipientId, publicKey, secondSecret=nil)
32
+ options = { "secret" => secret, "amount" => amount, "recipientId" => recipientId, "publicKey" => publicKey}
33
+ unless secondSecret == nil then
34
+ options["secondSecret"] = secondSecret
35
+ end
36
+ return send_request("PUT", "/api/transactions", options)
37
+ end
38
+ def get(id)
39
+ return send_request("GET", "/api/transactions/get?id=" + id)
40
+ end
41
+ def getUnconfirmed(id)
42
+ return send_request("GET", "/api/transactions/unconfirmed/get?id=" + id)
43
+ end
44
+ def getUnconfirmedList()
45
+ return send_request("GET", "/api/transactions/unconfirmed")
46
+ end
47
+ end
data/lib/risesdk.rb ADDED
@@ -0,0 +1,29 @@
1
+ require_relative 'api/helpers'
2
+ require_relative 'api/accounts'
3
+ require_relative 'api/blocks'
4
+ require_relative 'api/delegates'
5
+ require_relative 'api/loader'
6
+ require_relative 'api/multiSignatures'
7
+ require_relative 'api/peers'
8
+ require_relative 'api/signatures'
9
+ require_relative 'api/transactions'
10
+ require 'ostruct'
11
+
12
+ class RiseSDK
13
+ attr_accessor :api
14
+ def initialize
15
+ @helpers = Helpers.new
16
+ @api = OpenStruct.new
17
+ @api.accounts = Accounts.new(@helpers)
18
+ @api.blocks = Blocks.new(@helpers)
19
+ @api.delegates = Delegates.new(@helpers)
20
+ @api.loader = Loader.new(@helpers)
21
+ @api.multiSignatures = MultiSignatures.new(@helpers)
22
+ @api.peers = Peers.new(@helpers)
23
+ @api.signatures = Signatures.new(@helpers)
24
+ @api.transactions = Transactions.new(@helpers)
25
+ end
26
+ def setHost(host)
27
+ @helpers.baseURL = host
28
+ end
29
+ end
metadata ADDED
@@ -0,0 +1,54 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: risesdk
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.7.0
5
+ platform: ruby
6
+ authors:
7
+ - Don't Panic Consulting
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2016-10-14 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: Rise SDK built in Ruby. Please see the github page for documentation.
14
+ (https://github.com/RiseVision/Rise-SDK-Ruby)
15
+ email: nathan.burchill@dontpanic.consulting
16
+ executables: []
17
+ extensions: []
18
+ extra_rdoc_files: []
19
+ files:
20
+ - lib/api/accounts.rb
21
+ - lib/api/blocks.rb
22
+ - lib/api/delegates.rb
23
+ - lib/api/helpers.rb
24
+ - lib/api/loader.rb
25
+ - lib/api/multiSignatures.rb
26
+ - lib/api/peers.rb
27
+ - lib/api/signatures.rb
28
+ - lib/api/transactions.rb
29
+ - lib/risesdk.rb
30
+ homepage: https://github.com/RiseVision/Rise-SDK-Ruby
31
+ licenses:
32
+ - MIT
33
+ metadata: {}
34
+ post_install_message:
35
+ rdoc_options: []
36
+ require_paths:
37
+ - lib
38
+ required_ruby_version: !ruby/object:Gem::Requirement
39
+ requirements:
40
+ - - '>='
41
+ - !ruby/object:Gem::Version
42
+ version: '0'
43
+ required_rubygems_version: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - '>='
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ requirements: []
49
+ rubyforge_project:
50
+ rubygems_version: 2.6.7
51
+ signing_key:
52
+ specification_version: 3
53
+ summary: Rise SDK built in Ruby
54
+ test_files: []