All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.codehaus.fitnesseweb.fixture.SpringFixtureLoader Maven / Gradle / Ivy

There is a newer version: 1.0.5
Show newest version
package org.codehaus.fitnesseweb.fixture;

import fit.Fixture;
import fit.FixtureLoader;
import org.springframework.beans.factory.config.AutowireCapableBeanFactory;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;

public class SpringFixtureLoader extends FixtureLoader {
    private ApplicationContext applicationContext;

    public SpringFixtureLoader(final ApplicationContext applicationContext) {
        this.applicationContext = applicationContext;
    }

    @Override
    public Fixture disgraceThenLoad(String tableName) throws Throwable {
        Fixture fixture = super.disgraceThenLoad(tableName);
        applicationContext.getAutowireCapableBeanFactory().autowireBeanProperties(fixture,
                AutowireCapableBeanFactory.AUTOWIRE_BY_NAME, false);
        if (fixture instanceof ApplicationContextAware) {
            ((ApplicationContextAware) fixture).setApplicationContext(applicationContext);
        }

        return fixture;
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy