def data()
ret = []
PlugMan.registered_plugins.sort do |a,b|
a[0].to_s <=> b[0].to_s
end.each do |name, obj|
item = {
:name => name.to_s,
:version => obj.version,
:state => obj.state,
:extension_points => [],
:requires => [] + obj.requires.flatten
}
item[:requires] << obj.extends.collect do |nm, ext|
"#{nm.to_s}(#{ext.join(', ')})"
end if obj.extends
obj.extension_points.each do |extpt|
conn = []
PlugMan.extensions(name, extpt).each do |pl|
conn << pl.name.to_s
end
item[:extension_points] << {
:name => extpt.to_s,
:connections => conn
}
end if obj.extension_points
ret << item
end
ret
end