1 27 package ch.ethz.prose.filter; 28 29 import java.util.*; 31 import java.io.*; 32 import ch.ethz.jvmai.JoinPoint; 33 import ch.ethz.jvmai.CodeJoinPoint; 34 import ch.ethz.jvmai.JoinPointKinds; 35 import ch.ethz.prose.engine.JoinPointRequest; 36 37 43 public 44 class ExecutionsAtMethodEntry extends PointCutter implements JoinPointKinds{ 45 46 50 public ExecutionsAtMethodEntry(int fMask) 51 { 52 acceptMask = MASK_METHOD_ENTRY_JP | MASK_METHOD_EXIT_JP; 53 mayFilterStaticallyMask = MASK_METHOD_ENTRY_JP | MASK_METHOD_EXIT_JP; 54 canFilterStaticallyMask = MASK_METHOD_ENTRY_JP | MASK_METHOD_EXIT_JP; 55 this.filterMask = fMask; 56 } 57 58 int filterMask; 59 60 public boolean doIsSpecialRequest(JoinPointRequest jpr) 61 { 62 return (filterMask & acceptMask & jpr.getMask()) == filterMask; 66 } 67 68 public boolean doIsSpecialEvent(CodeJoinPoint cjp) 69 { 70 throw new Error ("Execution not allowed"); 71 } 72 } 73 74 75 | Popular Tags |