easyrubydb 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. checksums.yaml +7 -0
  2. data/lib/easyrubydb.rb +40 -0
  3. metadata +43 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 74cdd2e742afba06dd4dfbca4709a25c80c75d473431c10d5d54d499651d6887
4
+ data.tar.gz: 4b83b433b99cb36ffe3b3be0abebf799d4599e95a2dcdcc4dd74fcc8ddec0ce4
5
+ SHA512:
6
+ metadata.gz: 7afac872d4a85d33484410dde20d1cd883dac52225f68232d233748bc81b522593dcaf83197241cae943d573739d12b44968fa7d30c2cad84082f940bc6a8ffb
7
+ data.tar.gz: 1279ee9796cdf24644a5572da40a800c55bce56ef3941708043643159e0c1f202a88b69f5001a5ff24e2ee08b38753f06a6978115d2733084fab6d0d97ab9124
data/lib/easyrubydb.rb ADDED
@@ -0,0 +1,40 @@
1
+ require "http"
2
+ require "json"
3
+
4
+
5
+ class DB
6
+ attr_accessor :data
7
+
8
+ BASE_URL = "https://s1.kognise.dev/db"
9
+
10
+ def initialize(name, token)
11
+ @name = name
12
+ @token = token
13
+ r = HTTP.headers(:Authorization => "Bearer #{@token}").get("#{BASE_URL}/#{@name}").body.to_s
14
+ raise Exception.new "Invalid database token" if r == "Unauthorized"
15
+ r = "{}" if r == "Not Found"
16
+ @data = JSON.parse(r)
17
+ end
18
+
19
+ def load
20
+ @data = JSON.parse(HTTP.headers(:Authorization => "Bearer #{@token}").get("#{BASE_URL}/#{@name}").body.to_s)
21
+ end
22
+
23
+ def save
24
+ HTTP.headers(:Authorization => "Bearer #{@token}").put("#{BASE_URL}/#{@name}", :body => @data.to_json)
25
+ nil
26
+ end
27
+
28
+ def to_s
29
+ @data.to_s
30
+ end
31
+
32
+ def [](key)
33
+ @data[key]
34
+ end
35
+
36
+ def []=(key, value)
37
+ @data[key] = value
38
+ save
39
+ end
40
+ end
metadata ADDED
@@ -0,0 +1,43 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: easyrubydb
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - CodingCactus
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2021-02-21 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: Simple ruby database made using https://s1.kognise.dev
14
+ email: codingcactus.cc@gmail.com
15
+ executables: []
16
+ extensions: []
17
+ extra_rdoc_files: []
18
+ files:
19
+ - lib/easyrubydb.rb
20
+ homepage:
21
+ licenses: []
22
+ metadata: {}
23
+ post_install_message:
24
+ rdoc_options: []
25
+ require_paths:
26
+ - lib
27
+ required_ruby_version: !ruby/object:Gem::Requirement
28
+ requirements:
29
+ - - ">="
30
+ - !ruby/object:Gem::Version
31
+ version: '0'
32
+ required_rubygems_version: !ruby/object:Gem::Requirement
33
+ requirements:
34
+ - - ">="
35
+ - !ruby/object:Gem::Version
36
+ version: '0'
37
+ requirements: []
38
+ rubyforge_project:
39
+ rubygems_version: 2.7.6
40
+ signing_key:
41
+ specification_version: 4
42
+ summary: Easy to use database
43
+ test_files: []