1
2
3
4
5
6
7 package org.mule.transport.ssl;
8
9 import org.mule.api.MuleEventContext;
10 import org.mule.tck.functional.EventCallback;
11
12 import java.security.cert.Certificate;
13 import java.util.Collections;
14 import java.util.LinkedList;
15 import java.util.List;
16
17 public class SaveCertificatesCallback implements EventCallback
18 {
19
20 private volatile List<Certificate[]> certificates;
21
22 public SaveCertificatesCallback()
23 {
24 super();
25 clear();
26 }
27
28 public void eventReceived(MuleEventContext context, Object component) throws Exception
29 {
30
31
32 Thread.sleep(100);
33
34 Certificate[] certs = context.getMessage().getOutboundProperty(SslConnector.LOCAL_CERTIFICATES);
35 certificates.add(certs);
36 }
37
38 public void clear()
39 {
40 certificates = Collections.synchronizedList(new LinkedList<Certificate[]>());
41 }
42
43 public List<Certificate[]> getCertificates()
44 {
45 return certificates;
46 }
47 }