Class: ApiScaffold::Generators::ModifyApiRootGenerator
- Inherits:
-
Rails::Generators::NamedBase
- Object
- Rails::Generators::NamedBase
- ApiScaffold::Generators::ModifyApiRootGenerator
show all
- Includes:
- Helper
- Defined in:
- lib/generators/api_scaffold/modify_api_root_generator.rb
Instance Method Summary
collapse
Methods included from Helper
#api_address, #api_description, #api_version_module, #api_version_module_with_prefix, #class_prefix, #controller_class, #entity_class, #entity_class_name, #entity_module_with_prefix, #model
Instance Method Details
#add_mount_line_to_api_root ⇒ Object
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
# File 'lib/generators/api_scaffold/modify_api_root_generator.rb', line 11
def add_mount_line_to_api_root
line = "mount API#{api_version_module_with_prefix}::#{controller_class}"
pattern = "mount API#{api_version_module_with_prefix}::"
sentinel = find_root_line(pattern, controller_class) || '# API'
regex = /(#{Regexp.escape(sentinel.force_encoding(Encoding::BINARY))})/mi
tabs = "\n" + (' ' * 6)
modify_api_root(regex, tabs, line)
end
|
#add_swagger_line_to_api_root ⇒ Object
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
# File 'lib/generators/api_scaffold/modify_api_root_generator.rb', line 27
def add_swagger_line_to_api_root
line = "{ name: '#{api_address}', title: '#{api_address}', description: '#{api_description}' },"
pattern = "{ name: '"
sentinel = find_root_line(pattern, api_address) || 'tags: ['
regex = /(#{Regexp.escape(sentinel.force_encoding(Encoding::BINARY))})/mi
if sentinel != 'tags: [' && sentinel.last != ','
modify_api_root(regex, '', ',')
sentinel += ','
regex = /(#{Regexp.escape(sentinel.force_encoding(Encoding::BINARY))})/mi
end
tabs = "\n" + (' ' * 10)
modify_api_root(regex, tabs, line)
end
|