l5m-tools 0.0.2.beta

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,69 @@
1
+ module L5MTools
2
+ module Tools
3
+ def send_mail to, subject="", body=""
4
+ require 'win32ole'
5
+ outlook = WIN32OLE.new('Outlook.Application')
6
+ mapi = outlook.GetNameSpace('MAPI')
7
+ message = outlook.CreateItem(0)
8
+ message.Subject = subject
9
+ message.Body = body
10
+ message.To = to
11
+ message.Save
12
+ message.Send
13
+ mapi.SyncObjects
14
+ end
15
+
16
+ require "fileutils"
17
+ include FileUtils
18
+ require 'pathname'
19
+
20
+ def replace(in_file, replacements)
21
+ contents = IO.read(in_file)
22
+ changed = false
23
+ replacements.each do | key, value |
24
+ if(contents.gsub!(key, value))
25
+ changed = true;
26
+ end
27
+ end
28
+ File.open(in_file, 'w') { | io | io.puts(contents) }
29
+ return changed
30
+ end
31
+ def copy_silently(from, to, replacements)
32
+ copy(from, to)
33
+ replace(to, replacements)
34
+ end
35
+ def change_directory(dir, &operation)
36
+ return Dir::chdir(dir, &operation) if File.exists? dir
37
+ end
38
+ def ask(default_answer, *question_lines)
39
+ puts question_lines
40
+ print "[#{default_answer}] => "
41
+ answer = STDIN.readline.strip
42
+ answer == '' ? default_answer.to_s : answer.to_s
43
+ end
44
+
45
+
46
+ def to_file(file, replacements = {})
47
+ dirname = File.dirname(file)
48
+ basename = File.basename(file)
49
+ replacements.each do | key, value |
50
+ basename.gsub!(key, value)
51
+ end
52
+ dirname + File::SEPARATOR + basename;
53
+ end
54
+
55
+ def duplicate_and_replace(file, replacements = {})
56
+ to = to_file(file, replacements)
57
+ yield to if block_given?
58
+ copy_silently(file, to, replacements)
59
+ end
60
+
61
+
62
+ def user_home
63
+ require 'etc'
64
+ Etc.getpwuid.dir
65
+ end
66
+
67
+ #module_function :send_mail, :replace, :copy_silently, :change_directory, :ask
68
+ end
69
+ end
data/lib/l5m-tools.rb ADDED
@@ -0,0 +1,20 @@
1
+ require 'l5m-tools/l5m-tools-module'
2
+ require 'l5m-tools/string'
3
+ require 'l5m-tools/svn'
4
+
5
+ module L5MTools
6
+ class Application
7
+ alias old_make_app make_app
8
+ def make_app(*args, &block)
9
+ package = ask("rem","Please input package name").downcase
10
+ application = ask("","Please input application name")
11
+ use_base_worker = ask("true","Use AbstractBaseWorker?").to_boolean
12
+ old_make_app(package, application, use_base_worker, &block)
13
+ end
14
+ alias :make :make_app
15
+ alias :dup :duplicate_app
16
+ def run(*args, &block)
17
+ send args.shift, *args, &block
18
+ end
19
+ end
20
+ end
data/test/helper.rb ADDED
@@ -0,0 +1,18 @@
1
+ require 'rubygems'
2
+ require 'bundler'
3
+ begin
4
+ Bundler.setup(:default, :development)
5
+ rescue Bundler::BundlerError => e
6
+ $stderr.puts e.message
7
+ $stderr.puts "Run `bundle install` to install missing gems"
8
+ exit e.status_code
9
+ end
10
+ require 'test/unit'
11
+ require 'shoulda'
12
+
13
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
14
+ $LOAD_PATH.unshift(File.dirname(__FILE__))
15
+ require 'l5m-tools'
16
+
17
+ class Test::Unit::TestCase
18
+ end
@@ -0,0 +1,34 @@
1
+ require 'helper'
2
+
3
+ class TestL5mTools < Test::Unit::TestCase
4
+ # should "probably rename this file and start testing for real" do
5
+ # flunk "hey buddy, you should probably rename this file and start testing for real"
6
+ # end
7
+
8
+ #should "duplicate app test" do
9
+ # L5MTools.application.run('dup', 'c:/files.cvs', 'HelloWorld', 'Yahoo')
10
+ #end
11
+ #should "make app test" do
12
+ #L5MTools.application.make_app
13
+ #end
14
+ #should "svn update test" do
15
+ # puts L5MTools.svn.run('update', 'rem')
16
+ # end
17
+ #should "svn info test" do
18
+ # puts L5MTools.svn.run('info', '-s' ,'ronghai@me.com', '--title','test case' , '-e' , 'rei')
19
+ #end
20
+ # should "svn info test" do
21
+ # puts L5MTools.svn.run('help', 'rei')
22
+ # end
23
+ # should "svn info test" do
24
+ # puts L5MTools.svn.run('info', 'rei' , '--','--xml')
25
+ # end
26
+
27
+ # should "svn log test" do
28
+ # puts L5MTools.svn.run('log', 'rei')
29
+ # end
30
+
31
+ # should "svn status test" do
32
+ # puts L5MTools.svn.run('st', 'rei')
33
+ # end
34
+ end
metadata ADDED
@@ -0,0 +1,133 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: l5m-tools
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.2.beta
5
+ prerelease: 6
6
+ platform: ruby
7
+ authors:
8
+ - RONGHAI
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2013-02-07 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: shoulda
16
+ requirement: &70256627042100 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :development
23
+ prerelease: false
24
+ version_requirements: *70256627042100
25
+ - !ruby/object:Gem::Dependency
26
+ name: rdoc
27
+ requirement: &70256627041060 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ~>
31
+ - !ruby/object:Gem::Version
32
+ version: '3.12'
33
+ type: :development
34
+ prerelease: false
35
+ version_requirements: *70256627041060
36
+ - !ruby/object:Gem::Dependency
37
+ name: bundler
38
+ requirement: &70256627040220 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ~>
42
+ - !ruby/object:Gem::Version
43
+ version: 1.2.0
44
+ type: :development
45
+ prerelease: false
46
+ version_requirements: *70256627040220
47
+ - !ruby/object:Gem::Dependency
48
+ name: jeweler
49
+ requirement: &70256627038780 !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: 1.8.4
55
+ type: :development
56
+ prerelease: false
57
+ version_requirements: *70256627038780
58
+ description: A tool set for Lake5Media and QingheTech developer
59
+ email: ronghai.wei@outlook.com
60
+ executables:
61
+ - duplicate-app
62
+ - l5m
63
+ - make-app
64
+ - set_env.sh
65
+ - svn.tool
66
+ extensions: []
67
+ extra_rdoc_files:
68
+ - LICENSE.txt
69
+ - README
70
+ - README.rdoc
71
+ files:
72
+ - .document
73
+ - Gemfile
74
+ - LICENSE.txt
75
+ - README
76
+ - README.rdoc
77
+ - Rakefile
78
+ - VERSION
79
+ - bin/duplicate-app
80
+ - bin/l5m
81
+ - bin/make-app
82
+ - bin/set_env.sh
83
+ - bin/svn.tool
84
+ - info
85
+ - l5m-tools.gemspec
86
+ - lib/l5m-tools.rb
87
+ - lib/l5m-tools/application.rb
88
+ - lib/l5m-tools/array.rb
89
+ - lib/l5m-tools/env.rb
90
+ - lib/l5m-tools/ignore/svn_ingore.yaml
91
+ - lib/l5m-tools/l5m-tools-module.rb
92
+ - lib/l5m-tools/string.rb
93
+ - lib/l5m-tools/svn.rb
94
+ - lib/l5m-tools/template/Template.jsp
95
+ - lib/l5m-tools/template/TemplateBaseAbstractWorker.java
96
+ - lib/l5m-tools/template/TemplateServicerImpl.java
97
+ - lib/l5m-tools/template/TemplateWorker.java
98
+ - lib/l5m-tools/template/frt.jsp
99
+ - lib/l5m-tools/template/ms2.jsp
100
+ - lib/l5m-tools/template/rad.jsp
101
+ - lib/l5m-tools/template/ttv2.jsp
102
+ - lib/l5m-tools/tools.rb
103
+ - test/helper.rb
104
+ - test/test_l5m-tools.rb
105
+ homepage: http://github.com/RONGHAI/l5m-tools
106
+ licenses:
107
+ - MIT
108
+ post_install_message:
109
+ rdoc_options: []
110
+ require_paths:
111
+ - lib
112
+ required_ruby_version: !ruby/object:Gem::Requirement
113
+ none: false
114
+ requirements:
115
+ - - ! '>='
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ segments:
119
+ - 0
120
+ hash: 314583582771401735
121
+ required_rubygems_version: !ruby/object:Gem::Requirement
122
+ none: false
123
+ requirements:
124
+ - - ! '>'
125
+ - !ruby/object:Gem::Version
126
+ version: 1.3.1
127
+ requirements: []
128
+ rubyforge_project:
129
+ rubygems_version: 1.8.17
130
+ signing_key:
131
+ specification_version: 3
132
+ summary: A tool set for Lake5Media and QingheTech developer
133
+ test_files: []