[java-shib-profile] branch main updated: IDP-1806 - Trailing Blank in property yields inconsistent error

Scott Cantor cantor.2 at osu.edu
Thu Jun 15 18:03:16 UTC 2023


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

scantor pushed a commit to branch main
in repository java-shib-profile.

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

The following commit(s) were added to refs/heads/main by this push:
     new 0cde5c9  IDP-1806 - Trailing Blank in property yields inconsistent error
0cde5c9 is described below

commit 0cde5c9cbcee80b4da3cdeaf79f8ecc685f1c950
Author: Scott Cantor <cantor.2 at osu.edu>
AuthorDate: Thu Jun 15 14:03:13 2023 -0400

    IDP-1806 - Trailing Blank in property yields inconsistent error
    
    https://shibboleth.atlassian.net/browse/IDP-1806
    
    Convert scripted function/predicate classes to our Resource.
---
 .../profile/context/logic/ScriptedPredicate.java   | 20 ++++++--------
 .../navigate/ScriptedContextLookupFunction.java    | 31 +++++++++-------------
 2 files changed, 21 insertions(+), 30 deletions(-)

diff --git a/shib-profile-api/src/main/java/net/shibboleth/profile/context/logic/ScriptedPredicate.java b/shib-profile-api/src/main/java/net/shibboleth/profile/context/logic/ScriptedPredicate.java
index 4ba6672..fbd4ba5 100644
--- a/shib-profile-api/src/main/java/net/shibboleth/profile/context/logic/ScriptedPredicate.java
+++ b/shib-profile-api/src/main/java/net/shibboleth/profile/context/logic/ScriptedPredicate.java
@@ -17,9 +17,7 @@
 
 package net.shibboleth.profile.context.logic;
 
-
 import java.io.IOException;
-import java.io.InputStream;
 
 import javax.annotation.Nonnull;
 import javax.annotation.Nullable;
@@ -27,10 +25,10 @@ import javax.script.ScriptContext;
 import javax.script.ScriptException;
 
 import org.opensaml.profile.context.ProfileRequestContext;
-import org.springframework.core.io.Resource;
 
 import net.shibboleth.shared.annotation.ParameterName;
 import net.shibboleth.shared.annotation.constraint.NotEmpty;
+import net.shibboleth.shared.resource.Resource;
 import net.shibboleth.shared.scripting.EvaluableScript;
 
 /**
@@ -45,7 +43,7 @@ public class ScriptedPredicate
      * @param theScript the script we will evaluate.
      * @param extraInfo debugging information.
      */
-    public ScriptedPredicate(@Nonnull @NotEmpty @ParameterName(name="theScript") final EvaluableScript theScript,
+    protected ScriptedPredicate(@Nonnull @NotEmpty @ParameterName(name="theScript") final EvaluableScript theScript,
             @Nullable @NotEmpty @ParameterName(name="extraInfo") final String extraInfo) {
         super(theScript, extraInfo);
         setInputType(ProfileRequestContext.class);
@@ -56,7 +54,7 @@ public class ScriptedPredicate
      * 
      * @param theScript the script we will evaluate.
      */
-    public ScriptedPredicate(@Nonnull @NotEmpty @ParameterName(name="theScript") final EvaluableScript theScript) {
+    protected ScriptedPredicate(@Nonnull @NotEmpty @ParameterName(name="theScript") final EvaluableScript theScript) {
         super(theScript);
         setInputType(ProfileRequestContext.class);
     }
@@ -79,13 +77,11 @@ public class ScriptedPredicate
      */
     @Nonnull public static ScriptedPredicate resourceScript(@Nonnull @NotEmpty final String engineName,
             @Nonnull final Resource resource) throws ScriptException, IOException {
-        try (final InputStream is = resource.getInputStream()) {
-            final EvaluableScript script = new EvaluableScript();
-            script.setEngineName(engineName);
-            script.setScript(is);
-            script.initializeWithScriptException();
-            return new ScriptedPredicate(script, resource.getDescription());
-        }
+        final EvaluableScript script = new EvaluableScript();
+        script.setEngineName(engineName);
+        script.setScript(resource);
+        script.initializeWithScriptException();
+        return new ScriptedPredicate(script, resource.getDescription());
     }
 
     /**
diff --git a/shib-profile-api/src/main/java/net/shibboleth/profile/context/navigate/ScriptedContextLookupFunction.java b/shib-profile-api/src/main/java/net/shibboleth/profile/context/navigate/ScriptedContextLookupFunction.java
index 3e7ad07..8b86f3d 100644
--- a/shib-profile-api/src/main/java/net/shibboleth/profile/context/navigate/ScriptedContextLookupFunction.java
+++ b/shib-profile-api/src/main/java/net/shibboleth/profile/context/navigate/ScriptedContextLookupFunction.java
@@ -18,7 +18,6 @@
 package net.shibboleth.profile.context.navigate;
 
 import java.io.IOException;
-import java.io.InputStream;
 
 import javax.annotation.Nonnull;
 import javax.annotation.Nullable;
@@ -27,6 +26,7 @@ import javax.script.ScriptException;
 
 import net.shibboleth.shared.annotation.constraint.NotEmpty;
 import net.shibboleth.shared.logic.Constraint;
+import net.shibboleth.shared.resource.Resource;
 import net.shibboleth.shared.scripting.AbstractScriptEvaluator;
 import net.shibboleth.shared.scripting.EvaluableScript;
 
@@ -34,7 +34,6 @@ import org.opensaml.messaging.context.BaseContext;
 import org.opensaml.messaging.context.MessageContext;
 import org.opensaml.messaging.context.navigate.ContextDataLookupFunction;
 import org.opensaml.profile.context.ProfileRequestContext;
-import org.springframework.core.io.Resource;
 
 /**
  * A {@link java.util.function.Function} over a {@link BaseContext}
@@ -146,14 +145,12 @@ public class ScriptedContextLookupFunction<T extends BaseContext> extends Abstra
     public static ScriptedContextLookupFunction<ProfileRequestContext> resourceScript(
             @Nonnull @NotEmpty final String engineName, @Nonnull final Resource resource,
             @Nullable final Class<?> outputType) throws ScriptException, IOException {
-        try (InputStream is = resource.getInputStream()) {
-            final EvaluableScript script = new EvaluableScript();
-            script.setEngineName(engineName);
-            script.setScript(is);
-            script.initializeWithScriptException();
-            return new ScriptedContextLookupFunction<>(ProfileRequestContext.class, script, resource.getDescription(),
-                outputType);
-        }
+        final EvaluableScript script = new EvaluableScript();
+        script.setEngineName(engineName);
+        script.setScript(resource);
+        script.initializeWithScriptException();
+        return new ScriptedContextLookupFunction<>(ProfileRequestContext.class, script, resource.getDescription(),
+            outputType);
     }
 
     /**
@@ -282,14 +279,12 @@ public class ScriptedContextLookupFunction<T extends BaseContext> extends Abstra
     public static ScriptedContextLookupFunction<MessageContext> resourceMessageContextScript(
             @Nonnull @NotEmpty final String engineName, @Nonnull final Resource resource,
             @Nullable final Class<?> outputType) throws ScriptException, IOException {
-        try (InputStream is = resource.getInputStream()) {
-            final EvaluableScript script = new EvaluableScript();
-            script.setEngineName(engineName);
-            script.setScript(is);
-            script.initializeWithScriptException();
-            return new ScriptedContextLookupFunction<>(MessageContext.class, script, resource.getDescription(),
-                    outputType);
-        }
+        final EvaluableScript script = new EvaluableScript();
+        script.setEngineName(engineName);
+        script.setScript(resource);
+        script.initializeWithScriptException();
+        return new ScriptedContextLookupFunction<>(MessageContext.class, script, resource.getDescription(),
+                outputType);
     }
 
     /**

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


More information about the commits mailing list