mklog 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/lib/log.rb ADDED
@@ -0,0 +1,15 @@
1
+ require 'log/debug_type'
2
+ require 'log/debugtype/abstract'
3
+ require 'log/debugtype/normal'
4
+ require 'log/debugtype/object'
5
+
6
+ module MK
7
+ class Log
8
+ def self.save(message, debug_type=MK::LogModule::DebugType.NORMAL, filename='system.log')
9
+ @dt = MK::LogModule::DebugType.get_class(debug_type)
10
+ @dt.filename = filename
11
+ @dt.message = message
12
+ @dt.save
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,28 @@
1
+ module MK
2
+ module LogModule
3
+
4
+ class DebugType
5
+
6
+ NORMAL = 1
7
+ OBJECT = 2
8
+
9
+ def self.NORMAL
10
+ NORMAL
11
+ end
12
+
13
+ def self.OBJECT
14
+ OBJECT
15
+ end
16
+
17
+ def self.get_class(type)
18
+ case type
19
+ when self.OBJECT
20
+ return MK::LogModule::Object.new
21
+ else
22
+ return MK::LogModule::Normal.new
23
+ end
24
+ end
25
+ end
26
+
27
+ end
28
+ end
@@ -0,0 +1,25 @@
1
+ module MK
2
+ module LogModule
3
+ class Abstract
4
+
5
+ attr_accessor :message, :filename
6
+
7
+ def save
8
+ file = File.new('log/'+@filename, "a")
9
+ write(file)
10
+ file.close
11
+ end
12
+
13
+ def write(file)
14
+ raise NotImplementedError.new('Method write must be implemented')
15
+ end
16
+
17
+ protected
18
+
19
+ def get_time
20
+ return Time.new.to_s
21
+ end
22
+
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,11 @@
1
+ module MK
2
+ module LogModule
3
+
4
+ class Normal < MK::LogModule::Abstract
5
+ def write (file)
6
+ file.write("["+get_time+"] "+@message.to_s+" \n")
7
+ end
8
+ end
9
+
10
+ end
11
+ end
@@ -0,0 +1,11 @@
1
+ module MK
2
+ module LogModule
3
+
4
+ class Object < MK::LogModule::Abstract
5
+ def write (file)
6
+ file.write("["+get_time+"] "+@message.to_s+" \n"+@message.to_yaml)
7
+ end
8
+ end
9
+
10
+ end
11
+ end
metadata ADDED
@@ -0,0 +1,49 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: mklog
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Marko Krstic
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2013-02-07 00:00:00.000000000 Z
13
+ dependencies: []
14
+ description: Simple file logging messages and objects
15
+ email: mrkkrstic@gmail.com
16
+ executables: []
17
+ extensions: []
18
+ extra_rdoc_files: []
19
+ files:
20
+ - lib/log.rb
21
+ - lib/log/debug_type.rb
22
+ - lib/log/debugtype/abstract.rb
23
+ - lib/log/debugtype/normal.rb
24
+ - lib/log/debugtype/object.rb
25
+ homepage: http://rubygems.org/gems/mklog
26
+ licenses: []
27
+ post_install_message:
28
+ rdoc_options: []
29
+ require_paths:
30
+ - lib
31
+ required_ruby_version: !ruby/object:Gem::Requirement
32
+ none: false
33
+ requirements:
34
+ - - ! '>='
35
+ - !ruby/object:Gem::Version
36
+ version: '0'
37
+ required_rubygems_version: !ruby/object:Gem::Requirement
38
+ none: false
39
+ requirements:
40
+ - - ! '>='
41
+ - !ruby/object:Gem::Version
42
+ version: '0'
43
+ requirements: []
44
+ rubyforge_project:
45
+ rubygems_version: 1.8.24
46
+ signing_key:
47
+ specification_version: 3
48
+ summary: Log
49
+ test_files: []