001package org.biopax.paxtools.impl.level3;
002
003import org.biopax.paxtools.model.level3.Catalysis;
004import org.biopax.paxtools.model.level3.Modulation;
005import org.biopax.paxtools.model.level3.Process;
006import org.hibernate.annotations.Cache;
007import org.hibernate.annotations.CacheConcurrencyStrategy;
008import org.hibernate.annotations.Proxy;
009import org.hibernate.annotations.DynamicInsert;
010import org.hibernate.annotations.DynamicUpdate; 
011import org.hibernate.search.annotations.Indexed;
012
013import javax.persistence.Entity;
014import javax.persistence.Transient;
015
016@Entity
017@Proxy(proxyClass= Modulation.class)
018@Indexed
019@DynamicUpdate @DynamicInsert
020@Cache(usage = CacheConcurrencyStrategy.NONSTRICT_READ_WRITE)
021public class ModulationImpl extends ControlImpl implements Modulation
022{
023        
024        public ModulationImpl() {
025        }
026
027// ------------------------ INTERFACE METHODS ------------------------
028
029
030// --------------------- Interface BioPAXElement ---------------------
031
032    @Override @Transient
033        public Class<? extends Modulation> getModelInterface()
034        {
035                return Modulation.class;
036        }
037
038// -------------------------- OTHER METHODS --------------------------
039
040
041
042        protected boolean checkControlled(Process controlled)
043        {
044                return controlled instanceof Catalysis;
045        }
046}