KeyNodes hub

From BioUML platform
Revision as of 16:00, 22 May 2015 by Tagir Valeev (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

KeyNodes hub is a BioHub which can be used in Regulator search and Effector search analyses as well as several helper analyses. Its main purpose is provide abilities to traverse through gene/molecules network represented as directed weighted graph.

Implementation details

All the KeyNodes hubs must extends the KeyNodesHub class. If the hub is based on MySQL database, it's better to extend KeyNodesSqlHub class as it provides additional support for handling SQL connection. Both classes are parametrized by type which represents hub node.

Nodes representation

Hub node (molecule or gene) can be represented by any type. Sometimes it's ok to use Integer, String, sometimes it's better to create your own class. The Object.toString() of this class should produce stable accession number for the molecule or gene which belongs to the registered reference type.

To support hub nodes you should override the following methods:

  • BioHubSupport.getSupportedInputTypes(): return an array of possible reference types which can be converted to internal node type. Usually it's only one type.
  • KeyNodesHub.getElementConverter(): return an ElementConverter object which is capable to convert internal nodes from/to Element objects:
    • ElementConverter.toNode(Element) method should create a hub node object using Element. The toString() method of the resulting node should produce the same string as Element.getAccession().
    • ElementConverter.fromNode(N) method should create a new Element object by existing node. It must have the full path set, preferably linked to the existing element in the repository.
Personal tools

BioUML platform
Analysis & Workflows
Collaborative research
Virtual biology