sinatraband 0.1.3 → 0.1.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. data/bin/app.rb +86 -0
  2. data/bin/helper.rb +1 -1
  3. data/bin/sinatraband +4 -90
  4. metadata +6 -5
data/bin/app.rb ADDED
@@ -0,0 +1,86 @@
1
+ require 'pathname'
2
+ require 'erb'
3
+ require_relative './helper.rb'
4
+
5
+ class App
6
+ attr_accessor :name, :root
7
+
8
+ def proccess_arguments
9
+ if ARGV.empty?
10
+ put_error_and_quit :error_message => "Error: Missing arguments"
11
+ end
12
+
13
+ #Get the global current path
14
+ @root = Pathname(__FILE__).dirname.realpath.to_s+"/../lib/templates"
15
+
16
+ #Defines operation
17
+ case ARGV[0].downcase
18
+ when "create"
19
+ #Get de App name
20
+ if ARGV[1].nil?
21
+ put_error_and_quit :error_message => "Error: Missing arguments for create action"
22
+ else
23
+ @name = ARGV[1]
24
+ create_app
25
+ end
26
+ when "model"
27
+ if ARGV[1].nil?
28
+ put_error_and_quit :error_message => "Error: Missing arguments for model action"
29
+ else
30
+ if ARGV.length > 2
31
+ model_properties = Array.new
32
+ ARGV.each_with_index do |property, index|
33
+ if index > 1
34
+ model_properties << property
35
+ end
36
+ end
37
+ end
38
+ create_model :model_name => ARGV[1], :model_properties => model_properties
39
+ end
40
+ else
41
+ put_error_and_quit :error_message => "Error: Unknow arguments"
42
+ end
43
+ end
44
+
45
+ def create_app
46
+ #Creates de App diretory
47
+ mkdir :directory => "./#{@name}"
48
+
49
+ #Creates de App file
50
+ generate_file_from_template :directory => "", :template => "app", :final_file => "app", :extension => "rb"
51
+
52
+ #Creates de Database file
53
+ generate_file_from_template :directory => "", :template => "database", :final_file => "database", :extension => "rb"
54
+
55
+ #Creates de Models diretory
56
+ mkdir :directory => "./#{@name}/models"
57
+
58
+ #Creates de Controllers diretory
59
+ mkdir :directory => "./#{@name}/controllers"
60
+
61
+ #Creates de View diretory
62
+ mkdir :directory => "./#{@name}/views"
63
+
64
+ #Creates de index file
65
+ generate_file_from_template :directory => "/views", :template => "index", :final_file => "index", :extension => "erb"
66
+ end
67
+
68
+ def create_model input={:model_name => '', :model_properties => {}}
69
+ if input[:model_properties].nil?
70
+ put_error_and_quit :error_message => "Error: Missing arguments for model action"
71
+ end
72
+
73
+ @model_name = input[:model_name].capitalize
74
+ @model_properties = elaborates_model_properties :model_properties => input[:model_properties]
75
+
76
+ #Creates de Model file
77
+ generate_file_from_template :directory => "/models", :template => "model", :final_file => input[:model_name].downcase, :extension => "rb"
78
+
79
+ #Creates de Controller file
80
+ generate_file_from_template :directory => "/controllers", :template => "controller", :final_file => input[:model_name].downcase, :extension => "rb"
81
+
82
+ #Creates de View diretory
83
+ mkdir :directory => ".#{@name}/views/"+input[:model_name].downcase
84
+ end
85
+
86
+ end
data/bin/helper.rb CHANGED
@@ -50,4 +50,4 @@ end
50
50
  def put_error_and_quit input={:error_message => 'An error has ocorred.'}
51
51
  puts input[:error_message]
52
52
  exit
53
- end
53
+ end
data/bin/sinatraband CHANGED
@@ -1,92 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
+ require_relative '../bin/app.rb'
2
3
 
3
- require 'pathname'
4
- require 'erb'
5
- require_relative './helper.rb'
6
-
7
- class App
8
- attr_accessor :name, :root
9
-
10
- def proccess_arguments
11
- #Get the global current path
12
- @root = Pathname(__FILE__).dirname.realpath.to_s+"/../lib/templates"
13
-
14
- #Defines operation
15
- case ARGV[0].downcase
16
- when "create"
17
- #Get de App name
18
- if ARGV[1].nil?
19
- put_error_and_quit :error_message => "Error: Missing arguments for create action"
20
- else
21
- @name = ARGV[1]
22
- create_app
23
- end
24
- when "model"
25
- if ARGV[1].nil?
26
- put_error_and_quit :error_message => "Error: Missing arguments for model action"
27
- else
28
- if ARGV.length > 2
29
- model_properties = Array.new
30
- ARGV.each_with_index do |property, index|
31
- if index > 1
32
- model_properties << property
33
- end
34
- end
35
- end
36
- create_model :model_name => ARGV[1], :model_properties => model_properties
37
- end
38
- else
39
- put_error_and_quit :error_message => "Error: Missing or unknow arguments"
40
- end
41
- end
42
-
43
- def create_app
44
- #Creates de App diretory
45
- mkdir :directory => "./#{@name}"
46
-
47
- #Creates de App file
48
- generate_file_from_template :directory => "", :template => "app", :final_file => "app", :extension => "rb"
49
-
50
- #Creates de Database file
51
- generate_file_from_template :directory => "", :template => "database", :final_file => "database", :extension => "rb"
52
-
53
- #Creates de Models diretory
54
- mkdir :directory => "./#{@name}/models"
55
-
56
- #Creates de Controllers diretory
57
- mkdir :directory => "./#{@name}/controllers"
58
-
59
- #Creates de View diretory
60
- mkdir :directory => "./#{@name}/views"
61
-
62
- #Creates de index file
63
- generate_file_from_template :directory => "/views", :template => "index", :final_file => "index", :extension => "erb"
64
- end
65
-
66
- def create_model input={:model_name => '', :model_properties => {}}
67
- if input[:model_properties].nil?
68
- put_error_and_quit :error_message => "Error: Missing arguments for model action"
69
- end
70
-
71
- @model_name = input[:model_name].capitalize
72
- @model_properties = elaborates_model_properties :model_properties => input[:model_properties]
73
-
74
- #Creates de Model file
75
- generate_file_from_template :directory => "/models", :template => "model", :final_file => input[:model_name].downcase, :extension => "rb"
76
-
77
- #Creates de Controller file
78
- generate_file_from_template :directory => "/controllers", :template => "controller", :final_file => input[:model_name].downcase, :extension => "rb"
79
-
80
- #Creates de View diretory
81
- mkdir :directory => ".#{@name}/views/"+input[:model_name].downcase
82
- end
83
-
84
- end
85
-
86
- #start de proccess
87
- if ARGV.empty?
88
- put_error_and_quit :error_message => "Error: Missing arguments"
89
- else
90
- app = App.new
91
- app.proccess_arguments
92
- end
4
+ #initiate the application
5
+ app = App.new
6
+ app.proccess_arguments
metadata CHANGED
@@ -2,18 +2,18 @@
2
2
  name: sinatraband
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.1.3
5
+ version: 0.1.5
6
6
  platform: ruby
7
7
  authors:
8
- - "J\xC3\xBAlio Bueno"
8
+ - Julio Bueno
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2012-09-17 00:00:00 Z
13
+ date: 2012-09-19 00:00:00 Z
14
14
  dependencies: []
15
15
 
16
- description: Ruby gem to create a basic sinatra app.
16
+ description: Ruby gem to create a basic scaffold sinatra app.
17
17
  email: julioce@gmail.com
18
18
  executables:
19
19
  - sinatraband
@@ -22,11 +22,12 @@ extensions: []
22
22
  extra_rdoc_files: []
23
23
 
24
24
  files:
25
- - lib/templates/models/model.erb
26
25
  - lib/templates/controllers/controller.erb
26
+ - lib/templates/models/model.erb
27
27
  - lib/templates/views/index.erb
28
28
  - lib/templates/app.erb
29
29
  - lib/templates/database.erb
30
+ - bin/app.rb
30
31
  - bin/helper.rb
31
32
  - bin/sinatraband
32
33
  homepage: https://github.com/julioce/SinatraBand