Merge pull request #7 from peterdemaeyer/SANTUARIO-554
SANTUARIO-554 Replaced Object with Class<? extends OutputProcessor> p…
diff --git a/src/main/java/org/apache/xml/security/stax/ext/AbstractOutputProcessor.java b/src/main/java/org/apache/xml/security/stax/ext/AbstractOutputProcessor.java
index 4603d03..32374d2 100644
--- a/src/main/java/org/apache/xml/security/stax/ext/AbstractOutputProcessor.java
+++ b/src/main/java/org/apache/xml/security/stax/ext/AbstractOutputProcessor.java
@@ -53,8 +53,8 @@
protected XMLSecurityConstants.Action action;
private XMLSecurityConstants.Phase phase = XMLSecurityConstants.Phase.PROCESSING;
- private Set<Object> beforeProcessors;
- private Set<Object> afterProcessors;
+ private Set<Class<? extends OutputProcessor>> beforeProcessors;
+ private Set<Class<? extends OutputProcessor>> afterProcessors;
protected AbstractOutputProcessor() throws XMLSecurityException {
super();
@@ -85,7 +85,7 @@
}
@Override
- public void addBeforeProcessor(Object processor) {
+ public void addBeforeProcessor(Class<? extends OutputProcessor> processor) {
if (this.beforeProcessors == null) {
this.beforeProcessors = new HashSet<>();
}
@@ -93,7 +93,7 @@
}
@Override
- public Set<Object> getBeforeProcessors() {
+ public Set<Class<? extends OutputProcessor>> getBeforeProcessors() {
if (this.beforeProcessors == null) {
return Collections.emptySet();
}
@@ -101,7 +101,7 @@
}
@Override
- public void addAfterProcessor(Object processor) {
+ public void addAfterProcessor(Class<? extends OutputProcessor> processor) {
if (this.afterProcessors == null) {
this.afterProcessors = new HashSet<>();
}
@@ -109,7 +109,7 @@
}
@Override
- public Set<Object> getAfterProcessors() {
+ public Set<Class<? extends OutputProcessor>> getAfterProcessors() {
if (this.afterProcessors == null) {
return Collections.emptySet();
}
diff --git a/src/main/java/org/apache/xml/security/stax/ext/OutputProcessor.java b/src/main/java/org/apache/xml/security/stax/ext/OutputProcessor.java
index d8572d2..82df967 100644
--- a/src/main/java/org/apache/xml/security/stax/ext/OutputProcessor.java
+++ b/src/main/java/org/apache/xml/security/stax/ext/OutputProcessor.java
@@ -54,28 +54,28 @@
*
* @param processor
*/
- void addBeforeProcessor(Object processor);
+ void addBeforeProcessor(Class<? extends OutputProcessor> processor);
/**
* This OutputProcessor will be added before the processors in this set
*
* @return The set with the named OutputProcessor
*/
- Set<Object> getBeforeProcessors();
+ Set<Class<? extends OutputProcessor>> getBeforeProcessors();
/**
* Add this processor after the given processor
*
* @param processor
*/
- void addAfterProcessor(Object processor);
+ void addAfterProcessor(Class<? extends OutputProcessor> processor);
/**
* This OutputProcessor will be added after the processors in this set
*
* @return The set with the named OutputProcessor
*/
- Set<Object> getAfterProcessors();
+ Set<Class<? extends OutputProcessor>> getAfterProcessors();
/**
* The Phase in which this OutputProcessor should be applied
diff --git a/src/main/java/org/apache/xml/security/stax/impl/OutputProcessorChainImpl.java b/src/main/java/org/apache/xml/security/stax/impl/OutputProcessorChainImpl.java
index e6b45e9..4c79f87 100644
--- a/src/main/java/org/apache/xml/security/stax/impl/OutputProcessorChainImpl.java
+++ b/src/main/java/org/apache/xml/security/stax/impl/OutputProcessorChainImpl.java
@@ -117,8 +117,7 @@
for (int i = endPhaseIdx - 1; i >= startPhaseIdx; i--) {
OutputProcessor outputProcessor = outputProcessors.get(i);
- if (newOutputProcessor.getAfterProcessors().contains(outputProcessor)
- || newOutputProcessor.getAfterProcessors().contains(outputProcessor.getClass().getName())) {
+ if (newOutputProcessor.getAfterProcessors().contains(outputProcessor.getClass())) {
idxToInsert = i + 1;
break;
}
@@ -129,8 +128,7 @@
for (int i = startPhaseIdx; i < endPhaseIdx; i++) {
OutputProcessor outputProcessor = outputProcessors.get(i);
- if (newOutputProcessor.getBeforeProcessors().contains(outputProcessor)
- || newOutputProcessor.getBeforeProcessors().contains(outputProcessor.getClass().getName())) {
+ if (newOutputProcessor.getBeforeProcessors().contains(outputProcessor.getClass())) {
idxToInsert = i;
break;
}
@@ -142,8 +140,7 @@
for (int i = startPhaseIdx; i < endPhaseIdx; i++) {
OutputProcessor outputProcessor = outputProcessors.get(i);
- if (newOutputProcessor.getBeforeProcessors().contains(outputProcessor)
- || newOutputProcessor.getBeforeProcessors().contains(outputProcessor.getClass().getName())) {
+ if (newOutputProcessor.getBeforeProcessors().contains(outputProcessor.getClass())) {
idxToInsert = i;
found = true;
break;
@@ -154,8 +151,7 @@
} else {
for (int i = endPhaseIdx - 1; i >= startPhaseIdx; i--) {
OutputProcessor outputProcessor = outputProcessors.get(i);
- if (newOutputProcessor.getAfterProcessors().contains(outputProcessor)
- || newOutputProcessor.getAfterProcessors().contains(outputProcessor.getClass().getName())) {
+ if (newOutputProcessor.getAfterProcessors().contains(outputProcessor.getClass())) {
idxToInsert = i + 1;
break;
}
diff --git a/src/main/java/org/apache/xml/security/stax/impl/processor/output/AbstractEncryptOutputProcessor.java b/src/main/java/org/apache/xml/security/stax/impl/processor/output/AbstractEncryptOutputProcessor.java
index ad822a6..4cae594 100644
--- a/src/main/java/org/apache/xml/security/stax/impl/processor/output/AbstractEncryptOutputProcessor.java
+++ b/src/main/java/org/apache/xml/security/stax/impl/processor/output/AbstractEncryptOutputProcessor.java
@@ -146,9 +146,9 @@
throws XMLSecurityException {
super();
- this.addBeforeProcessor(AbstractEncryptEndingOutputProcessor.class.getName());
- this.addBeforeProcessor(AbstractInternalEncryptionOutputProcessor.class.getName());
- this.addAfterProcessor(AbstractEncryptOutputProcessor.class.getName());
+ this.addBeforeProcessor(AbstractEncryptEndingOutputProcessor.class);
+ this.addBeforeProcessor(AbstractInternalEncryptionOutputProcessor.class);
+ this.addAfterProcessor(AbstractEncryptOutputProcessor.class);
this.setEncryptionPartDef(encryptionPartDef);
this.setXmlSecStartElement(xmlSecStartElement);
this.setEncoding(encoding);
diff --git a/src/main/java/org/apache/xml/security/stax/impl/processor/output/AbstractSignatureOutputProcessor.java b/src/main/java/org/apache/xml/security/stax/impl/processor/output/AbstractSignatureOutputProcessor.java
index c1c2efd..603bb74 100644
--- a/src/main/java/org/apache/xml/security/stax/impl/processor/output/AbstractSignatureOutputProcessor.java
+++ b/src/main/java/org/apache/xml/security/stax/impl/processor/output/AbstractSignatureOutputProcessor.java
@@ -264,7 +264,7 @@
public InternalSignatureOutputProcessor(SignaturePartDef signaturePartDef, XMLSecStartElement xmlSecStartElement)
throws XMLSecurityException {
super();
- this.addBeforeProcessor(InternalSignatureOutputProcessor.class.getName());
+ this.addBeforeProcessor(InternalSignatureOutputProcessor.class);
this.signaturePartDef = signaturePartDef;
this.xmlSecStartElement = xmlSecStartElement;
}
diff --git a/src/main/java/org/apache/xml/security/stax/impl/processor/output/XMLEncryptOutputProcessor.java b/src/main/java/org/apache/xml/security/stax/impl/processor/output/XMLEncryptOutputProcessor.java
index 1264d24..58d44c3 100644
--- a/src/main/java/org/apache/xml/security/stax/impl/processor/output/XMLEncryptOutputProcessor.java
+++ b/src/main/java/org/apache/xml/security/stax/impl/processor/output/XMLEncryptOutputProcessor.java
@@ -312,7 +312,7 @@
}
}
};
- processor.getAfterProcessors().add(XMLEncryptOutputProcessor.class.getName());
+ processor.getAfterProcessors().add(XMLEncryptOutputProcessor.class);
return processor;
}
}
diff --git a/src/main/java/org/apache/xml/security/stax/impl/processor/output/XMLSignatureEndingOutputProcessor.java b/src/main/java/org/apache/xml/security/stax/impl/processor/output/XMLSignatureEndingOutputProcessor.java
index fccb59b..e4651d0 100644
--- a/src/main/java/org/apache/xml/security/stax/impl/processor/output/XMLSignatureEndingOutputProcessor.java
+++ b/src/main/java/org/apache/xml/security/stax/impl/processor/output/XMLSignatureEndingOutputProcessor.java
@@ -50,7 +50,7 @@
public XMLSignatureEndingOutputProcessor(XMLSignatureOutputProcessor signatureOutputProcessor) throws XMLSecurityException {
super(signatureOutputProcessor);
- this.addAfterProcessor(XMLSignatureOutputProcessor.class.getName());
+ this.addAfterProcessor(XMLSignatureOutputProcessor.class);
}
@Override
@@ -61,7 +61,7 @@
this.signedInfoProcessor = new SignedInfoProcessor(signatureAlgorithm, signatureId, xmlSecStartElement);
this.signedInfoProcessor.setXMLSecurityProperties(getSecurityProperties());
this.signedInfoProcessor.setAction(getAction());
- this.signedInfoProcessor.addAfterProcessor(XMLSignatureEndingOutputProcessor.class.getName());
+ this.signedInfoProcessor.addAfterProcessor(XMLSignatureEndingOutputProcessor.class);
this.signedInfoProcessor.init(outputProcessorChain);
return this.signedInfoProcessor;
}
diff --git a/src/main/java/org/apache/xml/security/stax/impl/processor/output/XMLSignatureOutputProcessor.java b/src/main/java/org/apache/xml/security/stax/impl/processor/output/XMLSignatureOutputProcessor.java
index e98d3b7..41699a7 100644
--- a/src/main/java/org/apache/xml/security/stax/impl/processor/output/XMLSignatureOutputProcessor.java
+++ b/src/main/java/org/apache/xml/security/stax/impl/processor/output/XMLSignatureOutputProcessor.java
@@ -104,8 +104,8 @@
internalSignatureOutputProcessor = new InternalSignatureOutputProcessor(signaturePartDef, xmlSecStartElement);
internalSignatureOutputProcessor.setXMLSecurityProperties(getSecurityProperties());
internalSignatureOutputProcessor.setAction(getAction());
- internalSignatureOutputProcessor.addAfterProcessor(XMLSignatureOutputProcessor.class.getName());
- internalSignatureOutputProcessor.addBeforeProcessor(XMLSignatureEndingOutputProcessor.class.getName());
+ internalSignatureOutputProcessor.addAfterProcessor(XMLSignatureOutputProcessor.class);
+ internalSignatureOutputProcessor.addBeforeProcessor(XMLSignatureEndingOutputProcessor.class);
internalSignatureOutputProcessor.init(outputProcessorChain);
setActiveInternalSignatureOutputProcessor(internalSignatureOutputProcessor);
diff --git a/src/test/java/org/apache/xml/security/test/stax/OutputProcessorChainTest.java b/src/test/java/org/apache/xml/security/test/stax/OutputProcessorChainTest.java
index d6d49c8..1a31f8e 100644
--- a/src/test/java/org/apache/xml/security/test/stax/OutputProcessorChainTest.java
+++ b/src/test/java/org/apache/xml/security/test/stax/OutputProcessorChainTest.java
@@ -51,8 +51,8 @@
abstract class AbstractOutputProcessor implements OutputProcessor {
private XMLSecurityConstants.Phase phase = XMLSecurityConstants.Phase.PROCESSING;
- private Set<Object> beforeProcessors = new HashSet<>();
- private Set<Object> afterProcessors = new HashSet<>();
+ private Set<Class<? extends OutputProcessor>> beforeProcessors = new HashSet<>();
+ private Set<Class<? extends OutputProcessor>> afterProcessors = new HashSet<>();
@Override
public void setXMLSecurityProperties(XMLSecurityProperties xmlSecurityProperties) {
@@ -67,22 +67,22 @@
}
@Override
- public void addBeforeProcessor(Object processor) {
+ public void addBeforeProcessor(Class<? extends OutputProcessor> processor) {
this.beforeProcessors.add(processor);
}
@Override
- public Set<Object> getBeforeProcessors() {
+ public Set<Class<? extends OutputProcessor>> getBeforeProcessors() {
return beforeProcessors;
}
@Override
- public void addAfterProcessor(Object processor) {
+ public void addAfterProcessor(Class<? extends OutputProcessor> processor) {
this.afterProcessors.add(processor);
}
@Override
- public Set<Object> getAfterProcessors() {
+ public Set<Class<? extends OutputProcessor>> getAfterProcessors() {
return afterProcessors;
}
@@ -186,18 +186,18 @@
AbstractOutputProcessor outputProcessor4 = new AbstractOutputProcessor() {
};
outputProcessor4.setPhase(XMLSecurityConstants.Phase.POSTPROCESSING);
- outputProcessor4.addBeforeProcessor(outputProcessor3.getClass().getName());
+ outputProcessor4.addBeforeProcessor(outputProcessor3.getClass());
outputProcessorChain.addProcessor(outputProcessor4);
AbstractOutputProcessor outputProcessor5 = new AbstractOutputProcessor() {
};
outputProcessor5.setPhase(XMLSecurityConstants.Phase.PREPROCESSING);
- outputProcessor5.addBeforeProcessor(outputProcessor2.getClass().getName());
+ outputProcessor5.addBeforeProcessor(outputProcessor2.getClass());
outputProcessorChain.addProcessor(outputProcessor5);
AbstractOutputProcessor outputProcessor6 = new AbstractOutputProcessor() {
};
- outputProcessor6.addBeforeProcessor(outputProcessor1.getClass().getName());
+ outputProcessor6.addBeforeProcessor(outputProcessor1.getClass());
outputProcessorChain.addProcessor(outputProcessor6);
assertEquals(outputProcessorChain.getProcessors().get(0), outputProcessor5);
@@ -229,18 +229,18 @@
AbstractOutputProcessor outputProcessor4 = new AbstractOutputProcessor() {
};
outputProcessor4.setPhase(XMLSecurityConstants.Phase.POSTPROCESSING);
- outputProcessor4.addAfterProcessor(outputProcessor3.getClass().getName());
+ outputProcessor4.addAfterProcessor(outputProcessor3.getClass());
outputProcessorChain.addProcessor(outputProcessor4);
AbstractOutputProcessor outputProcessor5 = new AbstractOutputProcessor() {
};
outputProcessor5.setPhase(XMLSecurityConstants.Phase.PREPROCESSING);
- outputProcessor5.addAfterProcessor(outputProcessor2.getClass().getName());
+ outputProcessor5.addAfterProcessor(outputProcessor2.getClass());
outputProcessorChain.addProcessor(outputProcessor5);
AbstractOutputProcessor outputProcessor6 = new AbstractOutputProcessor() {
};
- outputProcessor6.addAfterProcessor(outputProcessor1.getClass().getName());
+ outputProcessor6.addAfterProcessor(outputProcessor1.getClass());
outputProcessorChain.addProcessor(outputProcessor6);
assertEquals(outputProcessorChain.getProcessors().get(0), outputProcessor2);
@@ -273,14 +273,14 @@
AbstractOutputProcessor outputProcessor5 = new AbstractOutputProcessor() {
};
- outputProcessor5.addBeforeProcessor("");
- outputProcessor5.addAfterProcessor(outputProcessor3.getClass().getName());
+ outputProcessor5.addBeforeProcessor(outputProcessor4.getClass());
+ outputProcessor5.addAfterProcessor(outputProcessor3.getClass());
outputProcessorChain.addProcessor(outputProcessor5);
AbstractOutputProcessor outputProcessor6 = new AbstractOutputProcessor() {
};
- outputProcessor6.addBeforeProcessor(outputProcessor5.getClass().getName());
- outputProcessor6.addAfterProcessor("");
+ outputProcessor6.addBeforeProcessor(outputProcessor5.getClass());
+ outputProcessor6.addAfterProcessor(outputProcessor3.getClass());
outputProcessorChain.addProcessor(outputProcessor6);
assertEquals(outputProcessorChain.getProcessors().get(0), outputProcessor1);
diff --git a/src/test/java/org/apache/xml/security/test/stax/XMLSecurityStreamWriterTest.java b/src/test/java/org/apache/xml/security/test/stax/XMLSecurityStreamWriterTest.java
index b2f3957..698bc40 100644
--- a/src/test/java/org/apache/xml/security/test/stax/XMLSecurityStreamWriterTest.java
+++ b/src/test/java/org/apache/xml/security/test/stax/XMLSecurityStreamWriterTest.java
@@ -228,20 +228,20 @@
}
@Override
- public void addBeforeProcessor(Object processor) {
+ public void addBeforeProcessor(Class<? extends OutputProcessor> processor) {
}
@Override
- public Set<Object> getBeforeProcessors() {
+ public Set<Class<? extends OutputProcessor>> getBeforeProcessors() {
return new HashSet<>();
}
@Override
- public void addAfterProcessor(Object processor) {
+ public void addAfterProcessor(Class<? extends OutputProcessor> processor) {
}
@Override
- public Set<Object> getAfterProcessors() {
+ public Set<Class<? extends OutputProcessor>> getAfterProcessors() {
return new HashSet<>();
}