Project

General

Profile

1
package eu.dnetlib.enabling.is.sn;
2

    
3
import javax.xml.ws.wsaddressing.W3CEndpointReference;
4

    
5
/**
6
 * Instances implementing this interfaces will send notifications to consumers.
7
 * 
8
 * <p>
9
 * Notifications will be already detected and the message body will be already computed.
10
 * </p>
11
 * 
12
 * <p>
13
 * There will be different NotificationSenders, depending on the performance and reliability characteristics required by
14
 * the message type.
15
 * <p>
16
 * 
17
 * <p>Each notification sender will use a NotificationInvoker to actually forward the notification</p>
18
 * 
19
 * @author marko
20
 * @see eu.dnetlib.enabling.is.sn.NotificationInvoker
21
 */
22
public interface NotificationSender {
23
	/**
24
	 * sends a given message according to specific policies.
25
	 * 
26
	 * @param destination destination EPR
27
	 * @param message message
28
	 */
29
	void send(W3CEndpointReference destination, NotificationMessage message);
30
	
31
	/**
32
	 * Sets the notification invoker which will actually perform the notification delivery.
33
	 * 
34
	 * @param invoker notification invoker
35
	 */
36
	void setInvoker(NotificationInvoker invoker);
37
}
(16-16/23)