001 package edu.rice.cs.cunit.instrumentors;
002
003 import edu.rice.cs.cunit.classFile.ClassFile;
004
005 import edu.rice.cs.cunit.instrumentors.util.CompoundStrategy;
006
007 import edu.rice.cs.cunit.instrumentors.util.ConditionalStrategy;
008
009
010
011 import java.util.List;
012
013 /**
014 * Compound instrumentor for instrumenting CUnit system classes.
015 * @author Mathias Ricken
016 */
017 public class CompoundCompactSystemStrategy extends CompoundStrategy {
018 /**
019 * Create a new compound instrumentor for instrumenting CUnit system classes.
020 * @param parameters parameters for the instrumentors
021 */
022 public CompoundCompactSystemStrategy(List<String> parameters) {
023 super(parameters);
024 getCombined().add(new ConditionalStrategy(new MarkerInlineStrategy()) {
025 public boolean apply(ClassFile cf) {
026 return (cf.getThisClassName().equals("edu.rice.cs.cunit.SyncPointBuffer"));
027 }
028 });
029 }
030
031 /**
032 * Instrumentation of all classes is done.
033 */
034 public void done() {
035 // nothing to do
036 }
037 }
038