001package org.biopax.paxtools.pattern.miner; 002 003import org.biopax.paxtools.pattern.Pattern; 004import org.biopax.paxtools.pattern.PatternBox; 005import org.biopax.paxtools.pattern.util.Blacklist; 006 007import java.util.HashSet; 008import java.util.Set; 009 010/** 011 * Miner for the controls-state-change pattern. 012 * @author Ozgun Babur 013 */ 014public class CSCOThroughBindingSmallMoleculeMiner extends ControlsStateChangeOfMiner 015{ 016 /** 017 * Constructor that sets name and description. 018 */ 019 public CSCOThroughBindingSmallMoleculeMiner() 020 { 021 super("-through-binding-small-mol", "The first protein produces a non-ubique small " + 022 "molecule, and this small molecule controls state of the second protein."); 023 } 024 025 /** 026 * Constructs the pattern. 027 * @return pattern 028 */ 029 @Override 030 public Pattern constructPattern() 031 { 032 return PatternBox.controlsStateChangeThroughBindingSmallMolecule(blacklist); 033 } 034 035 @Override 036 public String[] getMediatorLabels() 037 { 038 return new String[]{"upper Control", "upper Conversion", "Conversion", "SM"}; 039 } 040 041 @Override 042 public String getSourceLabel() 043 { 044 return "upper controller ER"; 045 } 046 047 @Override 048 public String getTargetLabel() 049 { 050 return "changed ER"; 051 } 052 053 @Override 054 public String[] getSourcePELabels() 055 { 056 return new String[]{"upper controller simple PE", "upper controller PE"}; 057 } 058 059 @Override 060 public String[] getTargetPELabels() 061 { 062 return new String[]{"input PE", "input simple PE", "output PE", "output simple PE"}; 063 } 064}