1
|
package eu.dnetlib.data.objectstore.modular;
|
2
|
|
3
|
import eu.dnetlib.data.objectstore.rmi.ObjectStoreServiceException;
|
4
|
import eu.dnetlib.data.objectstore.rmi.Protocols;
|
5
|
import eu.dnetlib.enabling.tools.blackboard.BlackboardJob;
|
6
|
import eu.dnetlib.enabling.tools.blackboard.BlackboardServerHandler;
|
7
|
import org.springframework.beans.factory.annotation.Required;
|
8
|
|
9
|
|
10
|
/**
|
11
|
* The Class FeedObjectStoreAction to execute the blacboard action of type FEED.
|
12
|
*/
|
13
|
public class FeedObjectStoreAction extends AbstractObjectStoreAction {
|
14
|
|
15
|
/** The profile creator. */
|
16
|
private ObjectStoreProfileCreator profileCreator;
|
17
|
|
18
|
/** The store feeder. */
|
19
|
private ModularObjectStoreFeeder storeFeeder;
|
20
|
|
21
|
@Override
|
22
|
protected void executeAsync(final BlackboardServerHandler handler, final BlackboardJob job) throws ObjectStoreServiceException {
|
23
|
try {
|
24
|
final String objStoreID = job.getParameters().get("obsID");
|
25
|
final String objID = job.getParameters().get("objID");
|
26
|
final String URI = job.getParameters().get("URI");
|
27
|
final String eprRs = job.getParameters().get("epr");
|
28
|
final String protocolString = job.getParameters().get("protocol");
|
29
|
|
30
|
final Protocols protocol;
|
31
|
if (protocolString == null)
|
32
|
protocol = Protocols.None;
|
33
|
else
|
34
|
protocol = Protocols.valueOf(job.getParameters().get("protocol"));
|
35
|
final String mime = job.getParameters().get("mime");
|
36
|
final String login = job.getParameters().get("login");
|
37
|
final String password = job.getParameters().get("password");
|
38
|
|
39
|
if (URI != null && URI.length() > 0) {
|
40
|
storeFeeder.feedObject(objStoreID, objID, URI, protocol, login,
|
41
|
password, mime);
|
42
|
} else if (eprRs != null && eprRs.length() > 0) {
|
43
|
storeFeeder
|
44
|
.feed(objStoreID, eprRs, protocol, login, password, mime);
|
45
|
}
|
46
|
completeWithSuccess(handler, job);
|
47
|
} catch (Exception e) {
|
48
|
completeWithFail(handler, job, e);
|
49
|
}
|
50
|
}
|
51
|
|
52
|
|
53
|
|
54
|
/**
|
55
|
* Gets the profile creator.
|
56
|
*
|
57
|
* @return the profile creator
|
58
|
*/
|
59
|
public ObjectStoreProfileCreator getProfileCreator() {
|
60
|
return profileCreator;
|
61
|
}
|
62
|
|
63
|
/**
|
64
|
* Sets the profile creator.
|
65
|
*
|
66
|
* @param profileCreator the new profile creator
|
67
|
*/
|
68
|
@Required
|
69
|
public void setProfileCreator(ObjectStoreProfileCreator profileCreator) {
|
70
|
this.profileCreator = profileCreator;
|
71
|
}
|
72
|
|
73
|
/**
|
74
|
* Gets the store feeder.
|
75
|
*
|
76
|
* @return the store feeder
|
77
|
*/
|
78
|
public ModularObjectStoreFeeder getStoreFeeder() {
|
79
|
return storeFeeder;
|
80
|
}
|
81
|
|
82
|
/**
|
83
|
* Sets the store feeder.
|
84
|
*
|
85
|
* @param storeFeeder the new store feeder
|
86
|
*/
|
87
|
@Required
|
88
|
public void setStoreFeeder(ModularObjectStoreFeeder storeFeeder) {
|
89
|
this.storeFeeder = storeFeeder;
|
90
|
}
|
91
|
|
92
|
}
|