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;
	}
}
