Class SliceInstrumentor

  • All Implemented Interfaces:
    IInstrumentor

    public class SliceInstrumentor
    extends AbstractInstrumentor
    Adds a configurable guard to all methods that have not been traced or found reachable.
    • Constructor Detail

      • SliceInstrumentor

        public SliceInstrumentor()

        Constructor for SliceInstrumentor.

    • Method Detail

      • acceptToInstrument

        public boolean acceptToInstrument​(JavaId _jid,
                                          javassist.CtBehavior _behavior,
                                          ClassVisitor _cv)
        Returns true of a given instrumentor accepts to instrument the given Java class, false otherwise. Returns true if the following two conditions hold, false otherwise: (1) The given JavaId is whitelisted or there is no whitelist (2) The given JavaId is NOT blacklisted or there is no blacklist. If there is neither a blacklist nor a whitelist, the method always returns false.
        Parameters:
        _jid - a JavaId object.
        _behavior - a CtBehavior object.
        _cv - a ClassVisitor object.
        Returns:
        a boolean.
      • instrument

        public void instrument​(StringBuffer _code,
                               JavaId _jid,
                               javassist.CtBehavior _behavior,
                               ClassVisitor _cv)
                        throws javassist.CannotCompileException
        Appends Java source code to the given StringBuffer. After all IInstrumentors appended their respective code, the ensemble will be added to a Construct, which will then be compiled.
        Parameters:
        _code - a StringBuffer object.
        _jid - a JavaId object.
        _behavior - a CtBehavior object.
        _cv - a ClassVisitor object.
        Throws:
        javassist.CannotCompileException - if any.
      • upladInformation

        public void upladInformation​(AbstractGoal _exe,
                                     int _batch_size)
        Saves the information that has been collected by the instrumentor in the context of the given AbstractGoal. Implementation does not do anything.
        Parameters:
        _exe - a AbstractGoal object.
        _batch_size - a int.
      • awaitUpload

        public void awaitUpload()
        Make the current thread wait until the upload of the information finished. Implementation does not do anything.
      • getStatistics

        public Map<String,​Long> getStatistics()
        Return instrumentor-specific statistics.
        Returns:
        a Map object.