[java-shib-shared] branch main updated: IDP-2044 Scripted object constructors and initialization

Rod Widdowson rdw at steadingsoftware.com
Wed Jun 21 15:42:56 UTC 2023


This is an automated email from the git hooks/post-receive script.

rdw pushed a commit to branch main
in repository java-shib-shared.

View the commit online:
http://git.shibboleth.net/view/?p=java-shib-shared.git;a=commit;h=a953b7257c4ae9e18c3620c7be639e51583a3d5e

The following commit(s) were added to refs/heads/main by this push:
     new a953b725 IDP-2044 Scripted object constructors and initialization
a953b725 is described below

commit a953b7257c4ae9e18c3620c7be639e51583a3d5e
Author: Rod Widdowson <rdw at steadingsoftware.com>
AuthorDate: Wed Jun 21 15:58:10 2023 +0100

    IDP-2044 Scripted object constructors and initialization
    
    https://shibboleth.atlassian.net/browse/IDP-2044
    
    Remove the deprecated method (initializeWithScriptExcpetion)
    and just make the factory methods throw
    ComponentInitalizationException as well.  These are only used
    as beans and in tests.
---
 .../shared/logic/ScriptedBiConsumer.java           | 19 +++++++++-----
 .../shared/logic/ScriptedBiFunction.java           | 19 +++++++++-----
 .../shared/logic/ScriptedBiPredicate.java          | 19 +++++++++-----
 .../shibboleth/shared/logic/ScriptedConsumer.java  | 19 +++++++++-----
 .../shibboleth/shared/logic/ScriptedFunction.java  | 19 +++++++++-----
 .../shibboleth/shared/logic/ScriptedPredicate.java | 19 +++++++++-----
 .../shared/scripting/EvaluableScript.java          | 30 ----------------------
 .../net/shibboleth/shared/logic/ScriptedTest.java  | 12 +++++----
 8 files changed, 79 insertions(+), 77 deletions(-)

diff --git a/shib-support/src/main/java/net/shibboleth/shared/logic/ScriptedBiConsumer.java b/shib-support/src/main/java/net/shibboleth/shared/logic/ScriptedBiConsumer.java
index 77340043..30e25914 100644
--- a/shib-support/src/main/java/net/shibboleth/shared/logic/ScriptedBiConsumer.java
+++ b/shib-support/src/main/java/net/shibboleth/shared/logic/ScriptedBiConsumer.java
@@ -30,6 +30,7 @@ import javax.script.ScriptException;
 import net.shibboleth.shared.annotation.ParameterName;
 import net.shibboleth.shared.annotation.constraint.NotEmpty;
 import net.shibboleth.shared.collection.Pair;
+import net.shibboleth.shared.component.ComponentInitializationException;
 import net.shibboleth.shared.primitive.LoggerFactory;
 import net.shibboleth.shared.resource.Resource;
 import net.shibboleth.shared.scripting.AbstractScriptEvaluator;
@@ -137,14 +138,15 @@ public class ScriptedBiConsumer<T,U> extends AbstractScriptEvaluator implements
      * 
      * @throws ScriptException if the compile fails
      * @throws IOException if the file doesn't exist.
+     * @throws ComponentInitializationException if the scripting initialization fails
      */
     public static <T,U> ScriptedBiConsumer<T,U> resourceScript(@Nonnull @NotEmpty final String engineName,
-            @Nonnull final Resource resource) throws ScriptException, IOException {
+            @Nonnull final Resource resource) throws ScriptException, IOException, ComponentInitializationException {
         try (final InputStream is = resource.getInputStream()) {
             final EvaluableScript script = new EvaluableScript();
             script.setEngineName(engineName);
             script.setScript(is);
-            script.initializeWithScriptException();
+            script.initialize();
             return new ScriptedBiConsumer<>(script, resource.getDescription());
         }
     }
@@ -160,9 +162,10 @@ public class ScriptedBiConsumer<T,U> extends AbstractScriptEvaluator implements
      * 
      * @throws ScriptException if the compile fails
      * @throws IOException if the file doesn't exist.
+     * @throws ComponentInitializationException if the scripting initialization fails
      */
     public static <T,U> ScriptedBiConsumer<T,U> resourceScript(@Nonnull final Resource resource)
-            throws ScriptException, IOException {
+            throws ScriptException, IOException, ComponentInitializationException {
         return resourceScript(DEFAULT_ENGINE, resource);
     }
 
@@ -177,13 +180,14 @@ public class ScriptedBiConsumer<T,U> extends AbstractScriptEvaluator implements
      * @return the function
      * 
      * @throws ScriptException if the compile fails
+     * @throws ComponentInitializationException if the scripting initialization fails
      */
     public static <T,U> ScriptedBiConsumer<T,U> inlineScript(@Nonnull @NotEmpty final String engineName,
-            @Nonnull @NotEmpty final String scriptSource) throws ScriptException {
+            @Nonnull @NotEmpty final String scriptSource) throws ScriptException, ComponentInitializationException {
         final EvaluableScript script = new EvaluableScript();
         script.setEngineName(engineName);
         script.setScript(scriptSource);
-        script.initializeWithScriptException();
+        script.initialize();
         return new ScriptedBiConsumer<>(script, "Inline");
     }
 
@@ -197,12 +201,13 @@ public class ScriptedBiConsumer<T,U> extends AbstractScriptEvaluator implements
      * @return the function
      * 
      * @throws ScriptException if the compile fails
+     * @throws ComponentInitializationException  if the scripting goes weird
      */
     public static <T,U> ScriptedBiConsumer<T,U> inlineScript(@Nonnull @NotEmpty final String scriptSource)
-            throws ScriptException {
+            throws ScriptException, ComponentInitializationException {
         final EvaluableScript script = new EvaluableScript();
         script.setScript(scriptSource);
-        script.initializeWithScriptException();
+        script.initialize();
         return new ScriptedBiConsumer<>(script, "Inline");
     }
 }
\ No newline at end of file
diff --git a/shib-support/src/main/java/net/shibboleth/shared/logic/ScriptedBiFunction.java b/shib-support/src/main/java/net/shibboleth/shared/logic/ScriptedBiFunction.java
index fd154613..55e682f6 100644
--- a/shib-support/src/main/java/net/shibboleth/shared/logic/ScriptedBiFunction.java
+++ b/shib-support/src/main/java/net/shibboleth/shared/logic/ScriptedBiFunction.java
@@ -30,6 +30,7 @@ import javax.script.ScriptException;
 import net.shibboleth.shared.annotation.ParameterName;
 import net.shibboleth.shared.annotation.constraint.NotEmpty;
 import net.shibboleth.shared.collection.Pair;
+import net.shibboleth.shared.component.ComponentInitializationException;
 import net.shibboleth.shared.primitive.LoggerFactory;
 import net.shibboleth.shared.resource.Resource;
 import net.shibboleth.shared.scripting.AbstractScriptEvaluator;
@@ -158,14 +159,15 @@ public class ScriptedBiFunction<T,U,V> extends AbstractScriptEvaluator implement
      * 
      * @throws ScriptException if the compile fails
      * @throws IOException if the file doesn't exist.
+     * @throws ComponentInitializationException if the scripting initialization fails
      */
     public static <T,U,V> ScriptedBiFunction<T,U,V> resourceScript(@Nonnull @NotEmpty final String engineName,
-            @Nonnull final Resource resource) throws ScriptException, IOException {
+            @Nonnull final Resource resource) throws ScriptException, IOException, ComponentInitializationException {
         try (final InputStream is = resource.getInputStream()) {
             final EvaluableScript script = new EvaluableScript();
             script.setEngineName(engineName);
             script.setScript(is);
-            script.initializeWithScriptException();
+            script.initialize();
             return new ScriptedBiFunction<>(script, resource.getDescription());
         }
     }
@@ -182,9 +184,10 @@ public class ScriptedBiFunction<T,U,V> extends AbstractScriptEvaluator implement
      * 
      * @throws ScriptException if the compile fails
      * @throws IOException if the file doesn't exist.
+     * @throws ComponentInitializationException if the scripting initialization fails
      */
     public static <T,U,V> ScriptedBiFunction<T,U,V> resourceScript(@Nonnull final Resource resource)
-            throws ScriptException, IOException {
+            throws ScriptException, IOException, ComponentInitializationException {
         return resourceScript(DEFAULT_ENGINE, resource);
     }
 
@@ -200,13 +203,14 @@ public class ScriptedBiFunction<T,U,V> extends AbstractScriptEvaluator implement
      * @return the function
      * 
      * @throws ScriptException if the compile fails
+     * @throws ComponentInitializationException if the scripting initialization fails
      */
     public static <T,U,V> ScriptedBiFunction<T,U,V> inlineScript(@Nonnull @NotEmpty final String engineName,
-            @Nonnull @NotEmpty final String scriptSource) throws ScriptException {
+            @Nonnull @NotEmpty final String scriptSource) throws ScriptException, ComponentInitializationException {
         final EvaluableScript script = new EvaluableScript();
         script.setEngineName(engineName);
         script.setScript(scriptSource);
-        script.initializeWithScriptException();
+        script.initialize();
         return new ScriptedBiFunction<>(script, "Inline");
     }
 
@@ -221,12 +225,13 @@ public class ScriptedBiFunction<T,U,V> extends AbstractScriptEvaluator implement
      * @return the function
      * 
      * @throws ScriptException if the compile fails
+     * @throws ComponentInitializationException if the scripting initialization fails
      */
     public static <T,U,V> ScriptedBiFunction<T,U,V> inlineScript(@Nonnull @NotEmpty final String scriptSource)
-            throws ScriptException {
+            throws ScriptException, ComponentInitializationException {
         final EvaluableScript script = new EvaluableScript();
         script.setScript(scriptSource);
-        script.initializeWithScriptException();
+        script.initialize();
         return new ScriptedBiFunction<>(script, "Inline");
     }
 }
\ No newline at end of file
diff --git a/shib-support/src/main/java/net/shibboleth/shared/logic/ScriptedBiPredicate.java b/shib-support/src/main/java/net/shibboleth/shared/logic/ScriptedBiPredicate.java
index 07b3691f..0919cdc9 100644
--- a/shib-support/src/main/java/net/shibboleth/shared/logic/ScriptedBiPredicate.java
+++ b/shib-support/src/main/java/net/shibboleth/shared/logic/ScriptedBiPredicate.java
@@ -30,6 +30,7 @@ import javax.script.ScriptException;
 import net.shibboleth.shared.annotation.ParameterName;
 import net.shibboleth.shared.annotation.constraint.NotEmpty;
 import net.shibboleth.shared.collection.Pair;
+import net.shibboleth.shared.component.ComponentInitializationException;
 import net.shibboleth.shared.primitive.LoggerFactory;
 import net.shibboleth.shared.resource.Resource;
 import net.shibboleth.shared.scripting.AbstractScriptEvaluator;
@@ -166,14 +167,15 @@ public class ScriptedBiPredicate<T,U> extends AbstractScriptEvaluator implements
      * 
      * @throws ScriptException if the compile fails
      * @throws IOException if the file doesn't exist.
+     * @throws ComponentInitializationException if the scripting initialization fails
      */
     public static <T,U> ScriptedBiPredicate<T,U> resourceScript(@Nonnull @NotEmpty final String engineName,
-            @Nonnull final Resource resource) throws ScriptException, IOException {
+            @Nonnull final Resource resource) throws ScriptException, IOException, ComponentInitializationException {
         try (final InputStream is = resource.getInputStream()) {
             final EvaluableScript script = new EvaluableScript();
             script.setEngineName(engineName);
             script.setScript(is);
-            script.initializeWithScriptException();
+            script.initialize();
             return new ScriptedBiPredicate<>(script, resource.getDescription());
         }
     }
@@ -189,9 +191,10 @@ public class ScriptedBiPredicate<T,U> extends AbstractScriptEvaluator implements
      * 
      * @throws ScriptException if the compile fails
      * @throws IOException if the file doesn't exist.
+     * @throws ComponentInitializationException if the scripting initialization fails
      */
     public static <T,U> ScriptedBiPredicate<T,U> resourceScript(@Nonnull final Resource resource)
-            throws ScriptException, IOException {
+            throws ScriptException, IOException, ComponentInitializationException {
         return resourceScript(DEFAULT_ENGINE, resource);
     }
 
@@ -206,13 +209,14 @@ public class ScriptedBiPredicate<T,U> extends AbstractScriptEvaluator implements
      * @return the function
      * 
      * @throws ScriptException if the compile fails
+     * @throws ComponentInitializationException if the scripting initialization fails
      */
     public static <T,U> ScriptedBiPredicate<T,U> inlineScript(@Nonnull @NotEmpty final String engineName,
-            @Nonnull @NotEmpty final String scriptSource) throws ScriptException {
+            @Nonnull @NotEmpty final String scriptSource) throws ScriptException, ComponentInitializationException {
         final EvaluableScript script = new EvaluableScript();
         script.setEngineName(engineName);
         script.setScript(scriptSource);
-        script.initializeWithScriptException();
+        script.initialize();
         return new ScriptedBiPredicate<>(script, "Inline");
     }
 
@@ -226,12 +230,13 @@ public class ScriptedBiPredicate<T,U> extends AbstractScriptEvaluator implements
      * @return the function
      * 
      * @throws ScriptException if the compile fails
+     * @throws ComponentInitializationException if the scripting initialization fails
      */
     public static <T,U> ScriptedBiPredicate<T,U> inlineScript(@Nonnull @NotEmpty final String scriptSource)
-            throws ScriptException {
+            throws ScriptException, ComponentInitializationException {
         final EvaluableScript script = new EvaluableScript();
         script.setScript(scriptSource);
-        script.initializeWithScriptException();
+        script.initialize();
         return new ScriptedBiPredicate<>(script, "Inline");
     }
 }
\ No newline at end of file
diff --git a/shib-support/src/main/java/net/shibboleth/shared/logic/ScriptedConsumer.java b/shib-support/src/main/java/net/shibboleth/shared/logic/ScriptedConsumer.java
index 839f12b0..60f7ca18 100644
--- a/shib-support/src/main/java/net/shibboleth/shared/logic/ScriptedConsumer.java
+++ b/shib-support/src/main/java/net/shibboleth/shared/logic/ScriptedConsumer.java
@@ -29,6 +29,7 @@ import javax.script.ScriptException;
 
 import net.shibboleth.shared.annotation.ParameterName;
 import net.shibboleth.shared.annotation.constraint.NotEmpty;
+import net.shibboleth.shared.component.ComponentInitializationException;
 import net.shibboleth.shared.primitive.LoggerFactory;
 import net.shibboleth.shared.resource.Resource;
 import net.shibboleth.shared.scripting.AbstractScriptEvaluator;
@@ -118,14 +119,15 @@ public class ScriptedConsumer<T> extends AbstractScriptEvaluator implements Cons
      * 
      * @throws ScriptException if the compile fails
      * @throws IOException if the file doesn't exist.
+     * @throws ComponentInitializationException if the scripting initialization fails
      */
     public static <T> ScriptedConsumer<T> resourceScript(@Nonnull @NotEmpty final String engineName,
-            @Nonnull final Resource resource) throws ScriptException, IOException {
+            @Nonnull final Resource resource) throws ScriptException, IOException, ComponentInitializationException {
         try (final InputStream is = resource.getInputStream()) {
             final EvaluableScript script = new EvaluableScript();
             script.setEngineName(engineName);
             script.setScript(is);
-            script.initializeWithScriptException();
+            script.initialize();
             return new ScriptedConsumer<>(script, resource.getDescription());
         }
     }
@@ -140,9 +142,10 @@ public class ScriptedConsumer<T> extends AbstractScriptEvaluator implements Cons
      * 
      * @throws ScriptException if the compile fails
      * @throws IOException if the file doesn't exist.
+     * @throws ComponentInitializationException if the scripting initialization fails
      */
     public static <T> ScriptedConsumer<T> resourceScript(@Nonnull final Resource resource)
-            throws ScriptException, IOException {
+            throws ScriptException, IOException, ComponentInitializationException {
         return resourceScript(DEFAULT_ENGINE, resource);
     }
 
@@ -156,13 +159,14 @@ public class ScriptedConsumer<T> extends AbstractScriptEvaluator implements Cons
      * @return the function
      * 
      * @throws ScriptException if the compile fails
+     * @throws ComponentInitializationException if the scripting initialization fails
      */
     public static <T> ScriptedConsumer<T> inlineScript(@Nonnull @NotEmpty final String engineName,
-            @Nonnull @NotEmpty final String scriptSource) throws ScriptException {
+            @Nonnull @NotEmpty final String scriptSource) throws ScriptException, ComponentInitializationException {
         final EvaluableScript script = new EvaluableScript();
         script.setEngineName(engineName);
         script.setScript(scriptSource);
-        script.initializeWithScriptException();
+        script.initialize();
         return new ScriptedConsumer<>(script, "Inline");
     }
 
@@ -175,12 +179,13 @@ public class ScriptedConsumer<T> extends AbstractScriptEvaluator implements Cons
      * @return the function
      * 
      * @throws ScriptException if the compile fails
+     * @throws ComponentInitializationException if the scripting initialization fails
      */
     public static <T> ScriptedConsumer<T> inlineScript(@Nonnull @NotEmpty final String scriptSource)
-            throws ScriptException {
+            throws ScriptException, ComponentInitializationException {
         final EvaluableScript script = new EvaluableScript();
         script.setScript(scriptSource);
-        script.initializeWithScriptException();
+        script.initialize();
         return new ScriptedConsumer<>(script, "Inline");
     }
 }
\ No newline at end of file
diff --git a/shib-support/src/main/java/net/shibboleth/shared/logic/ScriptedFunction.java b/shib-support/src/main/java/net/shibboleth/shared/logic/ScriptedFunction.java
index 9ab4fc2e..165f83ac 100644
--- a/shib-support/src/main/java/net/shibboleth/shared/logic/ScriptedFunction.java
+++ b/shib-support/src/main/java/net/shibboleth/shared/logic/ScriptedFunction.java
@@ -29,6 +29,7 @@ import javax.script.ScriptException;
 
 import net.shibboleth.shared.annotation.ParameterName;
 import net.shibboleth.shared.annotation.constraint.NotEmpty;
+import net.shibboleth.shared.component.ComponentInitializationException;
 import net.shibboleth.shared.primitive.LoggerFactory;
 import net.shibboleth.shared.resource.Resource;
 import net.shibboleth.shared.scripting.AbstractScriptEvaluator;
@@ -140,14 +141,15 @@ public class ScriptedFunction<T, U> extends AbstractScriptEvaluator implements F
      * 
      * @throws ScriptException if the compile fails
      * @throws IOException if the file doesn't exist.
+     * @throws ComponentInitializationException if the scripting initialization fails
      */
     public static <T,U> ScriptedFunction<T,U> resourceScript(@Nonnull @NotEmpty final String engineName,
-            @Nonnull final Resource resource) throws ScriptException, IOException {
+            @Nonnull final Resource resource) throws ScriptException, IOException, ComponentInitializationException {
         try (final InputStream is = resource.getInputStream()) {
             final EvaluableScript script = new EvaluableScript();
             script.setEngineName(engineName);
             script.setScript(is);
-            script.initializeWithScriptException();
+            script.initialize();
             return new ScriptedFunction<>(script, resource.getDescription());
         }
     }
@@ -163,9 +165,10 @@ public class ScriptedFunction<T, U> extends AbstractScriptEvaluator implements F
      * 
      * @throws ScriptException if the compile fails
      * @throws IOException if the file doesn't exist.
+     * @throws ComponentInitializationException if the scripting initialization fails
      */
     public static <T,U> ScriptedFunction<T,U> resourceScript(@Nonnull final Resource resource)
-            throws ScriptException, IOException {
+            throws ScriptException, IOException, ComponentInitializationException {
         return resourceScript(DEFAULT_ENGINE, resource);
     }
 
@@ -180,13 +183,14 @@ public class ScriptedFunction<T, U> extends AbstractScriptEvaluator implements F
      * @return the function
      * 
      * @throws ScriptException if the compile fails
+     * @throws ComponentInitializationException if the scripting initialization fails
      */
     public static <T,U> ScriptedFunction<T,U> inlineScript(@Nonnull @NotEmpty final String engineName,
-            @Nonnull @NotEmpty final String scriptSource) throws ScriptException {
+            @Nonnull @NotEmpty final String scriptSource) throws ScriptException, ComponentInitializationException {
         final EvaluableScript script = new EvaluableScript();
         script.setEngineName(engineName);
         script.setScript(scriptSource);
-        script.initializeWithScriptException();
+        script.initialize();
         return new ScriptedFunction<>(script, "Inline");
     }
 
@@ -200,12 +204,13 @@ public class ScriptedFunction<T, U> extends AbstractScriptEvaluator implements F
      * @return the function
      * 
      * @throws ScriptException if the compile fails
+     * @throws ComponentInitializationException if the scripting initialization fails
      */
     public static <T,U> ScriptedFunction<T,U> inlineScript(@Nonnull @NotEmpty final String scriptSource)
-            throws ScriptException {
+            throws ScriptException, ComponentInitializationException {
         final EvaluableScript script = new EvaluableScript();
         script.setScript(scriptSource);
-        script.initializeWithScriptException();
+        script.initialize();
         return new ScriptedFunction<>(script, "Inline");
     }
 }
\ No newline at end of file
diff --git a/shib-support/src/main/java/net/shibboleth/shared/logic/ScriptedPredicate.java b/shib-support/src/main/java/net/shibboleth/shared/logic/ScriptedPredicate.java
index 86e70866..abdb6ca9 100644
--- a/shib-support/src/main/java/net/shibboleth/shared/logic/ScriptedPredicate.java
+++ b/shib-support/src/main/java/net/shibboleth/shared/logic/ScriptedPredicate.java
@@ -29,6 +29,7 @@ import javax.script.ScriptException;
 
 import net.shibboleth.shared.annotation.ParameterName;
 import net.shibboleth.shared.annotation.constraint.NotEmpty;
+import net.shibboleth.shared.component.ComponentInitializationException;
 import net.shibboleth.shared.primitive.LoggerFactory;
 import net.shibboleth.shared.resource.Resource;
 import net.shibboleth.shared.scripting.AbstractScriptEvaluator;
@@ -155,14 +156,15 @@ public class ScriptedPredicate<T> extends AbstractScriptEvaluator implements Pre
      * 
      * @throws ScriptException if the compile fails
      * @throws IOException if the file doesn't exist.
+     * @throws ComponentInitializationException if the scripting initialization fails
      */
     public static <T> ScriptedPredicate<T> resourceScript(@Nonnull @NotEmpty final String engineName,
-            @Nonnull final Resource resource) throws ScriptException, IOException {
+            @Nonnull final Resource resource) throws ScriptException, IOException, ComponentInitializationException {
         try (final InputStream is = resource.getInputStream()) {
             final EvaluableScript script = new EvaluableScript();
             script.setEngineName(engineName);
             script.setScript(is);
-            script.initializeWithScriptException();
+            script.initialize();
             return new ScriptedPredicate<>(script, resource.getDescription());
         }
     }
@@ -177,9 +179,10 @@ public class ScriptedPredicate<T> extends AbstractScriptEvaluator implements Pre
      * 
      * @throws ScriptException if the compile fails
      * @throws IOException if the file doesn't exist.
+     * @throws ComponentInitializationException if the scripting initialization fails
      */
     public static <T> ScriptedPredicate<T> resourceScript(@Nonnull final Resource resource)
-            throws ScriptException, IOException {
+            throws ScriptException, IOException, ComponentInitializationException {
         return resourceScript(DEFAULT_ENGINE, resource);
     }
 
@@ -193,13 +196,14 @@ public class ScriptedPredicate<T> extends AbstractScriptEvaluator implements Pre
      * @return the predicate
      * 
      * @throws ScriptException if the compile fails
+     * @throws ComponentInitializationException if the scripting initialization fails
      */
     public static <T> ScriptedPredicate<T> inlineScript(@Nonnull @NotEmpty final String engineName,
-            @Nonnull @NotEmpty final String scriptSource) throws ScriptException {
+            @Nonnull @NotEmpty final String scriptSource) throws ScriptException, ComponentInitializationException {
         final EvaluableScript script = new EvaluableScript();
         script.setEngineName(engineName);
         script.setScript(scriptSource);
-        script.initializeWithScriptException();
+        script.initialize();
         return new ScriptedPredicate<>(script, "Inline");
     }
 
@@ -212,13 +216,14 @@ public class ScriptedPredicate<T> extends AbstractScriptEvaluator implements Pre
      * @return the predicate
      * 
      * @throws ScriptException if the compile fails
+     * @throws ComponentInitializationException if the scripting initialization fails
      */
     public static <T> ScriptedPredicate<T> inlineScript(@Nonnull @NotEmpty final String scriptSource)
-            throws ScriptException {
+            throws ScriptException, ComponentInitializationException {
         final EvaluableScript script = new EvaluableScript();
         script.setEngineName(DEFAULT_ENGINE);
         script.setScript(scriptSource);
-        script.initializeWithScriptException();
+        script.initialize();
         return new ScriptedPredicate<>(script, "Inline");
     }
 
diff --git a/shib-support/src/main/java/net/shibboleth/shared/scripting/EvaluableScript.java b/shib-support/src/main/java/net/shibboleth/shared/scripting/EvaluableScript.java
index 112255a7..71dfdfb8 100644
--- a/shib-support/src/main/java/net/shibboleth/shared/scripting/EvaluableScript.java
+++ b/shib-support/src/main/java/net/shibboleth/shared/scripting/EvaluableScript.java
@@ -225,34 +225,4 @@ public final class EvaluableScript extends AbstractInitializableComponent {
             compiledScript = null;
         }
     }
-
-    /**
-     * Internal method to wrap {@link #initialize()}.  This allows backwards compatibility with
-     * respect to the exception handling.
-     * 
-     * We extract the cause from the Component Initialization and if it is a {@link ScriptException}
-     * throw that, otherwise we throw a new one which encapsulates the exception.
-     * 
-     * Deprecation note.  In most non-test cases the way to resolve this deprecation is to
-     * remove the method call (since most use is in bean generation and the initialize will be
-     * called).  In every other case the answer is to use {@link #initialize()} and change the callers
-     * signature. Or just remove the whole thing.
-     *
-     * @throws ScriptException if there is a compilation issue.
-     * @deprecated Remove in V9.0.0 
-     */
-    @Deprecated(forRemoval = true, since = "8.1.0")
-    public void initializeWithScriptException() throws ScriptException {
-
-        try {
-            initialize();
-        } catch (final ComponentInitializationException e) {
-            final Throwable cause = e.getCause();
-
-            if (cause != null && cause instanceof ScriptException) {
-                throw (ScriptException) cause;
-            }
-            throw new ScriptException(e);
-        }
-    }
 }
diff --git a/shib-support/src/test/java/net/shibboleth/shared/logic/ScriptedTest.java b/shib-support/src/test/java/net/shibboleth/shared/logic/ScriptedTest.java
index 4c0b1488..6fc90e4e 100644
--- a/shib-support/src/test/java/net/shibboleth/shared/logic/ScriptedTest.java
+++ b/shib-support/src/test/java/net/shibboleth/shared/logic/ScriptedTest.java
@@ -23,6 +23,8 @@ import javax.script.ScriptException;
 
 import org.testng.annotations.Test;
 
+import net.shibboleth.shared.component.ComponentInitializationException;
+
 /**
  * Tests for the {@link ScriptedFunction} and {@link ScriptedPredicate}.
  */
@@ -32,7 +34,7 @@ public class ScriptedTest {
     static final private String returnSelfString="input.toString()";
     static final private String returnCustom="custom";
 
-    @Test public void testPredicate() throws ScriptException {
+    @Test public void testPredicate() throws ScriptException, ComponentInitializationException {
 
         final ScriptedPredicate<Object> test = ScriptedPredicate.inlineScript(returnSelf);
 
@@ -43,7 +45,7 @@ public class ScriptedTest {
         Assert.assertTrue(test.test(Integer.valueOf(1)));
     }
 
-    @Test public void testPredicateCustom() throws ScriptException {
+    @Test public void testPredicateCustom() throws ScriptException, ComponentInitializationException {
 
         final ScriptedPredicate<Object> test = ScriptedPredicate.inlineScript(returnCustom);
 
@@ -57,7 +59,7 @@ public class ScriptedTest {
         Assert.assertTrue(test.test("false"));
     }
 
-    @Test public void testBadScriptPredicate() throws ScriptException {
+    @Test public void testBadScriptPredicate() throws ScriptException, ComponentInitializationException {
 
         final ScriptedPredicate<Object> test = ScriptedPredicate.inlineScript(returnSelfString);
 
@@ -77,7 +79,7 @@ public class ScriptedTest {
         }
     }
 
-    @Test public void testFunction() throws ScriptException {
+    @Test public void testFunction() throws ScriptException, ComponentInitializationException {
 
         final ScriptedFunction<Object,Object> test = ScriptedFunction.inlineScript(returnSelf);
 
@@ -92,7 +94,7 @@ public class ScriptedTest {
         Assert.assertEquals(test.apply(Integer.valueOf(1)), Boolean.TRUE);
     }
 
-    @Test public void testBadScriptFunction() throws ScriptException {
+    @Test public void testBadScriptFunction() throws ScriptException, ComponentInitializationException {
 
         final ScriptedFunction<Boolean,Boolean> test = ScriptedFunction.inlineScript(returnSelfString);
         test.setOutputType(Boolean.class);

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the commits mailing list