Package edu.kit.ipd.sdq.eventsim.instrumentation.injection

This package provides means for injection of instrumentations based on InstrumentationDescriptions. The InstrumentorBuilder can be used to create an Instrumentor which is actually responsible for instrumentation injection. Using the builder, the actual implementation of the instrumentor does not need to be known.
An example for the usage of the builder and the instrumentors is provided in the following:
 private ActiveResourceRep getModelResource(MyResourceImpl res) {
        // do something
        return modelResource;
 }
 
 ...
 
 Instrumentor<MyResourceImpl, ?> instrumentor =
 	InstrumentorBuilder.buildFor(myPcm)
                .withDescription(myDescription)
                .inBundle(myBundle)
                .withStorage(myStorage)
                .forModelType(ActiveResourceRep.class)
                .withMapping(this::getModelResource)
                .createFor(myProbeConfig);
 
 ...
 
 MyResourceImpl res = ...;
 instrumentor.instrument(res);