This is an automated email from the ASF dual-hosted git repository.

coheigea pushed a commit to branch coheigea/saml-refactor-new
in repository https://gitbox.apache.org/repos/asf/ws-wss4j.git

commit 69ddf25a81c1cbfbbd5b99ee6aa55dfc47ad2d66
Author: Colm O hEigeartaigh <cohei...@apache.org>
AuthorDate: Wed Jun 18 16:53:35 2025 +0100

    Removing options from WSHandler
---
 .../org/apache/wss4j/dom/handler/WSHandler.java    | 37 ++--------------------
 .../org/apache/wss4j/dom/common/CustomHandler.java | 14 --------
 .../apache/wss4j/dom/handler/CallbackRefTest.java  | 37 ----------------------
 .../wss4j/dom/message/EncryptionCRLTest.java       |  2 +-
 .../apache/wss4j/stax/test/AbstractTestBase.java   |  7 +---
 5 files changed, 5 insertions(+), 92 deletions(-)

diff --git 
a/ws-security-dom/src/main/java/org/apache/wss4j/dom/handler/WSHandler.java 
b/ws-security-dom/src/main/java/org/apache/wss4j/dom/handler/WSHandler.java
index c23b8e22b..5aecd979b 100644
--- a/ws-security-dom/src/main/java/org/apache/wss4j/dom/handler/WSHandler.java
+++ b/ws-security-dom/src/main/java/org/apache/wss4j/dom/handler/WSHandler.java
@@ -1048,10 +1048,8 @@ public abstract class WSHandler {
         RequestData requestData
     ) throws WSSecurityException {
         Map<String, Object> mc = requestData.getMsgContext();
-        CallbackHandler cbHandler = (CallbackHandler) 
getOption(callbackHandlerRef);
-        if (cbHandler == null) {
-            cbHandler = (CallbackHandler) mc.get(callbackHandlerRef);
-        }
+        CallbackHandler cbHandler = (CallbackHandler) 
mc.get(callbackHandlerRef);
+        
         if (cbHandler == null) {
             String callback = getString(callbackHandlerClass, mc);
             if (callback != null) {
@@ -1116,12 +1114,6 @@ public abstract class WSHandler {
 
     protected PasswordEncryptor getPasswordEncryptor(RequestData requestData) {
         PasswordEncryptor passwordEncryptor = 
requestData.getPasswordEncryptor();
-        if (passwordEncryptor == null) {
-            Object o = 
getOption(WSHandlerConstants.PASSWORD_ENCRYPTOR_INSTANCE);
-            if (o instanceof PasswordEncryptor) {
-                passwordEncryptor = (PasswordEncryptor) o;
-            }
-        }
         if (passwordEncryptor == null) {
             Map<String, Object> mc = requestData.getMsgContext();
             Object o = mc.get(WSHandlerConstants.PASSWORD_ENCRYPTOR_INSTANCE);
@@ -1331,37 +1323,16 @@ public abstract class WSHandler {
      * @return the value found.
      * @throws IllegalArgumentException if <code>key</code> is null.
      */
-    public String getString(String key, Map<String, Object> mc) {
+    private String getString(String key, Map<String, Object> mc) {
         if (key == null) {
             throw new IllegalArgumentException("Key cannot be null");
         }
-        String s = getStringOption(key);
-        if (s != null) {
-            return s;
-        }
         if (mc == null) {
             throw new IllegalArgumentException("Message context cannot be 
null");
         }
         return (String) mc.get(key);
     }
 
-
-    /**
-     * Returns the option on <code>name</code>.
-     *
-     * @param key the non-null key of the option.
-     * @return the option on <code>key</code> if <code>key</code>
-     *  exists and is of type java.lang.String; otherwise null.
-     */
-    public String getStringOption(String key) {
-        Object o = getOption(key);
-        if (o instanceof String) {
-            return (String) o;
-        } else {
-            return null;
-        }
-    }
-
     /**
      * Returns the classloader to be used for loading the callback class
      * @return class loader
@@ -1374,6 +1345,4 @@ public abstract class WSHandler {
         }
     }
 
-    public abstract Object getOption(String key);
-
 }
diff --git 
a/ws-security-dom/src/test/java/org/apache/wss4j/dom/common/CustomHandler.java 
b/ws-security-dom/src/test/java/org/apache/wss4j/dom/common/CustomHandler.java
index e26a3d2cd..c453c210c 100644
--- 
a/ws-security-dom/src/test/java/org/apache/wss4j/dom/common/CustomHandler.java
+++ 
b/ws-security-dom/src/test/java/org/apache/wss4j/dom/common/CustomHandler.java
@@ -27,9 +27,7 @@ import org.apache.wss4j.dom.handler.RequestData;
 import org.apache.wss4j.dom.handler.WSHandlerResult;
 import org.w3c.dom.Document;
 
-import java.util.HashMap;
 import java.util.List;
-import java.util.Map;
 
 
 /**
@@ -37,18 +35,6 @@ import java.util.Map;
  */
 public class CustomHandler extends WSHandler {
 
-    private Map<String, Object> optionsMap = new HashMap<>();
-
-    public Object
-    getOption(String key) {
-        return optionsMap.get(key);
-    }
-
-    public void
-    setOption(String key, Object option) {
-        optionsMap.put(key, option);
-    }
-
     public void send(
         Document doc,
         RequestData reqData,
diff --git 
a/ws-security-dom/src/test/java/org/apache/wss4j/dom/handler/CallbackRefTest.java
 
b/ws-security-dom/src/test/java/org/apache/wss4j/dom/handler/CallbackRefTest.java
index 034479b52..33d37a9e1 100644
--- 
a/ws-security-dom/src/test/java/org/apache/wss4j/dom/handler/CallbackRefTest.java
+++ 
b/ws-security-dom/src/test/java/org/apache/wss4j/dom/handler/CallbackRefTest.java
@@ -87,41 +87,4 @@ public class CallbackRefTest {
         assertTrue(outputString.contains("securityPassword"));
     }
 
-    /**
-     * A test for WSHandler.getPassword(...) where the password is obtained 
from a
-     * Callback Handler, which is obtained from the handler options using a 
ref.
-     */
-    @Test
-    public void
-    testHandlerOptionRef() throws Exception {
-
-        final WSSConfig cfg = WSSConfig.getNewInstance();
-        final RequestData reqData = new RequestData();
-        reqData.setWssConfig(cfg);
-        reqData.setUsername("alice");
-        reqData.setPwType(WSConstants.PASSWORD_TEXT);
-        reqData.setMsgContext(new java.util.TreeMap<String, Object>());
-
-        final java.util.List<Integer> actions = new java.util.ArrayList<>();
-        actions.add(WSConstants.UT);
-        Document doc = SOAPUtil.toSOAPPart(SOAPUtil.SAMPLE_SOAP_MSG);
-        CustomHandler handler = new CustomHandler();
-        handler.setOption(WSHandlerConstants.PW_CALLBACK_REF, callbackHandler);
-        HandlerAction action = new HandlerAction(WSConstants.UT);
-        handler.send(
-            doc,
-            reqData,
-            Collections.singletonList(action),
-            true
-        );
-
-        String outputString =
-            XMLUtils.prettyDocumentToString(doc);
-        if (LOG.isDebugEnabled()) {
-            LOG.debug(outputString);
-        }
-        assertTrue(outputString.contains("alice"));
-        assertTrue(outputString.contains("securityPassword"));
-    }
-
 }
\ No newline at end of file
diff --git 
a/ws-security-dom/src/test/java/org/apache/wss4j/dom/message/EncryptionCRLTest.java
 
b/ws-security-dom/src/test/java/org/apache/wss4j/dom/message/EncryptionCRLTest.java
index 5f7e52c5c..5da4f3ccc 100644
--- 
a/ws-security-dom/src/test/java/org/apache/wss4j/dom/message/EncryptionCRLTest.java
+++ 
b/ws-security-dom/src/test/java/org/apache/wss4j/dom/message/EncryptionCRLTest.java
@@ -135,12 +135,12 @@ public class EncryptionCRLTest {
         reqData.setEncryptionToken(actionToken);
         java.util.Map<String, Object> messageContext = new 
java.util.TreeMap<>();
         messageContext.put(WSHandlerConstants.PW_CALLBACK_REF, 
keystoreCallbackHandler);
+        messageContext.put(WSHandlerConstants.ENABLE_REVOCATION, "true");
         reqData.setMsgContext(messageContext);
         reqData.setUsername("wss40rev");
 
         final Document doc = SOAPUtil.toSOAPPart(SOAPUtil.SAMPLE_SOAP_MSG);
         CustomHandler handler = new CustomHandler();
-        handler.setOption(WSHandlerConstants.ENABLE_REVOCATION, "true");
         try {
             handler.send(
                 doc,
diff --git 
a/ws-security-stax/src/test/java/org/apache/wss4j/stax/test/AbstractTestBase.java
 
b/ws-security-stax/src/test/java/org/apache/wss4j/stax/test/AbstractTestBase.java
index b41ee0ca7..2f6e6b1f6 100644
--- 
a/ws-security-stax/src/test/java/org/apache/wss4j/stax/test/AbstractTestBase.java
+++ 
b/ws-security-stax/src/test/java/org/apache/wss4j/stax/test/AbstractTestBase.java
@@ -390,7 +390,7 @@ public abstract class AbstractTestBase {
             * For every action we need a username, so get this now. The 
username
             * defined in the deployment descriptor takes precedence.
             */
-            reqData.setUsername((String) getOption(WSHandlerConstants.USER));
+            reqData.setUsername((String) mc.get(WSHandlerConstants.USER));
             if (reqData.getUsername() == null || 
reqData.getUsername().isEmpty()) {
                 reqData.setUsername((String) mc.get(WSHandlerConstants.USER));
             }
@@ -586,11 +586,6 @@ public abstract class AbstractTestBase {
             return true;
         }
 
-        @Override
-        public Object getOption(String key) {
-            return null;
-        }
-
     }
 
     protected class TestSecurityEventListener implements SecurityEventListener 
{

Reply via email to