[java-idp-plugin-vci] branch dev/PROOF updated: VCI specific nonnce generator lookup

Codeberg noreply at shibboleth.net
Thu Apr 9 12:09:13 UTC 2026


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

codeberg pushed a commit to branch dev/PROOF
in repository java-idp-plugin-vci.

View the commit online:
https://codeberg.org/Shibboleth/java-idp-plugin-vci/commit/f6d53141316bf36733dfbe38b3f3c7fab1e071c1

The following commit(s) were added to refs/heads/dev/PROOF by this push:
     new f6d5314  VCI specific nonnce generator lookup
f6d5314 is described below

commit f6d53141316bf36733dfbe38b3f3c7fab1e071c1
Author: Janne Lauros <janne.lauros at csc.fi>
AuthorDate: Thu Apr 9 15:08:52 2026 +0300

    VCI specific nonnce generator lookup
---
 .../ProofNonceGeneratorLookupFunction.java         | 57 ++++++++++++++++++++++
 1 file changed, 57 insertions(+)

diff --git a/openid-vci-impl/src/main/java/org/geant/shibboleth/plugin/openidvci/config/navigate/ProofNonceGeneratorLookupFunction.java b/openid-vci-impl/src/main/java/org/geant/shibboleth/plugin/openidvci/config/navigate/ProofNonceGeneratorLookupFunction.java
new file mode 100644
index 0000000..7512244
--- /dev/null
+++ b/openid-vci-impl/src/main/java/org/geant/shibboleth/plugin/openidvci/config/navigate/ProofNonceGeneratorLookupFunction.java
@@ -0,0 +1,57 @@
+/*
+ * Copyright (c) 2025, GÉANT
+ *
+ * Licensed under the Apache License, Version 2.0 (the “License”); you may not
+ * use this file except in compliance with the License. You may obtain a copy
+ * of the License at
+ *
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an “AS IS” BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.geant.shibboleth.plugin.openidvci.config.navigate;
+
+import java.util.function.Function;
+
+import javax.annotation.Nullable;
+
+import org.geant.shibboleth.plugin.openidvci.config.OpenIDVCIConfiguration;
+import org.opensaml.profile.context.ProfileRequestContext;
+
+import net.shibboleth.profile.config.ProfileConfiguration;
+import net.shibboleth.profile.context.RelyingPartyContext;
+import net.shibboleth.profile.context.navigate.AbstractRelyingPartyLookupFunction;
+
+/**
+ * A function that obtains
+ * {@link OpenIDVCIConfiguration#getProofNonceGenerator(ProfileRequestContext)}
+ * if such a profile is available from a {@link RelyingPartyContext} obtained
+ * via a lookup function, by default a child of the
+ * {@link ProfileRequestContext}. The value is returned as a single-valued list.
+ * 
+ * <p>
+ * If a specific setting is unavailable, an empty list value is returned.
+ * </p>
+ */
+public class ProofNonceGeneratorLookupFunction
+        extends AbstractRelyingPartyLookupFunction<Function<ProfileRequestContext, String>> {
+
+    /** {@inheritDoc} */
+    @Override
+    @Nullable
+    public Function<ProfileRequestContext, String> apply(@Nullable final ProfileRequestContext input) {
+        final RelyingPartyContext rpc = getRelyingPartyContextLookupStrategy().apply(input);
+        if (rpc != null) {
+            final ProfileConfiguration pc = rpc.getProfileConfig();
+            if (pc instanceof OpenIDVCIConfiguration vcipc) {
+                return vcipc.getProofNonceGenerator(input);
+            }
+        }
+        return null;
+    }
+}
\ No newline at end of file

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


More information about the commits mailing list