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    }