securityEventListener.compare();
List<SecurityEvent> receivedSecurityEvents = securityEventListener.getReceivedSecurityEvents();
for (int i = 0; i < receivedSecurityEvents.size(); i++) {
SecurityEvent securityEvent = receivedSecurityEvents.get(i);
if (securityEvent.getSecurityEventType() == WSSecurityEventConstants.Operation) {
OperationSecurityEvent operationSecurityEvent = (OperationSecurityEvent) securityEvent;
Assert.assertEquals(operationSecurityEvent.getOperation(), new QName("http://schemas.xmlsoap.org/wsdl/", "definitions"));
} else if (securityEvent.getSecurityEventType() == WSSecurityEventConstants.EncryptedPart) {
EncryptedPartSecurityEvent encryptedPartSecurityEvent = (EncryptedPartSecurityEvent) securityEvent;
Assert.assertNotNull(encryptedPartSecurityEvent.getXmlSecEvent());
Assert.assertNotNull(encryptedPartSecurityEvent.getSecurityToken());
Assert.assertNotNull(encryptedPartSecurityEvent.getElementPath());
final QName expectedElementName = new QName("http://schemas.xmlsoap.org/soap/envelope/", "Body");
Assert.assertEquals(encryptedPartSecurityEvent.getXmlSecEvent().asStartElement().getName(), expectedElementName);
Assert.assertEquals(encryptedPartSecurityEvent.getElementPath().size(), 2);
Assert.assertEquals(encryptedPartSecurityEvent.getElementPath().get(encryptedPartSecurityEvent.getElementPath().size() - 1), expectedElementName);
}
}
EncryptedPartSecurityEvent encryptedPartSecurityEvent = securityEventListener.getSecurityEvent(WSSecurityEventConstants.EncryptedPart);
OperationSecurityEvent operationSecurityEvent = securityEventListener.getSecurityEvent(WSSecurityEventConstants.Operation);
String encryptedPartCorrelationID = encryptedPartSecurityEvent.getCorrelationID();
String operationCorrelationID = operationSecurityEvent.getCorrelationID();
List<SecurityEvent> operationSecurityEvents = new ArrayList<SecurityEvent>();
List<SecurityEvent> encryptedPartSecurityEvents = new ArrayList<SecurityEvent>();
List<SecurityEvent> securityEvents = securityEventListener.getReceivedSecurityEvents();
for (int i = 0; i < securityEvents.size(); i++) {
SecurityEvent securityEvent = securityEvents.get(i);
if (securityEvent.getCorrelationID().equals(encryptedPartCorrelationID)) {
encryptedPartSecurityEvents.add(securityEvent);
} else if (securityEvent.getCorrelationID().equals(operationCorrelationID)) {
operationSecurityEvents.add(securityEvent);
}
}
org.junit.Assert.assertEquals(4, encryptedPartSecurityEvents.size());