45 |
# |
# |
46 |
def self.user_filename(filespec) |
def self.user_filename(filespec) |
47 |
return nil if @@userdir.nil? || filespec[0..0]==File::SEPARATOR |
return nil if @@userdir.nil? || filespec[0..0]==File::SEPARATOR |
48 |
dir = File.dirname(filespec).split(File::SEPARATOR).last |
return File.expand_path(File.join(@@userdir,filespec)) |
|
basename = File.basename(filespec) |
|
|
return File.expand_path(File.join(@@userdir,dir,basename)) |
|
49 |
end |
end |
50 |
|
|
51 |
## |
## |
54 |
# |
# |
55 |
def self.save(base_slot, filespec, name, version) |
def self.save(base_slot, filespec, name, version) |
56 |
user_filespec = user_filename(filespec) |
user_filespec = user_filename(filespec) |
57 |
if !user_filespec.nil? |
if user_filespec.nil? |
58 |
filespec = user_filespec |
filespec = File.join($FR_CODEBASE,filespec) if filespec[0..0] != File::SEPARATOR |
59 |
# if file first saved make sure to create the full path first |
else |
60 |
unless File.exist?(filespec) |
filespec = user_filespec |
61 |
require 'ftools' |
# if file first saved make sure to create the full path first |
62 |
File.makedirs(File.dirname(filespec)) |
unless File.exist?(filespec) |
63 |
end |
require 'ftools' |
64 |
|
File.makedirs(File.dirname(filespec)) |
65 |
|
end |
66 |
end |
end |
67 |
|
# puts ">>> Saving Property File: #{filespec}" |
68 |
file = File.new(filespec, "w+") |
file = File.new(filespec, "w+") |
69 |
file.puts "#### Properties: #{name} - Version: #{version}" |
file.puts "#### Properties: #{name} - Version: #{version}" |
70 |
file.puts gather_data(base_slot).to_yaml(:SortKeys=>true) |
file.puts gather_data(base_slot).to_yaml(:SortKeys=>true) |
92 |
user_filespec = user_filename(filespec) |
user_filespec = user_filename(filespec) |
93 |
if !user_filespec.nil? && File.exist?(user_filespec) |
if !user_filespec.nil? && File.exist?(user_filespec) |
94 |
filespec = user_filespec |
filespec = user_filespec |
95 |
|
else |
96 |
|
filespec = File.join($FR_CODEBASE,filespec) if filespec[0..0] != File::SEPARATOR |
97 |
end |
end |
98 |
#puts "Loading Property File: #{filespec}" |
#puts "Loading Property File: #{filespec}" |
99 |
return unless File.exist?(filespec) |
return unless File.exist?(filespec) |
165 |
def load_files |
def load_files |
166 |
plugin_element = nil |
plugin_element = nil |
167 |
@configuration.plugin_paths.split(";").each do |path| |
@configuration.plugin_paths.split(";").each do |path| |
168 |
Dir.foreach(path) do |file| |
fullpath = File.join($FR_CODEBASE,path) if path[0..0] != File::SEPARATOR |
169 |
if file!=".." and file!="." and File.stat("#{path}/#{file}").directory? |
Dir.foreach(fullpath) do |file| |
170 |
filespec = "#{path}/#{file}/plugin.yaml" |
next if file=='..' || file=='.' |
171 |
next unless File.exist?(filespec) |
if File.stat("#{fullpath}/#{file}").directory? |
172 |
@configuration.register(YAML.load(File.open(filespec).read), File.dirname(filespec)) |
full_filespec = "#{fullpath}/#{file}/plugin.yaml" |
173 |
elsif file[-5..-1]==".yaml" and !File.stat("#{path}/#{file}").directory? |
filespec = "#{path}/#{file}/plugin.yaml" |
174 |
|
next unless File.exist?(full_filespec) |
175 |
|
@configuration.register(YAML.load(File.open(full_filespec).read), |
176 |
|
File.dirname(filespec)) |
177 |
|
elsif file[-5..-1]==".yaml" and !File.stat("#{fullpath}/#{file}").directory? |
178 |
|
full_filespec = "#{fullpath}/#{file}" |
179 |
filespec = "#{path}/#{file}" |
filespec = "#{path}/#{file}" |
180 |
@configuration.register(YAML.load(File.open(filespec).read), File.dirname(filespec)) |
@configuration.register(YAML.load(File.open(full_filespec).read), |
181 |
|
File.dirname(filespec)) |
182 |
end |
end |
183 |
end |
end |
184 |
end |
end |