lib/origen/application.rb in origen-0.2.6 vs lib/origen/application.rb in origen-0.3.0
- old
+ new
@@ -8,10 +8,11 @@
class Application
autoload :Configuration, 'origen/application/configuration'
autoload :Target, 'origen/application/target'
autoload :Environment, 'origen/application/environment'
autoload :PluginsManager, 'origen/application/plugins_manager'
+ autoload :Plugins, 'origen/application/plugins'
autoload :LSF, 'origen/application/lsf'
autoload :Runner, 'origen/application/runner'
autoload :ConfigurationManager, 'origen/application/configuration_manager'
autoload :LSFManager, 'origen/application/lsf_manager'
autoload :Release, 'origen/application/release'
@@ -199,15 +200,11 @@
end
# Returns true if the given application instance is
# the current plugin
def current_plugin?
- if Origen.current_plugin.name
- Origen.current_plugin.instance == self
- else
- false
- end
+ Origen.app.plugins.current == self
end
# Returns the current top-level object (the DUT)
def top_level
@top_level ||= begin
@@ -418,12 +415,17 @@
def gem_name
(Origen.app.config.gem_name || name).to_s.underscore.symbolize
end
+ def plugins
+ @plugins ||= Plugins.new
+ end
+
def plugins_manager
- @plugins_manager ||= PluginsManager.new
+ Origen.deprecated 'Origen.app.plugins_manager and Origen.app.current_plugin are deprecated, use Origen.app.plugins instead'
+ plugins
end
alias_method :plugin_manager, :plugins_manager
alias_method :current_plugin, :plugins_manager
def target
@@ -503,11 +505,11 @@
def pattern_iterators
@pattern_iterators ||= []
end
def callback_listeners
- current = Origen.current_plugin.instance
+ current = Origen.app.plugins.current
applications = [self]
applications << current if current
applications + instantiated_callback_listeners
end
@@ -662,10 +664,10 @@
# Keep this within the load_event to ensure any objects that are further instantiated objects
# will be associated with (and cleared out upon reload of) the current target
listeners_for(:on_load_target).each(&:on_load_target)
end
listeners_for(:after_load_target).each(&:after_load_target)
- Origen.import_manager.validate_production_status
+ Origen.app.plugins.validate_production_status
# @target_instantiated = true
end
# Not a clean unload, but allows objects to be re-instantiated for testing
# @api private