// Process {@link StartLevelAware} on the {@link Deployment}
for (Method method : testClass.getDeclaredMethods()) {
if (method.isAnnotationPresent(Deployment.class)) {
Deployment andep = method.getAnnotation(Deployment.class);
if (andep.managed() && andep.testable() && method.isAnnotationPresent(StartLevelAware.class)) {
StartLevelAware startLevelAware = method.getAnnotation(StartLevelAware.class);
Bundle bundle = getBundle(testCase);
if (bundle != null) {
int bundleStartLevel = startLevelAware.startLevel();
log.fine("Setting bundle start level of " + bundle + " to: " + bundleStartLevel);
StartLevel startLevel = getStartLevel();
startLevel.setBundleStartLevel(bundle, bundleStartLevel);
if (startLevelAware.autostart()) {
try {
bundle.start();
} catch (BundleException ex) {
log.log(Level.SEVERE, ex.getMessage(), ex);
}