Module: Ruspider::MassSpecAPI
Overview
Constant Summary
collapse
- API =
'MassSpecAPI.asmx'
- FIELDS =
{
CSID: 'csid',
MF: 'molecular_formula',
SMILES: 'smiles',
InChI: 'inchi',
InChIKey: 'inchikey',
AverageMass: 'average_mass',
MolecularWeight: 'molecular_weight',
MonoisotopicMass: 'monoisotopic_mass',
NominalMass: 'nominal_mass',
ALogP: 'alogp',
XLogP: 'xlogp'
}.freeze
Instance Method Summary
collapse
Methods included from XmlUtils
#array_from_xml, #get_first_node, #get_nodes, #hash_from_string, #hash_from_xml
Instance Method Details
#databases ⇒ Object
31
32
33
34
|
# File 'lib/ruspider/mass_spec_api.rb', line 31
def databases
response = @rest.post(API, 'GetDatabases')
array_from_xml(response, 'ArrayOfString', 'string')
end
|
#get_extended_compound_info(csid) ⇒ Object
36
37
38
39
|
# File 'lib/ruspider/mass_spec_api.rb', line 36
def get_extended_compound_info(csid)
response = @rest.post(API, 'GetExtendedCompoundInfo', csid: csid)
hash_from_string(response, 'ExtendedCompoundInfo', FIELDS)
end
|
#get_extended_compound_info_list(csids) ⇒ Object
41
42
43
44
45
|
# File 'lib/ruspider/mass_spec_api.rb', line 41
def get_extended_compound_info_list(csids)
response = @rest.post(API, 'GetExtendedCompoundInfoArray', csids: csids)
nodes = get_nodes(response)
nodes.map { |node| hash_from_xml(node, FIELDS) }
end
|
#initialize(rest) ⇒ Object
27
28
29
|
# File 'lib/ruspider/mass_spec_api.rb', line 27
def initialize(rest)
@rest = rest
end
|