001 /*
002 * Created on Jun 25, 2005 @author paulk
003 */
004 package toolbus.atom.note;
005
006 import toolbus.TBTermFactory;
007 import toolbus.atom.Atom;
008 import toolbus.atom.Ref;
009 import toolbus.exceptions.ToolBusException;
010 import toolbus.parsercup.PositionInformation;
011 import toolbus.process.ProcessExpression;
012 import aterm.ATerm;
013
014 public class NoNote extends Atom{
015 private final ATerm msgpat;
016
017 public NoNote(ATerm msgpat, TBTermFactory tbfactory, PositionInformation posInfo){
018 super(tbfactory, posInfo);
019 this.msgpat = msgpat;
020 setAtomArgs(new Ref[]{new Ref(msgpat)});
021 }
022
023 public ProcessExpression copy(){
024 Atom a = new NoNote(msgpat, tbfactory, getPosInfo());
025 a.copyAtomAttributes(this);
026 return a;
027 }
028
029 public boolean execute() throws ToolBusException{
030 if(!isEnabled()) return false;
031 if(getProcess().noNoteInQueue(msgpat, getEnv())) return true;
032
033 return false;
034 }
035 }