Module: Vagrant::Util::CommandDeprecation
- Defined in:
- lib/vagrant/util/command_deprecation.rb
Overview
Automatically add deprecation notices to commands
Defined Under Namespace
Modules: Complete
Class Method Summary collapse
Instance Method Summary collapse
-
#deprecation_command_name ⇒ String
Generated name of command.
Class Method Details
.included(klass) ⇒ Object
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/vagrant/util/command_deprecation.rb', line 18 def self.included(klass) klass.class_eval do class << self if method_defined?(:synopsis) alias_method :non_deprecated_synopsis, :synopsis def synopsis if !non_deprecated_synopsis.to_s.empty? "#{non_deprecated_synopsis} [DEPRECATED]" else non_deprecated_synopsis end end end end alias_method :non_deprecated_execute, :execute def execute(*args, &block) @env[:ui].warn(I18n.t("vagrant.commands.deprecated", name: deprecation_command_name ) + "\n") non_deprecated_execute(*args, &block) end end end |
Instance Method Details
#deprecation_command_name ⇒ String
Returns generated name of command.
10 11 12 13 14 15 16 |
# File 'lib/vagrant/util/command_deprecation.rb', line 10 def deprecation_command_name name_parts = self.class.name.split("::") [ name_parts[1].sub('Command', ''), name_parts[3] ].compact.map(&:downcase).join(" ") end |