Sha256: e3e8b7f99526a429dce22c1f2db8180b5db57e3fd4a40c974df21c87065301a5
Contents?: true
Size: 1.57 KB
Versions: 3
Compression:
Stored size: 1.57 KB
Contents
require 'mspire/cv/paramable' require 'mspire/mzml/list' require 'pathname' module Mspire class Mzml class SourceFile include Mspire::CV::Paramable extend Mspire::Mzml::List DEFAULT_SOURCEFILE_ID = 'sourcefile1' # (required) An identifier for this file. attr_accessor :id # (required) Name of the source file, without reference to location # (either URI or local path). attr_accessor :name # (required) URI-formatted location where the file was retrieved. attr_accessor :location # expands the path and sets the name and location def self.[](path, opts={}) self.new DEFAULT_SOURCEFILE_ID, *uri_basename_and_path(path) end # takes a filename (with a relative or expanded path) and returns the # uri basename and path suitable for mzml files def self.uri_basename_and_path(file) pathname = Pathname.new(file) dir = pathname.expand_path.dirname.to_s dir = '/'+dir unless (dir[0] == '/') [pathname.basename, 'file://'+ dir] end def initialize(id="sourcefile1", name="mspire-simulated", location='file://') @id, @name, @location = id, name, location params_init yield(self) if block_given? end def to_xml(builder) builder.sourceFile( id: @id, name: @name, location: @location ) do |sf_n| super(sf_n) end builder end def self.from_xml(xml, ref_hash) self.new(xml[:id], xml[:name], xml[:location]).describe_self_from_xml!(xml, ref_hash) end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
mspire-0.8.2 | lib/mspire/mzml/source_file.rb |
mspire-0.8.1 | lib/mspire/mzml/source_file.rb |
mspire-0.8.0 | lib/mspire/mzml/source_file.rb |