kioku 0.0.2 → 0.1.0

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.
data/Rakefile CHANGED
@@ -11,6 +11,7 @@ rescue Bundler::BundlerError => e
11
11
  end
12
12
  require 'rake'
13
13
 
14
+
14
15
  require 'jeweler'
15
16
  Jeweler::Tasks.new do |gem|
16
17
  # gem is a Gem::Specification... see http://docs.rubygems.org/read/chapter/20 for more options
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.2
1
+ 0.1.0
data/kioku.gemspec CHANGED
@@ -4,14 +4,15 @@
4
4
  # -*- encoding: utf-8 -*-
5
5
 
6
6
  Gem::Specification.new do |s|
7
- s.name = "kioku"
8
- s.version = "0.0.2"
7
+ s.name = %q{kioku}
8
+ s.version = "0.1.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = ["Maximilian Stroh"]
12
- s.date = "2012-01-12"
13
- s.description = "A leightweight key-value store solution written in pure Ruby.\n See the Homepage for more Informations!"
14
- s.email = "Fox56@gmx.de"
11
+ s.authors = [%q{Maximilian Stroh}]
12
+ s.date = %q{2012-01-17}
13
+ s.description = %q{A leightweight key-value store solution written in pure Ruby.
14
+ See the Homepage for more Informations!}
15
+ s.email = %q{Fox56@gmx.de}
15
16
  s.extra_rdoc_files = [
16
17
  "LICENSE.txt",
17
18
  "README.rdoc"
@@ -28,15 +29,15 @@ Gem::Specification.new do |s|
28
29
  "lib/kioku.rb",
29
30
  "test/bindata.bz2",
30
31
  "test/helper.rb",
32
+ "test/sample.msh",
31
33
  "test/sample.yml",
32
- "test/test_gui.rb",
33
34
  "test/test_kioku_basics.rb"
34
35
  ]
35
- s.homepage = "http://github.com/Anonyfox/kioku"
36
- s.licenses = ["MIT"]
37
- s.require_paths = ["lib"]
38
- s.rubygems_version = "1.8.10"
39
- s.summary = "A leightweight key-value store solution written in pure Ruby."
36
+ s.homepage = %q{http://github.com/Anonyfox/kioku}
37
+ s.licenses = [%q{MIT}]
38
+ s.require_paths = [%q{lib}]
39
+ s.rubygems_version = %q{1.8.6}
40
+ s.summary = %q{A leightweight key-value store solution written in pure Ruby.}
40
41
 
41
42
  if s.respond_to? :specification_version then
42
43
  s.specification_version = 3
data/lib/kioku.rb CHANGED
@@ -7,8 +7,9 @@ class Kioku
7
7
 
8
8
  # opens up a database file and loads the content,
9
9
  # or creates one first if it doesn't exist yet
10
- def initialize filepath
10
+ def initialize filepath, serialization_type='yaml'
11
11
  @filepath = filepath
12
+ @serialization_type = serialization_type
12
13
  @data_base = {}
13
14
  init_database
14
15
  end
@@ -52,6 +53,8 @@ class Kioku
52
53
  # so it can't be used anymore
53
54
  def destroy
54
55
  File.delete @filepath
56
+ @data_base = nil
57
+ @data_base.freeze
55
58
  self.freeze
56
59
  end
57
60
 
@@ -72,6 +75,20 @@ class Kioku
72
75
  private
73
76
 
74
77
  def init_database
78
+ #self.send("init_database_#{@serialization_type}")
79
+ init_database_yaml
80
+ end
81
+
82
+ def update_database
83
+ #self.send("update_database_#{@serialization_type}")
84
+ update_database_yaml
85
+ end
86
+
87
+ #############################################
88
+ ### other serialization formats
89
+ #############################################
90
+
91
+ def init_database_yaml
75
92
  if File.exists? @filepath
76
93
  f = File.open @filepath, 'r'
77
94
  @data_base = YAML.load_file @filepath
@@ -82,16 +99,12 @@ private
82
99
  end
83
100
  end
84
101
 
85
- def update_database
102
+ def update_database_yaml
86
103
  f = File.new @filepath, 'w'
87
104
  f << @data_base.to_yaml
88
105
  f.close
89
106
  end
90
107
 
91
- #############################################
92
- ### other serialization formats
93
- #############################################
94
-
95
108
  def init_database_marshal
96
109
  f = File.open @filepath, 'rb'
97
110
  @data_base = Marshal.load f.read
data/test/sample.msh ADDED
File without changes
@@ -56,4 +56,10 @@ class TestKiokuBasics < Test::Unit::TestCase
56
56
  assert_equal( @k.search("bin"), ["bin"] )
57
57
  assert_equal( @k.search("höhö"), ["höhö"])
58
58
  end
59
+
60
+ def test_marshalling
61
+ #@k = Kioku.new "sample.msh", "marshal"
62
+ #@k["entry"] = "Blablabla"
63
+ #assert_equal( "Blablabla", @k["entry"])
64
+ end
59
65
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kioku
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.1.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-01-12 00:00:00.000000000Z
12
+ date: 2012-01-17 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: yard
16
- requirement: &22231540 !ruby/object:Gem::Requirement
16
+ requirement: &19004420 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 0.6.0
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: *22231540
24
+ version_requirements: *19004420
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: bundler
27
- requirement: &22230560 !ruby/object:Gem::Requirement
27
+ requirement: &19003120 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: 1.0.0
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *22230560
35
+ version_requirements: *19003120
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: jeweler
38
- requirement: &22229800 !ruby/object:Gem::Requirement
38
+ requirement: &19001860 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: 1.6.4
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *22229800
46
+ version_requirements: *19001860
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: rcov
49
- requirement: &22228960 !ruby/object:Gem::Requirement
49
+ requirement: &19000440 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,7 +54,7 @@ dependencies:
54
54
  version: '0'
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *22228960
57
+ version_requirements: *19000440
58
58
  description: ! "A leightweight key-value store solution written in pure Ruby.\n See
59
59
  the Homepage for more Informations!"
60
60
  email: Fox56@gmx.de
@@ -75,8 +75,8 @@ files:
75
75
  - lib/kioku.rb
76
76
  - test/bindata.bz2
77
77
  - test/helper.rb
78
+ - test/sample.msh
78
79
  - test/sample.yml
79
- - test/test_gui.rb
80
80
  - test/test_kioku_basics.rb
81
81
  homepage: http://github.com/Anonyfox/kioku
82
82
  licenses:
@@ -93,7 +93,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
93
93
  version: '0'
94
94
  segments:
95
95
  - 0
96
- hash: 4136768825215228497
96
+ hash: 2772667992776346341
97
97
  required_rubygems_version: !ruby/object:Gem::Requirement
98
98
  none: false
99
99
  requirements:
@@ -102,7 +102,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
102
102
  version: '0'
103
103
  requirements: []
104
104
  rubyforge_project:
105
- rubygems_version: 1.8.10
105
+ rubygems_version: 1.8.6
106
106
  signing_key:
107
107
  specification_version: 3
108
108
  summary: A leightweight key-value store solution written in pure Ruby.
data/test/test_gui.rb DELETED
@@ -1,22 +0,0 @@
1
- #encoding: utf-8
2
-
3
- require './helper'
4
-
5
- Shoes.app do
6
- stack do
7
-
8
- # input line
9
- flow do
10
- @in_key = edit_line
11
- @in_val = edit_line
12
- @in_go = button("add")
13
- end
14
-
15
- # elements
16
- @k = Kioku.new "./sample.yml"
17
- @k.get_all.each do {|key|
18
- para "#{key}: #{@k[key]}", size: 9
19
- }
20
-
21
- end
22
- end