docs: public static final void injectCitrusFramework(final Object testCase, final Citrus citrusFramework) {
          ReflectionUtils.doWithFields(testCase.getClass(), new ReflectionUtils.FieldCallback() {
              @Override
              public void doWith(Field field) throws IllegalArgumentException, IllegalAccessException {
                  log.debug(String.format("Injecting Citrus framework instance on test class field '%s'", field.getName()));
                  ReflectionUtils.setField(field, testCase, citrusFramework);
              }
          }, new ReflectionUtils.FieldFilter() {
              @Override
              public boolean matches(Field field) {
                  if (field.isAnnotationPresent(CitrusFramework.class) &&
                          Citrus.class.isAssignableFrom(field.getType())) {
                      if (!field.isAccessible()) {
                          ReflectionUtils.makeAccessible(field);
                      }
  
                      return true;
                  }
  
                  return false;
              }
          });
      }