package eu.dnetlib.goldoa.service;

import eu.dnetlib.goldoa.domain.Vocabulary;
import org.springframework.beans.factory.annotation.Autowired;

import java.util.List;

/**
 * Created by antleb on 3/3/15.
 */
public class SearchManagerImpl implements SearchManager {

    @Autowired
	private OrganizationManager organizationManager;
    @Autowired
	private ProjectManager projectManager;
    @Autowired
	private JournalManager journalManager;
    @Autowired
	private PublisherManager publisherManager;
    @Autowired
    private FunderManager funderManager;

	@Override
	public List<Vocabulary> search(TYPE type, String term) {

		switch (type) {
			case PROJECT:
				return projectManager.search(term);
			case ORGANISATION:
				return organizationManager.search(term);
			case JOURNAL:
				return journalManager.search(term);
			case PUBLISHER:
				return publisherManager.search(term);
            case FUNDER:
                return funderManager.search(term);
		}

		return null;
	}
}
