package eu.dnetlib.enabling.manager.msro;

import org.springframework.beans.factory.annotation.Required;

import eu.dnetlib.enabling.actions.AbstractSubscriptionAction;

/**
 * This notification handler reacts to registration of new indices.
 * 
 * @author marko
 * 
 */
public class NewIndexServiceNotificationHandler extends AbstractSubscriptionAction {

	/**
	 * manager map.
	 */
	private ManagerMap managerMap;
	
	/**
	 * {@inheritDoc}
	 * 
	 * @see eu.dnetlib.enabling.tools.blackboard.NotificationHandler#notified(java.lang.String, java.lang.String,
	 *      java.lang.String, java.lang.String)
	 */
	@Override
	public void notified(final String subscrId, final String topic, final String rsId, final String profile) {
		if (!topic.startsWith(getTopicPrefix()))
			return;

		managerMap.offerMasterIndexService(rsId);
	}

	public ManagerMap getManagerMap() {
		return managerMap;
	}

	@Required
	public void setManagerMap(ManagerMap managerMap) {
		this.managerMap = managerMap;
	}

}
