sinatraband 0.1.3 → 0.1.5

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 (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