Class: PluginManager::PluginDefinition

Inherits:
Object
  • Object
show all
Defined in:
lib/plugin_manager/plugin_definition.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#definition_fileObject

Returns the value of attribute definition_file.



4
5
6
# File 'lib/plugin_manager/plugin_definition.rb', line 4

def definition_file
  @definition_file
end

#fileObject

Returns the value of attribute file.



4
5
6
# File 'lib/plugin_manager/plugin_definition.rb', line 4

def file
  @file
end

#nameObject

Returns the value of attribute name.



4
5
6
# File 'lib/plugin_manager/plugin_definition.rb', line 4

def name
  @name
end

#object_stringObject

Returns the value of attribute object_string.



4
5
6
# File 'lib/plugin_manager/plugin_definition.rb', line 4

def object_string
  @object_string
end

#resourcesObject

Returns the value of attribute resources.



4
5
6
# File 'lib/plugin_manager/plugin_definition.rb', line 4

def resources
  @resources
end

#versionObject

Returns the value of attribute version.



4
5
6
# File 'lib/plugin_manager/plugin_definition.rb', line 4

def version
  @version
end

Instance Method Details

#dependenciesObject



27
28
29
# File 'lib/plugin_manager/plugin_definition.rb', line 27

def dependencies
  @dependencies ||= []
end

#inspectObject



15
16
17
# File 'lib/plugin_manager/plugin_definition.rb', line 15

def inspect
  inspect1
end

#inspect1Object



11
12
13
# File 'lib/plugin_manager/plugin_definition.rb', line 11

def inspect1              
  "<Plugin #{name} #{version} depends:#{dependencies.inspect} #{required_files.length} files>"
end

#loadObject



35
36
37
38
39
40
41
42
43
44
45
46
47
48
# File 'lib/plugin_manager/plugin_definition.rb', line 35

def load
  s = Time.now
  required_files.each {|file| $".delete(file) }
  load_file = File.expand_path(File.join(File.dirname(definition_file), file))
  $:.unshift(File.dirname(load_file))
  new_files = log_requires do
    require load_file
  end
  required_files.unshift(*new_files)
  if object.respond_to?(:loaded)
    object.loaded
  end
  @load_time = Time.now - s
end

#load_timeObject



31
32
33
# File 'lib/plugin_manager/plugin_definition.rb', line 31

def load_time
  @load_time
end

#objectObject



50
51
52
# File 'lib/plugin_manager/plugin_definition.rb', line 50

def object
  eval(object_string)
end

#required_filesObject



23
24
25
# File 'lib/plugin_manager/plugin_definition.rb', line 23

def required_files
  @required_files ||= []
end