confrb 0.3alpha → 0.9alpha

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 +4 -4
  2. data/lib/confrb.rb +55 -20
  3. metadata +2 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bc83b0c0e9dd43952563c604fede93aa2fdbca4809098261900aa3f89ae271f1
4
- data.tar.gz: 6093deb8ddabd6e130ce7174fdde7c1fe3e2ad9992d578e62e85729780733cc3
3
+ metadata.gz: cfd7085f722d270278cdecb12bf67be9148acfb4cc7a9380c2ca80006ad2b4c2
4
+ data.tar.gz: 27dd1f792f5bbed1342268e04ec886e1dddb5071b00cadf013eaa1e7faad2eea
5
5
  SHA512:
6
- metadata.gz: 9431a83400d3a022191adc437124d6c0de9ed4083a951c903cf6e77944eec4d59531f9ff767d5425bbafe1c431f71b79df42662fc84b940e28366624c7eadba3
7
- data.tar.gz: 335f5ff6e680c175d48d3a7eb5c829b4956907915bf153cde4a97794b95312f6d0fa27b55b835d66fc06dd83da43627bc8ad1f552dff09aeb3b86ab06f268aec
6
+ metadata.gz: 6166b2caf87d1567f12c15dec7ac44c4edf395def760cd85ce870e91565682acdc9beef36fb76f2852e52bc3118db5fc236e8ac42d6385dbe81843e33b635b59
7
+ data.tar.gz: 07a7960f159d2c8ab7b475beb915b057c1705052659bc7a583e9c8ab8ca2ee198dfe85073bc32f8061ea1fc3d3940b87ad38cf64725a078d37e82594b3b259bc
@@ -1,25 +1,60 @@
1
+ # Require everything!
1
2
  require 'fileutils'
2
- def setup(name)
3
- dotname = "." + name
4
- FileUtils.mkdir_p(dotname)
5
- end
6
- def mkcfg(dir, cfgname, content)
7
- dotdir = "." + dir
8
- begin
9
- cfgpath = dotdir + "/" + cfgname
10
- FileUtils.touch(cfgpath)
11
- File.write(cfgpath, content)
12
- rescue
13
- cfgpath = dotdir + "\\" + cfgname
3
+ require 'json'
4
+ require 'yaml'
5
+ module BasicCfrb
6
+ extend self # Make sure this extends self so it can be used as a module!
7
+
8
+ def setup(name)
9
+ dotname = "." + name
10
+ FileUtils.mkdir_p(dotname)
11
+ end
12
+
13
+ def mkcfg(dir, cfgname, content, opts={})
14
+ as_json=opts.fetch(:json, false)
15
+ as_yaml=opts.fetch(:yaml, false)
16
+ dotdir = "." + dir
17
+ cfgpath = File.join(dotdir, cfgname)
14
18
  FileUtils.touch(cfgpath)
15
- File.write(cfgpath, content)
19
+ if as_json == true
20
+ content = content.to_json
21
+ File.write(cfgpath, content)
22
+ elsif as_yaml == true
23
+ content = content.to_yaml
24
+ File.write(cfgpath, content)
25
+ else
26
+ File.write(cfgpath, content)
27
+ end
28
+ end
29
+
30
+ def mknested(dir, nesteddir)
31
+ dotdir = "." + dir
32
+ FileUtils.mkdir_p(File.join(dotdir, nesteddir))
33
+ end
34
+
35
+ def readcfg(dir, cfgname, opts={})
36
+ dotdir = "." + dir
37
+ as_json=opts.fetch(:json, false)
38
+ as_yaml=opts.fetch(:yaml, false)
39
+ if as_json == true
40
+ content = File.read(File.join(dotdir, cfgname)).to_json
41
+ return content
42
+ elsif as_yaml == true
43
+ content = File.read(File.join(dotdir, cfgname)).yaml
44
+ return content
45
+ else
46
+ File.read(File.join(dotdir, cfgname))
47
+ end
48
+
49
+ end
50
+
51
+ def rmcfg(dir, cfgname)
52
+ dotdir = "." + dir
53
+ File.delete(File.join(dotdir, cfgname))
16
54
  end
17
- end
18
- def mknested(dir, nesteddir)
19
- dotdir = "." + dir
20
- begin
21
- FileUtils.mkdir_p(dotdir + '/' + nesteddir)
22
- rescue
23
- FileUtils.mkdir_p(dotdir + '\\' + nesteddir)
55
+
56
+ def rmdb(dir)
57
+ dotdir = "." + dir
58
+ FileUtils.rm_rf(dotdir)
24
59
  end
25
60
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: confrb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3alpha
4
+ version: 0.9alpha
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gurjus Bhasin
@@ -12,6 +12,7 @@ date: 2019-12-18 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: A Ruby Gem which allows you to store configuration files using hidden
14
14
  directories. Plaintext, unencrypted. Useful for simple text adventure games, etc.
15
+ Docs and examples at https://gitlab.com/Gsbhasin84/confrb
15
16
  email: gsbhasin84@gmail.com
16
17
  executables: []
17
18
  extensions: []