Class: Hyraft::Rule::DisassembleCommand
- Inherits:
-
Object
- Object
- Hyraft::Rule::DisassembleCommand
- Defined in:
- lib/hyraft/rule/disassemble_command.rb
Class Method Summary collapse
Instance Method Summary collapse
- #execute ⇒ Object
-
#initialize(args) ⇒ DisassembleCommand
constructor
A new instance of DisassembleCommand.
Constructor Details
#initialize(args) ⇒ DisassembleCommand
Returns a new instance of DisassembleCommand.
10 11 12 13 14 |
# File 'lib/hyraft/rule/disassemble_command.rb', line 10 def initialize(args) @resource_input = args[0] # Can be "users" or "admin-app/users" @target_dir = args[1] || "." parse_resource_input end |
Class Method Details
.start(args) ⇒ Object
6 7 8 |
# File 'lib/hyraft/rule/disassemble_command.rb', line 6 def self.start(args) new(args).execute end |
Instance Method Details
#execute ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/hyraft/rule/disassemble_command.rb', line 16 def execute return show_manifest unless @resource_name puts "\e[31m🗑️ COMPLETE Disassembly: Removing ALL '#{@resource_name}' resources\e[0m" puts "\e[33m⚠️ WARNING: This will remove engine layer, ALL adapters, and ALL templates!\e[0m" puts "" puts "This will delete:" puts " • Engine layer (sources, circuits, ports)" puts " • ALL web adapters (across all app folders)" puts " • ALL templates (across all app folders)" puts " • Data gateway" puts "" print "\e[31mAre you sure you want to continue? (yes/NO): \e[0m" confirmation = $stdin.gets.chomp.downcase unless confirmation == 'yes' puts "\e[32mDisassembly cancelled\e[0m" return end disassemble_engine_layer disassemble_all_adapters disassemble_all_templates disassemble_gateway puts "\e[32m✅ Complete Disassembly: ALL '#{@resource_name}' resources removed\e[0m" end |