class SpringServiceManager implements ServiceManagerSystem {

    @SuppressWarnings("unchecked")
    @Override
    public <T> List<T> getServicesByType(Class<T> type) {
        ArrayList<T> l = new ArrayList<T>();
        Map<String, T> beans;
        try {
            beans = applicationContext.getBeansOfType(type, true, true);
            l.addAll( (Collection<? extends T>) beans.values() );
        } catch (BeansException e) {
            throw new RuntimeException("Failed to get beans of type ("+type+"): " + e.getMessage(), e);
        }
        return l;
    }

    public  SpringServiceManager(ServiceManagerSystem parent, DSpaceConfigurationService configurationService, boolean testMode, boolean developmentMode, String... configPaths);

}