Project

General

Profile

1
package eu.dnetlib.oai.actions;
2

    
3
import eu.dnetlib.enabling.tools.blackboard.BlackboardJob;
4
import eu.dnetlib.enabling.tools.blackboard.BlackboardServerHandler;
5
import eu.dnetlib.oai.mongo.MongoPublisherStoreDAO;
6
import eu.dnetlib.oai.utils.OAIParameterNames;
7
import org.apache.commons.lang3.StringUtils;
8
import org.apache.commons.logging.Log;
9
import org.apache.commons.logging.LogFactory;
10
import org.springframework.beans.factory.annotation.Autowired;
11

    
12
public class DropStoreAction extends AbstractOAIStoreAction {
13

    
14
	private static final Log log = LogFactory.getLog(DropStoreAction.class); // NOPMD by marko on 11/24/08 5:02 PM
15

    
16
	@Autowired
17
	private MongoPublisherStoreDAO mongoPublisherStoreDAO;
18

    
19
	@Override
20
	public void execute(final BlackboardServerHandler handler, final BlackboardJob job) throws Exception {
21
		String mdformat = job.getParameters().get(OAIParameterNames.OAI_FORMAT_NAME);
22
		String layout = job.getParameters().get(OAIParameterNames.OAI_FORMAT_LAYOUT);
23
		String interp = job.getParameters().get(OAIParameterNames.OAI_FORMAT_INTERPRETATION);
24
		String dbName = job.getParameters().get(OAIParameterNames.OAI_DB);
25
		String coll = job.getParameters().get(OAIParameterNames.OAI_COLLECTON);
26
		String set = job.getParameters().get(OAIParameterNames.OAI_SOURCE);
27

    
28
		boolean deleted = false;
29
		if (StringUtils.isNotBlank(set)) {
30
			deleted = mongoPublisherStoreDAO.deleteFromStore(mdformat, interp, layout, dbName, set);
31
		} else {
32
			deleted = this.mongoPublisherStoreDAO.deleteStore(mdformat, interp, layout, dbName);
33
		}
34
		if (deleted) {
35
			log.info("OAI Deletion succeeded on db " + dbName+" oaistore: "+coll+", for set (all if empty) : "+set);
36
		} else {
37
			log.info("Probably the store to delete "+coll+" does not exist. OAI Deletion failed on db " + dbName);
38
		}
39
		handler.done(job);
40
	}
41
}
(5-5/8)