From 53906619a3c5d244dd82cd32efbf9848292db32d Mon Sep 17 00:00:00 2001
From: Valera V Harseko
* The decision should be made based on the value of the System Property "org.forgerock.http.TrustTransactionHeader";
* unfortunately, due to cyclic dependency issues, it's not possible to access the com.iplanet.am.util.SystemProperties
* from this module.
diff --git a/openam-audit/openam-audit-core/src/main/java/org/forgerock/openam/audit/AuditEventPublisher.java b/openam-audit/openam-audit-core/src/main/java/org/forgerock/openam/audit/AuditEventPublisher.java
index eb3b251c0d..549aa50837 100644
--- a/openam-audit/openam-audit-core/src/main/java/org/forgerock/openam/audit/AuditEventPublisher.java
+++ b/openam-audit/openam-audit-core/src/main/java/org/forgerock/openam/audit/AuditEventPublisher.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2015-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package org.forgerock.openam.audit;
@@ -26,7 +27,7 @@ public interface AuditEventPublisher {
/**
* Tries to publish the provided AuditEvent to the specified topic of the AuditService.
- *
* If an error occurs that prevents the AuditEvent from being published, then details regarding the error
* are recorded in the debug logs. However, only details relating to the error are logged; the debug logs
* are not treated as the fallback destination for audit information.
diff --git a/openam-audit/openam-audit-core/src/main/java/org/forgerock/openam/audit/configuration/AMAuditServiceConfiguration.java b/openam-audit/openam-audit-core/src/main/java/org/forgerock/openam/audit/configuration/AMAuditServiceConfiguration.java
index 74d8085cd3..fa6fbd15fd 100644
--- a/openam-audit/openam-audit-core/src/main/java/org/forgerock/openam/audit/configuration/AMAuditServiceConfiguration.java
+++ b/openam-audit/openam-audit-core/src/main/java/org/forgerock/openam/audit/configuration/AMAuditServiceConfiguration.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2015-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package org.forgerock.openam.audit.configuration;
@@ -25,7 +26,7 @@
* Audit service configuration specific to OpenAM. An instance of the current state can be retrieved from
* {@link AuditServiceConfigurationProvider}. The instance retrieved from {@link AuditServiceConfigurationProvider}
* will represent the current settings in the SMS.
- *
* Each of the Audit Services has its own configuration, which is stored with the Audit Service and can be retrieved
* in a thread-safe way via its own accessor methods -
* {@link AMAuditService#isAuditEnabled(String, org.forgerock.openam.audit.AuditConstants.EventName)}.
diff --git a/openam-authentication/openam-auth-application/src/main/java/com/sun/identity/authentication/modules/application/Application.java b/openam-authentication/openam-auth-application/src/main/java/com/sun/identity/authentication/modules/application/Application.java
index 03a65d24cd..80d342b105 100644
--- a/openam-authentication/openam-auth-application/src/main/java/com/sun/identity/authentication/modules/application/Application.java
+++ b/openam-authentication/openam-auth-application/src/main/java/com/sun/identity/authentication/modules/application/Application.java
@@ -25,7 +25,7 @@
* $Id: Application.java,v 1.9 2009/07/23 18:54:17 qcheng Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.authentication.modules.application;
@@ -69,16 +69,16 @@
*
*
* @return the HOTP username for this
*
* @return a string representation of this
*
* @param o Object to be compared for equality with this
*
*
* @return a hash code for this
*
* @param from The address that sends the SMS message
* @param to The address that the SMS message is sent
@@ -64,7 +64,6 @@ void sendSMSMessage(String from, String to, String subject,
/**
* Sends an email message to the mail with the code
- *
*
* @param from The address that sends the E-mail message
* @param to The address that the E-mail message is sent
diff --git a/openam-authentication/openam-auth-jdbc/src/main/java/com/sun/identity/authentication/modules/jdbc/ClearTextTransform.java b/openam-authentication/openam-auth-jdbc/src/main/java/com/sun/identity/authentication/modules/jdbc/ClearTextTransform.java
index 1682fc9ff1..6905e725e0 100755
--- a/openam-authentication/openam-auth-jdbc/src/main/java/com/sun/identity/authentication/modules/jdbc/ClearTextTransform.java
+++ b/openam-authentication/openam-auth-jdbc/src/main/java/com/sun/identity/authentication/modules/jdbc/ClearTextTransform.java
@@ -24,6 +24,7 @@
*
* $Id: ClearTextTransform.java,v 1.2 2008/06/25 05:41:57 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
@@ -46,8 +47,8 @@ public ClearTextTransform() {
*
* @param input Password before transform
* @return Password after transform in this case the same thing.
- * @throws AuthLoginException
- */
+ * @throws AuthLoginException if the input password is {@code null}
+ */
public String transform(String input) throws AuthLoginException {
if (input == null) {
throw new AuthLoginException(
diff --git a/openam-authentication/openam-auth-jdbc/src/main/java/com/sun/identity/authentication/modules/jdbc/JDBC.java b/openam-authentication/openam-auth-jdbc/src/main/java/com/sun/identity/authentication/modules/jdbc/JDBC.java
index 80938b31e2..387cd79069 100755
--- a/openam-authentication/openam-auth-jdbc/src/main/java/com/sun/identity/authentication/modules/jdbc/JDBC.java
+++ b/openam-authentication/openam-auth-jdbc/src/main/java/com/sun/identity/authentication/modules/jdbc/JDBC.java
@@ -26,6 +26,7 @@
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
* Portions Copyrighted 2012 Open Source Solution Technology Corporation
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package com.sun.identity.authentication.modules.jdbc;
@@ -116,9 +117,9 @@ public JDBC() {
/**
* Initializes parameters.
*
- * @param subject
- * @param sharedState
- * @param options
+ * @param subject the subject to be authenticated
+ * @param sharedState the state shared between authentication modules
+ * @param options the configuration options for this module
*/
public void init(Subject subject, Map sharedState, Map options) {
debug.message("in initialize...");
diff --git a/openam-authentication/openam-auth-jdbc/src/main/java/com/sun/identity/authentication/modules/jdbc/JDBCPasswordSyntaxTransform.java b/openam-authentication/openam-auth-jdbc/src/main/java/com/sun/identity/authentication/modules/jdbc/JDBCPasswordSyntaxTransform.java
index 2f30b57f30..6370e6f174 100755
--- a/openam-authentication/openam-auth-jdbc/src/main/java/com/sun/identity/authentication/modules/jdbc/JDBCPasswordSyntaxTransform.java
+++ b/openam-authentication/openam-auth-jdbc/src/main/java/com/sun/identity/authentication/modules/jdbc/JDBCPasswordSyntaxTransform.java
@@ -24,6 +24,7 @@
*
* $Id: JDBCPasswordSyntaxTransform.java,v 1.3 2008/06/25 05:41:57 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
@@ -43,7 +44,7 @@ public interface JDBCPasswordSyntaxTransform {
*
* @param input Password before transform
* @return Password after transform - in this case the same thing.
- * @throws AuthLoginException
+ * @throws AuthLoginException if the password cannot be transformed
*/
String transform(String input)
throws AuthLoginException;
diff --git a/openam-authentication/openam-auth-jdbc/src/main/java/com/sun/identity/authentication/modules/jdbc/MD5Transform.java b/openam-authentication/openam-auth-jdbc/src/main/java/com/sun/identity/authentication/modules/jdbc/MD5Transform.java
index 59eebc9fd8..5b21428a4c 100644
--- a/openam-authentication/openam-auth-jdbc/src/main/java/com/sun/identity/authentication/modules/jdbc/MD5Transform.java
+++ b/openam-authentication/openam-auth-jdbc/src/main/java/com/sun/identity/authentication/modules/jdbc/MD5Transform.java
@@ -1,3 +1,7 @@
+/*
+ * Portions Copyrighted 2026 3A Systems, LLC.
+ */
+
package com.sun.identity.authentication.modules.jdbc;
import java.security.MessageDigest;
@@ -20,8 +24,8 @@ public MD5Transform() {
*
* @param input Password before transform
* @return MD5 Password after transform in this case the same thing.
- * @throws AuthLoginException
- */
+ * @throws AuthLoginException if the input password is {@code null}
+ */
public String transform(String input) throws AuthLoginException {
if (input == null) {
throw new AuthLoginException(
diff --git a/openam-authentication/openam-auth-ldap/src/main/java/com/sun/identity/authentication/modules/ldap/LDAPCallbacks.java b/openam-authentication/openam-auth-ldap/src/main/java/com/sun/identity/authentication/modules/ldap/LDAPCallbacks.java
index b2a6eba184..c5159ff24d 100644
--- a/openam-authentication/openam-auth-ldap/src/main/java/com/sun/identity/authentication/modules/ldap/LDAPCallbacks.java
+++ b/openam-authentication/openam-auth-ldap/src/main/java/com/sun/identity/authentication/modules/ldap/LDAPCallbacks.java
@@ -28,6 +28,7 @@
/*
* Portions Copyrighted [2011] [ForgeRock AS]
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package com.sun.identity.authentication.modules.ldap;
@@ -68,7 +69,8 @@ public LDAPCallbacks(
* method of a
*
* @param from The address that sends the E-mail message
* @param to The address that the E-mail message is sent
diff --git a/openam-authentication/openam-auth-oauth2/src/main/java/org/forgerock/openam/authentication/modules/oauth2/EmailGateway.java b/openam-authentication/openam-auth-oauth2/src/main/java/org/forgerock/openam/authentication/modules/oauth2/EmailGateway.java
index b2d8df3c48..df5c9b0bfb 100644
--- a/openam-authentication/openam-auth-oauth2/src/main/java/org/forgerock/openam/authentication/modules/oauth2/EmailGateway.java
+++ b/openam-authentication/openam-auth-oauth2/src/main/java/org/forgerock/openam/authentication/modules/oauth2/EmailGateway.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2011 ForgeRock AS. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC.
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -30,7 +31,6 @@
public interface EmailGateway {
/**
* Sends an email message to the mail with the code
- *
*
* @param from The address that sends the E-mail message
* @param to The address that the E-mail message is sent
diff --git a/openam-authentication/openam-auth-oauth2/src/main/java/org/forgerock/openam/authentication/modules/oauth2/OAuth2PostAuthnPlugin.java b/openam-authentication/openam-auth-oauth2/src/main/java/org/forgerock/openam/authentication/modules/oauth2/OAuth2PostAuthnPlugin.java
index bd02c67adb..81c36625ce 100644
--- a/openam-authentication/openam-auth-oauth2/src/main/java/org/forgerock/openam/authentication/modules/oauth2/OAuth2PostAuthnPlugin.java
+++ b/openam-authentication/openam-auth-oauth2/src/main/java/org/forgerock/openam/authentication/modules/oauth2/OAuth2PostAuthnPlugin.java
@@ -20,7 +20,7 @@
* with the fields enclosed by brackets [] replaced by
* your own identifying information:
* "Portions Copyrighted [year] [name of copyright owner]"
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package org.forgerock.openam.authentication.modules.oauth2;
@@ -55,7 +55,7 @@ public class OAuth2PostAuthnPlugin implements AMPostAuthProcessInterface {
* @param request HttpServletRequest object
* @param response HttpServletResponse object
* @param ssoToken authenticated user's ssoToken
- * @exception Authentication Exception when there is an error
+ * @exception AuthenticationException when there is an error
*/
public void onLoginSuccess(Map requestParamsMap,
HttpServletRequest request,
diff --git a/openam-authentication/openam-auth-oidc/src/main/java/org/forgerock/openam/authentication/modules/oidc/JwtHandler.java b/openam-authentication/openam-auth-oidc/src/main/java/org/forgerock/openam/authentication/modules/oidc/JwtHandler.java
index 703e101006..46cac43240 100644
--- a/openam-authentication/openam-auth-oidc/src/main/java/org/forgerock/openam/authentication/modules/oidc/JwtHandler.java
+++ b/openam-authentication/openam-auth-oidc/src/main/java/org/forgerock/openam/authentication/modules/oidc/JwtHandler.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2014-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package org.forgerock.openam.authentication.modules.oidc;
@@ -64,7 +65,7 @@ public JwtHandler(JwtHandlerConfig config) {
*
* @param jwtValue The encoded JWT string.
* @return The validated JWT claims.
- * @throws AuthLoginException
+ * @throws AuthLoginException if the JWT fails validation
*/
public JwtClaimsSet validateJwt(String jwtValue) throws AuthLoginException {
final SignedJwt signedJwt = getSignedJwt(jwtValue);
@@ -140,7 +141,7 @@ public JwtClaimsSet validateJwt(String jwtValue) throws AuthLoginException {
/**
* Indicates whether the JWT token is issued by configured issuer, with parameterized substitution from the claims set.
- * Example: https://login.microsoftonline.com/{tid}/v2.0 shall have {tid} replaced with the iss claim's value.
+ * Example:
*
* @return the SecurID username for this
*
* @return a string representation of this
*
* @param o Object to be compared for equality with this
*
*
* @return a hash code for this
* if attrNames does only contain one value the ldap search filter will be
* (attrName=Value_of_the_corresponding_Attribute_from_SubjectDN)
* e.g. SubjectDN of issuer cert 'C=BE, CN=Citizen CA, serialNumber=201007'
* attrNames is 'CN', search filter used will be (CN=Citizen CA)
- *
* if attrNames does contain serveral values the ldap search filter value will be
* a comma separated list of name attribute values, the search attribute will be 'cn'
* (cn="attrNames[0]=Value_of_the_corresponding_Attribute_from_SubjectDN,
* attrNames[1]=Value_of_the_corresponding_Attribute_from_SubjectDN")
- *
* e.g. SubjectDN of issuer cert 'C=BE, CN=Citizen CA, serialNumber=201007'
* attrNames is {"CN","serialNumber"}, search filter used will be
* (cn=CN=Citizen CA,serialNumber=201007)
- *
* The order of the values of attrNames matter as they must match the value of the
* 'cn' attribute of a crlDistributionPoint entry in the directory server
*
- * @param ldapParam
- * @param cert
- * @param attrNames, attributes names from the subjectDN of the issuer cert
+ * @param ldapParam the LDAP certificate store parameters used to connect to the store
+ * @param cert the certificate whose issuer CRL should be retrieved
+ * @param attrNames the attribute names from the subjectDN of the issuer cert used to build the search filter
+ * @return the CRL retrieved for the certificate's issuer, or null if none was found
*/
public static X509CRL getCRL(AMLDAPCertStoreParameters ldapParam, X509Certificate cert, String... attrNames) {
X509CRL crl = null;
diff --git a/openam-certs/src/main/java/com/sun/identity/security/cert/AMCertPath.java b/openam-certs/src/main/java/com/sun/identity/security/cert/AMCertPath.java
index 46d87902df..d2f3a836c6 100644
--- a/openam-certs/src/main/java/com/sun/identity/security/cert/AMCertPath.java
+++ b/openam-certs/src/main/java/com/sun/identity/security/cert/AMCertPath.java
@@ -25,6 +25,7 @@
* $Id: AMCertPath.java,v 1.5 2009/07/16 00:02:24 beomsuk Exp $
*
* Portions Copyrighted 2010-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package com.sun.identity.security.cert;
@@ -107,9 +108,12 @@ public AMCertPath(Vector crls)
}
/**
- * It does cert path validation together with CRL check and ocsp checking
+ * It does cert path validation together with CRL check and ocsp checking
* if they are properly configured.
- * @param certs
+ * @param certs the certificate chain to validate, ordered from the target certificate to the trust anchor
+ * @param crlEnabled true if CRL-based revocation checking should be performed
+ * @param ocspEnabled true if OCSP-based revocation checking should be performed
+ * @return true if the certificate path is valid, false otherwise
**/
public boolean verify(X509Certificate[] certs, boolean crlEnabled,
boolean ocspEnabled) {
diff --git a/openam-certs/src/main/java/com/sun/identity/security/cert/AMCertStore.java b/openam-certs/src/main/java/com/sun/identity/security/cert/AMCertStore.java
index 53981aecbc..143d2bd7ef 100644
--- a/openam-certs/src/main/java/com/sun/identity/security/cert/AMCertStore.java
+++ b/openam-certs/src/main/java/com/sun/identity/security/cert/AMCertStore.java
@@ -25,6 +25,7 @@
* $Id: AMCertStore.java,v 1.5 2009/01/28 05:35:12 ww203982 Exp $
*
* Portions Copyrighted 2014-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package com.sun.identity.security.cert;
@@ -88,7 +89,7 @@ public class AMCertStore {
* Class AMCertStore is special cased Certificate store for LDAP.
* A AMCertStore instance has to have all the information for ldap.
*
- * @param param
+ * @param param the LDAP certificate store parameters used to configure this store
*/
public AMCertStore(AMLDAPCertStoreParameters param) {
storeParam = param;
@@ -193,9 +194,9 @@ SearchResultEntry getLdapEntry(Connection ldc, String... attributes) {
}
/**
- * Return matched certificate from ldap certificate store
+ * Return matched certificate from ldap certificate store
*
- * @param cert
+ * @param cert the certificate to match against the store
*/
public X509Certificate getCertificate (X509Certificate cert) {
X509Certificate c = getCertificate();
@@ -279,7 +280,7 @@ public X509Certificate getCertificate () {
/**
* Return value of certificate Issuer DN.
*
- * @param certificate
+ * @param certificate the certificate whose issuer DN is returned
* @return The Issuer's DN as String.
*/
public static String getIssuerDN(X509Certificate certificate) {
@@ -289,7 +290,7 @@ public static String getIssuerDN(X509Certificate certificate) {
/**
* Return value of certificate subject DN.
*
- * @param certificate
+ * @param certificate the certificate whose subject DN is returned
* @return The Subject's DN as String.
*/
public static String getSubjectDN(X509Certificate certificate) throws IOException {
@@ -297,10 +298,10 @@ public static String getSubjectDN(X509Certificate certificate) throws IOExceptio
}
/**
- * Return value of certificate subject DN
+ * Return value of certificate subject DN
*
- * @param attrName
- * @param attrValue
+ * @param attrName the attribute name to match in the search filter
+ * @param attrValue the attribute value to match in the search filter
* @return searchFilter
*/
public static String setSearchFilter(String attrName, String attrValue) {
@@ -317,15 +318,15 @@ public static String setSearchFilter(String attrName, String attrValue) {
}
/**
- * Return ldapParam object has all config params
+ * Return ldapParam object has all config params
*
- * @param serverHost
- * @param serverPort
- * @param principleUser
- * @param principlePasswd
- * @param startSearchLoc
- * @param uriParamsCRL
- * @param isSSL
+ * @param serverHost the LDAP server host name
+ * @param serverPort the LDAP server port
+ * @param principleUser the bind DN used to authenticate to the LDAP server
+ * @param principlePasswd the bind password used to authenticate to the LDAP server
+ * @param startSearchLoc the base DN at which to start the search
+ * @param uriParamsCRL the URI parameters used when retrieving CRLs
+ * @param isSSL true if the connection to the LDAP server should use SSL
*/
public static AMLDAPCertStoreParameters setLdapStoreParam(
String serverHost, int serverPort,
@@ -351,9 +352,9 @@ public static AMLDAPCertStoreParameters setLdapStoreParam(
/**
* Return Issuer Certificate if the ldap entry has one
*
- * @param ldapParam
- * @param cert
- * @param attrName
+ * @param ldapParam the LDAP certificate store parameters used to connect to the store
+ * @param cert the certificate whose issuer certificate is looked up
+ * @param attrName the attribute name used to match the issuer certificate
*/
public static X509Certificate getIssuerCertificate (
AMLDAPCertStoreParameters ldapParam,
@@ -370,9 +371,9 @@ public static X509Certificate getIssuerCertificate (
/**
* Return X509 Certificate if the ldap entry has the same one
*
- * @param ldapParam
- * @param cert
- * @param attrName
+ * @param ldapParam the LDAP certificate store parameters used to connect to the store
+ * @param cert the certificate to look up and compare against the store
+ * @param attrName the attribute name used to match the certificate
*/
public static X509Certificate getRegisteredCertificate (
AMLDAPCertStoreParameters ldapParam,
@@ -397,11 +398,11 @@ public static X509Certificate getRegisteredCertificate (
}
/**
- * Return X509 Certificate if the ldap entry has one
+ * Return X509 Certificate if the ldap entry has one
*
- * @param ldapParam
- * @param attrName
- * @param attrValue
+ * @param ldapParam the LDAP certificate store parameters used to connect to the store
+ * @param attrName the attribute name to match in the search filter
+ * @param attrValue the attribute value to match in the search filter
*/
public static X509Certificate getCertificate (
AMLDAPCertStoreParameters ldapParam,
@@ -433,9 +434,9 @@ public static X509Certificate getCertificate (
}
/**
- * Return true if it is self signed ROOT CA
+ * Return true if it is self signed ROOT CA
*
- * @param cert
+ * @param cert the certificate to test for being a self-signed root CA
*/
public static boolean isRootCA(X509Certificate cert) {
return CertUtils.getIssuerName(cert).equals(CertUtils.getSubjectName(cert));
diff --git a/openam-certs/src/main/java/com/sun/identity/security/cert/AMLDAPCertStoreParameters.java b/openam-certs/src/main/java/com/sun/identity/security/cert/AMLDAPCertStoreParameters.java
index 854e601ab9..3a87c78e4b 100644
--- a/openam-certs/src/main/java/com/sun/identity/security/cert/AMLDAPCertStoreParameters.java
+++ b/openam-certs/src/main/java/com/sun/identity/security/cert/AMLDAPCertStoreParameters.java
@@ -25,6 +25,7 @@
* $Id: AMLDAPCertStoreParameters.java,v 1.3 2009/01/28 05:35:12 ww203982 Exp $
*
* Portions Copyrighted 2013-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package com.sun.identity.security.cert;
@@ -45,8 +46,8 @@ public class AMLDAPCertStoreParameters {
private boolean doCRLupdate = true;
/**
- * @param server
- * @param port
+ * @param server the LDAP server host name
+ * @param port the LDAP server port
*/
public AMLDAPCertStoreParameters(String server, int port) {
serverName = server;
diff --git a/openam-cli/openam-cli-impl/src/main/java/com/sun/identity/cli/AttributeValues.java b/openam-cli/openam-cli-impl/src/main/java/com/sun/identity/cli/AttributeValues.java
index 32936d3297..1788414231 100644
--- a/openam-cli/openam-cli-impl/src/main/java/com/sun/identity/cli/AttributeValues.java
+++ b/openam-cli/openam-cli-impl/src/main/java/com/sun/identity/cli/AttributeValues.java
@@ -23,6 +23,7 @@
* "Portions Copyrighted [year] [name of copyright owner]"
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.cli;
@@ -243,7 +244,7 @@ public static List parseValues(String fileName)
* @param bAdd This method creates the debug file if does not exist; otherwise it
* starts appending to the existing debug file. When invoked for the first
diff --git a/openam-cli/openam-cli-impl/src/main/java/com/sun/identity/cli/SubCommand.java b/openam-cli/openam-cli-impl/src/main/java/com/sun/identity/cli/SubCommand.java
index 59e24c570b..19c0ca73fd 100644
--- a/openam-cli/openam-cli-impl/src/main/java/com/sun/identity/cli/SubCommand.java
+++ b/openam-cli/openam-cli-impl/src/main/java/com/sun/identity/cli/SubCommand.java
@@ -25,6 +25,7 @@
* $Id: SubCommand.java,v 1.11 2008/10/21 03:14:31 veiming Exp $
*
* Portions Copyrighted 2014-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.cli;
@@ -442,10 +443,10 @@ public String getShortOptionName(String name) {
}
/**
- * Returns
* Providing a wrapper around these methods allows for easy decoupling and unit testing.
*/
public class AuthContextLocalWrapper implements AuthenticationContext {
diff --git a/openam-core-rest/src/main/java/org/forgerock/openam/core/rest/dashboard/DashboardResource.java b/openam-core-rest/src/main/java/org/forgerock/openam/core/rest/dashboard/DashboardResource.java
index 465137a314..06acd56c2a 100644
--- a/openam-core-rest/src/main/java/org/forgerock/openam/core/rest/dashboard/DashboardResource.java
+++ b/openam-core-rest/src/main/java/org/forgerock/openam/core/rest/dashboard/DashboardResource.java
@@ -12,7 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2012-2016 ForgeRock AS.
- * Portions copyright 2025 3A Systems LLC.
+ * Portions copyright 2025-2026 3A Systems LLC.
*/
package org.forgerock.openam.core.rest.dashboard;
@@ -74,7 +74,8 @@ public DashboardResource(@Named("frRest") Debug debug) {
}
/**
- * {@inheritDoc}
+ * Reads dashboard information for the given resource identifier, which may be the dashboard
+ * definitions, the applications available to the user, or the applications assigned to the user.
*/
@Read(operationDescription = @Operation(
description = DASHBOARD_RESOURCE + READ_DESCRIPTION))
diff --git a/openam-core-rest/src/main/java/org/forgerock/openam/core/rest/devices/TwoFADevicesResource.java b/openam-core-rest/src/main/java/org/forgerock/openam/core/rest/devices/TwoFADevicesResource.java
index 2812ad2338..04b40a2940 100644
--- a/openam-core-rest/src/main/java/org/forgerock/openam/core/rest/devices/TwoFADevicesResource.java
+++ b/openam-core-rest/src/main/java/org/forgerock/openam/core/rest/devices/TwoFADevicesResource.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2015-2016 ForgeRock AS.
+* Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.core.rest.devices;
@@ -34,7 +35,7 @@
* A TwoFADevice must have the ability to skip the module, if desired by the user and
* the configuration of that server allows it.
*
- * @param
* Note that only query filter is supported, and only a filter of value {@code true} (i.e. all values).
* Sorting and paging are not supported.
- * {@inheritDoc}
*/
@Query(operationDescription = @Operation, type = QueryType.FILTER, queryableFields = "*")
public Promise
* Note:
*
*
+ *
*
+ *
*
*
*
* @return Returns one of the following possible values:
*
*
* @param listener
* listener object that will be removed or unregistered.
@@ -2046,7 +2046,7 @@ protected String getSearchFilter(int objectType, String searchTempName) {
/**
* Notifies ACI Change. This method will be called by the
- *
*
* @param dn
* the object that is modified
@@ -2208,7 +2207,6 @@ protected static void sendExpiryEvent(String sourceDN, int sourceType) {
* This method removes the entry corresponding to SSOTokenID supplied.
*
* @return Set of DN's for the given SSOTokenID or null if not present
- *
*
* @param ssoToken -
* a SSOToken
@@ -3348,7 +3346,6 @@ private String mapToString(Map map) {
/**
* Sends event notifications to all the listeners that correspond to a DN
* whose suffix which ends with affectedDN in the objImpListeners.
- *
*
* @param affectedDN -
* String which has been stripped to reflect the subtree of DN's
diff --git a/openam-core/src/main/java/com/iplanet/am/sdk/AMOrganization.java b/openam-core/src/main/java/com/iplanet/am/sdk/AMOrganization.java
index 61022f996b..b183d95bbd 100644
--- a/openam-core/src/main/java/com/iplanet/am/sdk/AMOrganization.java
+++ b/openam-core/src/main/java/com/iplanet/am/sdk/AMOrganization.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -888,8 +889,8 @@ public Set createAssignableDynamicGroups(Set assignableDynamicGroups)
* attribute-value pairs to be set
* @param serviceNameAndAttrs
* service name and attribute map where the map is like this:
- *
*
* @param dsEvent
*
*
* @param attrSet
* The attrSet to be verified
@@ -441,7 +441,6 @@ protected void verifyAttributes(AttrSet attrSet) throws AMException {
* existing list of attribute names and then fetches the attribute set from
* LDAP. The compliance attributes are verified for "inetuserstatus"
* attribute.
- *
*
* @param po a PersistentObject of the entry.
* @param attributeNames Array of attribute names.
diff --git a/openam-core/src/main/java/com/iplanet/am/sdk/ldap/DCTreeServicesImpl.java b/openam-core/src/main/java/com/iplanet/am/sdk/ldap/DCTreeServicesImpl.java
index 3e29aeb835..c30a121373 100644
--- a/openam-core/src/main/java/com/iplanet/am/sdk/ldap/DCTreeServicesImpl.java
+++ b/openam-core/src/main/java/com/iplanet/am/sdk/ldap/DCTreeServicesImpl.java
@@ -25,6 +25,7 @@
* $Id: DCTreeServicesImpl.java,v 1.5 2009/01/28 05:34:48 ww203982 Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.iplanet.am.sdk.ldap;
@@ -398,6 +399,7 @@ protected AttrSet getDomainAttributes(SSOToken token, String orgDN,
* @return
* the organization dn
* @throws AMException
+ * if an error occurs while resolving the organization DN
*/
public String getOrganizationDN(SSOToken token, String domainName)
throws AMException {
diff --git a/openam-core/src/main/java/com/iplanet/am/sdk/ldap/DirectoryServicesImpl.java b/openam-core/src/main/java/com/iplanet/am/sdk/ldap/DirectoryServicesImpl.java
index fa8107a9d8..5cba53eacb 100644
--- a/openam-core/src/main/java/com/iplanet/am/sdk/ldap/DirectoryServicesImpl.java
+++ b/openam-core/src/main/java/com/iplanet/am/sdk/ldap/DirectoryServicesImpl.java
@@ -25,6 +25,7 @@
* $Id: DirectoryServicesImpl.java,v 1.14 2009/11/20 23:52:51 ww203982 Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.iplanet.am.sdk.ldap;
@@ -1635,7 +1636,7 @@ private void processPostDeleteCallBacks(SSOToken token, String entryDN,
* @param objectType
* profile type
* @param recursive
- * if true, remove all sub entries & the object
+ * if true, remove all sub entries & the object
* @param softDelete
* Used to let pre/post callback plugins know that this delete is
* either a soft delete (marked for deletion) or a purge/hard
@@ -2612,10 +2613,15 @@ public String[] getGroupFilterAndScope(SSOToken token, String entryDN,
* Sets the filter for a dynamic group in the datastore.
*
* @param token
+ * the single sign-on token used to authorize the operation
* @param entryDN
+ * the DN of the dynamic group entry
* @param filter
+ * the search filter to set on the dynamic group
* @throws AMException
+ * if an error occurs while setting the group filter
* @throws SSOException
+ * if the single sign-on token is invalid or has expired
*/
public void setGroupFilter(SSOToken token, String entryDN, String filter)
throws AMException, SSOException {
@@ -3029,7 +3035,7 @@ private Set getServiceAttributesWithQualifier(SSOToken token,
}
/**
- * Create a COS Definition based on serviceID & attribute set & type. For
+ * Create a COS Definition based on serviceID & attribute set & type. For
* policy attribute, will set cosattribute to "override" For other
* attribute, will set cosattribute to "default"
*/
@@ -3364,6 +3370,7 @@ public String getSearchFilterFromTemplate(int objectType, String orgDN,
* objectclass based on the LDAP schema
*
* @param objectclass
+ * the object class whose attributes are returned
* @return the attributes for the objectclass
*/
public Set getAttributesForSchema(String objectclass) {
diff --git a/openam-core/src/main/java/com/iplanet/am/sdk/ldap/EmailNotificationHelper.java b/openam-core/src/main/java/com/iplanet/am/sdk/ldap/EmailNotificationHelper.java
index 2588c23e54..99ec2a875a 100644
--- a/openam-core/src/main/java/com/iplanet/am/sdk/ldap/EmailNotificationHelper.java
+++ b/openam-core/src/main/java/com/iplanet/am/sdk/ldap/EmailNotificationHelper.java
@@ -25,7 +25,7 @@
* $Id: EmailNotificationHelper.java,v 1.5 2009/01/28 05:34:48 ww203982 Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.iplanet.am.sdk.ldap;
@@ -56,7 +56,7 @@
/**
* This class has the functionality to send email notifications to the users
- * listed in the notification list for create, delete & modify
+ * listed in the notification list for create, delete & modify
*/
public class EmailNotificationHelper {
@@ -208,9 +208,9 @@ public boolean isPresentUserModifyNotificationList() {
}
/**
- * The proper setUser<>NotificationList method should be called before
- * calling this method.
- *
+ * The proper {@code setUser<>NotificationList} method should be called before
+ * calling this method.
+ *
* @param attributes
* the attributes of the user
*/
@@ -229,9 +229,9 @@ public void sendUserCreateNotification(Map attributes) {
}
/**
- * The proper setUser<>NotificationList method should be called before
+ * The proper {@code setUser<>NotificationList} method should be called before
* calling this method.
- *
+ *
* @param attributes
* the attributes of the user
*/
@@ -251,9 +251,9 @@ public void sendUserDeleteNotification(Map attributes) {
// TODO: Refactor this method.
/**
- * The proper setUser<>NotificationList method should be called before
+ * The proper {@code setUser<>NotificationList} method should be called before
* calling this method.
- *
+ *
* @param token
* a valid single sign on token
* @param attributes
diff --git a/openam-core/src/main/java/com/iplanet/am/sdk/ldap/EventManager.java b/openam-core/src/main/java/com/iplanet/am/sdk/ldap/EventManager.java
index 1b8f3343b1..b451d1dbb3 100644
--- a/openam-core/src/main/java/com/iplanet/am/sdk/ldap/EventManager.java
+++ b/openam-core/src/main/java/com/iplanet/am/sdk/ldap/EventManager.java
@@ -25,6 +25,7 @@
* $Id: EventManager.java,v 1.7 2009/01/28 05:34:48 ww203982 Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.iplanet.am.sdk.ldap;
@@ -53,7 +54,6 @@
* instantiated directly. It is only instantiated when an instance of
* AMCacheManager is created and since AMCacheManager class is a singleton it is
* guaranted to have only one instance of this class.
- *
*/
class EventManager {
protected static final int EVENT_SCOPE = SearchScope.WHOLE_SUBTREE.intValue();
diff --git a/openam-core/src/main/java/com/iplanet/am/sdk/remote/CachedRemoteServicesImpl.java b/openam-core/src/main/java/com/iplanet/am/sdk/remote/CachedRemoteServicesImpl.java
index 1d7bd34dbd..af0feb1988 100644
--- a/openam-core/src/main/java/com/iplanet/am/sdk/remote/CachedRemoteServicesImpl.java
+++ b/openam-core/src/main/java/com/iplanet/am/sdk/remote/CachedRemoteServicesImpl.java
@@ -25,7 +25,7 @@
* $Id: CachedRemoteServicesImpl.java,v 1.6 2009/11/20 23:52:52 ww203982 Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
- * Portions Copyrighted 2023 3A Systems LLC
+ * Portions Copyrighted 2023-2026 3A Systems LLC
*/
package com.iplanet.am.sdk.remote;
@@ -992,7 +992,7 @@ public void setAttributes(SSOToken token, String entryDN, int objectType,
* @param objectType
* profile type
* @param recursive
- * if true, remove all sub entries & the object
+ * if true, remove all sub entries & the object
* @param softDelete
* Used to let pre/post callback plugins know that this delete is
* either a soft delete (marked for deletion) or a purge/hard
diff --git a/openam-core/src/main/java/com/iplanet/am/sdk/remote/EventListener.java b/openam-core/src/main/java/com/iplanet/am/sdk/remote/EventListener.java
index 90474c1272..16815a438c 100644
--- a/openam-core/src/main/java/com/iplanet/am/sdk/remote/EventListener.java
+++ b/openam-core/src/main/java/com/iplanet/am/sdk/remote/EventListener.java
@@ -25,6 +25,7 @@
* $Id: EventListener.java,v 1.12 2008/06/27 20:56:23 arviranga Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.iplanet.am.sdk.remote;
@@ -98,7 +99,7 @@ public synchronized static EventListener getInstance() {
}
/**
- * Constructor for
*
*
* If multiple servers are running, each may have their own configuration file.
* The naming convention for such scenarios is
- *
* TODO -- Use a better mechanism for alive status. 10.1+.
*
* @param info server info instance
diff --git a/openam-core/src/main/java/com/iplanet/dpro/session/service/cluster/MultiServerClusterMonitor.java b/openam-core/src/main/java/com/iplanet/dpro/session/service/cluster/MultiServerClusterMonitor.java
index ccd1014016..e0180eba5a 100644
--- a/openam-core/src/main/java/com/iplanet/dpro/session/service/cluster/MultiServerClusterMonitor.java
+++ b/openam-core/src/main/java/com/iplanet/dpro/session/service/cluster/MultiServerClusterMonitor.java
@@ -25,7 +25,7 @@
* $Id: SessionService.java,v 1.37 2010/02/03 03:52:54 bina Exp $
*
* Portions Copyrighted 2010-2016 ForgeRock AS.
- * Portions Copyrighted 2023 3A Systems LLC.
+ * Portions Copyrighted 2023-2026 3A Systems LLC.
*/
package com.iplanet.dpro.session.service.cluster;
@@ -75,7 +75,7 @@ public class MultiServerClusterMonitor implements ClusterMonitor {
* @param sessionDebug The session debug instance.
* @param serviceConfig The configuration for the session service.
* @param serverConfig The configuration for the session server.
- * @throws Exception
+ * @throws Exception if the cluster monitor cannot be initialised
*/
public MultiServerClusterMonitor(
Debug sessionDebug,
diff --git a/openam-core/src/main/java/com/iplanet/dpro/session/share/SessionEncodeURL.java b/openam-core/src/main/java/com/iplanet/dpro/session/share/SessionEncodeURL.java
index d3fe14eed3..3dc93b3ed1 100644
--- a/openam-core/src/main/java/com/iplanet/dpro/session/share/SessionEncodeURL.java
+++ b/openam-core/src/main/java/com/iplanet/dpro/session/share/SessionEncodeURL.java
@@ -38,7 +38,7 @@
import jakarta.servlet.http.HttpServletRequest;
/**
- *
@@ -49,7 +49,7 @@
*
* If the encoding scheme is SLASH then the cookie value would be
* written in the URL as extra path info in the following format:
- *
* Note that this format works only if the path is a servlet, if a
@@ -61,7 +61,7 @@
*
* If the encoding scheme is SEMICOLON then the cookie value would be
* written in the URL as extra path info in the following format:
- *
* This is the default and OpenAM always encodes in this format
@@ -141,7 +141,6 @@ public SessionEncodeURL() {
* if encoding scheme is
*
* @param sidString Session ID.
* @param url the URL to be encoded.
diff --git a/openam-core/src/main/java/com/iplanet/dpro/session/share/SessionNotification.java b/openam-core/src/main/java/com/iplanet/dpro/session/share/SessionNotification.java
index d374720b7c..c31cc22b4f 100644
--- a/openam-core/src/main/java/com/iplanet/dpro/session/share/SessionNotification.java
+++ b/openam-core/src/main/java/com/iplanet/dpro/session/share/SessionNotification.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -35,8 +36,7 @@
* This
- *
* Client data is accessed for a particular client type. The underlying client
* data is stored in the profile service, but this interface should always used
* for accessing it (not by accessing the profile directly).
diff --git a/openam-core/src/main/java/com/iplanet/services/cdm/ClientsManager.java b/openam-core/src/main/java/com/iplanet/services/cdm/ClientsManager.java
index 02051a5200..b00696df70 100644
--- a/openam-core/src/main/java/com/iplanet/services/cdm/ClientsManager.java
+++ b/openam-core/src/main/java/com/iplanet/services/cdm/ClientsManager.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -36,7 +37,6 @@
/**
* Provides common access to client data.
*
- *
* Client data is accessed for a particular client type. The underlying client
* data is stored in the profile service, but this interface should always used
* for accessing it (not by accessing the profile directly).
diff --git a/openam-core/src/main/java/com/iplanet/services/cdm/DefaultClientTypesManager.java b/openam-core/src/main/java/com/iplanet/services/cdm/DefaultClientTypesManager.java
index 2e7c8d40bf..1a9f48ef58 100644
--- a/openam-core/src/main/java/com/iplanet/services/cdm/DefaultClientTypesManager.java
+++ b/openam-core/src/main/java/com/iplanet/services/cdm/DefaultClientTypesManager.java
@@ -25,6 +25,7 @@
* $Id: DefaultClientTypesManager.java,v 1.4 2008/09/04 16:16:34 dillidorai Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.iplanet.services.cdm;
@@ -240,7 +241,7 @@ private static String getDefaultClientTypeFromService()
}
/**
- * Get internal sso token, use admin DN & password
+ * Get internal sso token, use admin DN & password
*/
private static SSOToken getInternalToken() throws SSOException {
return ((SSOToken) AccessController.doPrivileged(AdminTokenAction
@@ -451,7 +452,7 @@ protected void loadMaps() {
}
/**
- * Add to the userAgentMap, clientTypeMap & ProfilesMap.
+ * Add to the userAgentMap, clientTypeMap & ProfilesMap.
*
* @return the created Client Object
*/
@@ -497,9 +498,9 @@ protected void removeFromClientMap(String ct, Client c) {
}
/**
- * Adds the client to its appropriate baseProfileMap & styleMap. Ex:
- * Nokia7110, with Nokia style & WML for its baseProfile, will go into
- * wmlProfilesMap under Nokia styles. (Used only for displaying Styles &
+ * Adds the client to its appropriate baseProfileMap & styleMap. Ex:
+ * Nokia7110, with Nokia style & WML for its baseProfile, will go into
+ * wmlProfilesMap under Nokia styles. (Used only for displaying Styles &
* Clients under Base in the console plug-in).
*
* Currently Aligo only supports 1 level of Style. Only the baseProfiles
@@ -610,7 +611,7 @@ private String getFirstString(Set set) {
}
/**
- * Create Client Object & add to all our indexes. Called only by addClient &
+ * Create Client Object & add to all our indexes. Called only by addClient &
* on clientChanged notification.
*/
protected Client addToIndexes(String ct, Map cMap) {
@@ -914,10 +915,10 @@ public void setDirty(String ct, Map data) {
/**
* AMClientDataListener method for client change notification
- *
- * @param clientType
- * @param dbType
- * @param opType
+ *
+ * @param clientType the client type that changed
+ * @param dbType the database type of the change
+ * @param opType the operation type of the change
*/
public void clientChanged(String clientType, int dbType, int opType) {
if (debug.messageEnabled()) {
@@ -975,7 +976,7 @@ public void clientChanged(String clientType, int dbType, int opType) {
* if the client has been flagged updated then remove flag else
* force the client data to be reloaded for the next request for
* this client type. We don't need to relaod the UA and clienttype
- * maps because the two minimal properties - clientType & UA cannot
+ * maps because the two minimal properties - clientType & UA cannot
* be modified.
*/
synchronized (updatedClients) {
@@ -1034,7 +1035,7 @@ public Set getStyles(String baseProfileName) {
* @param style
* A valid style name
*
- * @return A Map of all clientTypes belonging to baseProfile & style
+ * @return A Map of all clientTypes belonging to baseProfile & style
*/
public Map getClients(String baseProfileName, String style) {
Map cMap = null;
@@ -1069,10 +1070,10 @@ public int addClientExternal(SSOToken token, Map props)
/**
*
- * @param token
- * @param props
+ * @param token the single sign-on token authorizing the operation
+ * @param props the client properties to modify
* @return 0 if everything went fine
- * @throws AMClientCapException
+ * @throws AMClientCapException if the client capability data cannot be modified
*/
public int modifyClientExternal(SSOToken token, Map props)
throws AMClientCapException {
@@ -1111,10 +1112,10 @@ public int modifyClientExternal(SSOToken token, Map props)
/**
*
- * @param token
- * @param clientType
+ * @param token the single sign-on token authorizing the operation
+ * @param clientType the client type to remove
* @return 0 if everything went fine
- * @throws AMClientCapException
+ * @throws AMClientCapException if the client capability data cannot be removed
*/
public int removeClientExternal(SSOToken token, String clientType)
throws AMClientCapException {
@@ -1157,8 +1158,8 @@ protected void removeFromMaps(String clientType) {
/**
* Sets the styles and parent ids tree set for a client
- *
- * @param clientData
+ *
+ * @param clientData the client data map for which to set parent styles and ids
*/
protected void setParentStyles(Map clientData) {
if (clientData == null) {
diff --git a/openam-core/src/main/java/com/iplanet/services/cdm/G11NSettings.java b/openam-core/src/main/java/com/iplanet/services/cdm/G11NSettings.java
index 13ec670f17..fc6791e48f 100644
--- a/openam-core/src/main/java/com/iplanet/services/cdm/G11NSettings.java
+++ b/openam-core/src/main/java/com/iplanet/services/cdm/G11NSettings.java
@@ -25,6 +25,7 @@
* $Id: G11NSettings.java,v 1.8 2008/08/27 22:05:40 veiming Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.iplanet.services.cdm;
@@ -147,7 +148,7 @@ public List getCharsetForLocale(String loc) {
}
/**
- * @param mimeCharset
+ * @param mimeCharset the MIME charset name whose alias table is requested
* @return a Map which can provide equivalent charset names. Currently,
* OpenAM uses only Java name; however an application can be
* configured to have different names for platform level mapping etc.
@@ -157,7 +158,7 @@ public Map getCharsetAliasTable(String mimeCharset) {
}
/**
- * @param mimeCharset
+ * @param mimeCharset the MIME charset name to map to its Java charset name
* @return charset name used in Java. If there is no such mapping, same
* mimecharset is returned
*/
diff --git a/openam-core/src/main/java/com/iplanet/services/cdm/clientschema/AMClientCapData.java b/openam-core/src/main/java/com/iplanet/services/cdm/clientschema/AMClientCapData.java
index 8d9a75e956..18bd5f21aa 100644
--- a/openam-core/src/main/java/com/iplanet/services/cdm/clientschema/AMClientCapData.java
+++ b/openam-core/src/main/java/com/iplanet/services/cdm/clientschema/AMClientCapData.java
@@ -25,6 +25,7 @@
* $Id: AMClientCapData.java,v 1.7 2009/01/28 05:34:49 ww203982 Exp $
*
* Portions Copyrighted 2010-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.iplanet.services.cdm.clientschema;
@@ -279,7 +280,7 @@ private AMClientCapData(int dbType) throws Exception {
* the ServiceSchemaManager for the service 4. Get the ServiceSchema for the
* Global schema 5. Get the schema for the "internalData" schema. (temp
* var). 6. Get the schema for the "clientData" schema id. (overwrite 8). 7.
- * Get the ROOT_SUFFIX 8. Read config info & properties schema from
+ * Get the ROOT_SUFFIX 8. Read config info & properties schema from
* ServiceSchema 9. Add Listeners to EventService.
*/
private synchronized void init(String instanceRDN) throws Exception {
@@ -1090,7 +1091,7 @@ public String[] getClassifications() {
*
* @return Set of Maps. Each Map has the propertyNames for the Key and Value
* is Set of Property values. By default, the keys returned are
- * clientType, userAgent & parentID.
+ * clientType, userAgent & parentID.
*/
public Set getMinimalClientInfo() {
Set clients = new HashSet();
diff --git a/openam-core/src/main/java/com/iplanet/services/comm/client/PLLNotificationServlet.java b/openam-core/src/main/java/com/iplanet/services/comm/client/PLLNotificationServlet.java
index 5c1750275e..588a9227a2 100644
--- a/openam-core/src/main/java/com/iplanet/services/comm/client/PLLNotificationServlet.java
+++ b/openam-core/src/main/java/com/iplanet/services/comm/client/PLLNotificationServlet.java
@@ -48,7 +48,7 @@
* The
* The doPost() method gets the XML NotificationSet document from the
* HttpRequest object, then parses the XML documnent and reconstructs a
* NotificationSet object.
diff --git a/openam-core/src/main/java/com/iplanet/services/comm/server/PLLAuditor.java b/openam-core/src/main/java/com/iplanet/services/comm/server/PLLAuditor.java
index 2e41fe0457..ae7cbd8200 100644
--- a/openam-core/src/main/java/com/iplanet/services/comm/server/PLLAuditor.java
+++ b/openam-core/src/main/java/com/iplanet/services/comm/server/PLLAuditor.java
@@ -12,7 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2015-2016 ForgeRock AS.
- * Portions copyright 2025 3A Systems LLC.
+ * Portions copyright 2025-2026 3A Systems LLC.
*/
package com.iplanet.services.comm.server;
@@ -66,7 +66,7 @@ public class PLLAuditor {
* @param debug Debug instance.
* @param auditEventPublisher AuditEventPublisher to which publishing of events can be delegated.
* @param auditEventFactory AuditEventFactory for audit event builders.
- * @param httpServletRequest
+ * @param httpServletRequest the HTTP servlet request associated with the operation to be audited.
*/
public PLLAuditor(Debug debug, AuditEventPublisher auditEventPublisher, AuditEventFactory auditEventFactory,
HttpServletRequest httpServletRequest) {
@@ -79,8 +79,6 @@ public PLLAuditor(Debug debug, AuditEventPublisher auditEventPublisher, AuditEve
/**
* Publishes an audit event with details of the attempted CREST operation, if the 'access' topic is audited.
- *
- * @throws AuditException If an exception occurred that prevented the audit event from being published.
*/
public void auditAccessAttempt() {
if (auditEventPublisher.isAuditing(realm, ACCESS_TOPIC, EventName.AM_ACCESS_ATTEMPT)) {
@@ -102,7 +100,7 @@ public void auditAccessAttempt() {
/**
* Publishes an event with details of the successfully completed CREST operation, if the 'access' topic is audited.
- *
* Any exception that occurs while trying to publish the audit event will be
* captured in the debug logs but otherwise ignored.
*/
@@ -133,7 +131,7 @@ public void auditAccessSuccess() {
/**
* Publishes an event with details of the failed CREST operation, if the 'access' topic is audited.
- *
* Any exception that occurs while trying to publish the audit event will be
* captured in the debug logs but otherwise ignored.
*
@@ -145,7 +143,7 @@ public void auditAccessFailure(String message) {
/**
* Publishes an event with details of the failed CREST operation, if the 'access' topic is audited.
- *
* Any exception that occurs while trying to publish the audit event will be
* captured in the debug logs but otherwise ignored.
*
diff --git a/openam-core/src/main/java/com/iplanet/services/comm/server/PLLRequestServlet.java b/openam-core/src/main/java/com/iplanet/services/comm/server/PLLRequestServlet.java
index ab6bc48f3e..a9887392d2 100644
--- a/openam-core/src/main/java/com/iplanet/services/comm/server/PLLRequestServlet.java
+++ b/openam-core/src/main/java/com/iplanet/services/comm/server/PLLRequestServlet.java
@@ -55,7 +55,7 @@
* The
* The doPost() method gets the XML RequestSet document from the HttpRequest
* object, then parses the XML documnent and reconstructs a RequestSet object.
*
diff --git a/openam-core/src/main/java/com/iplanet/services/comm/server/RequestHandler.java b/openam-core/src/main/java/com/iplanet/services/comm/server/RequestHandler.java
index 3786616603..c953fe848d 100644
--- a/openam-core/src/main/java/com/iplanet/services/comm/server/RequestHandler.java
+++ b/openam-core/src/main/java/com/iplanet/services/comm/server/RequestHandler.java
@@ -25,7 +25,7 @@
* $Id: RequestHandler.java,v 1.2 2008/06/25 05:41:35 qcheng Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.iplanet.services.comm.server;
@@ -44,7 +44,7 @@
* The
* High level services and applications shall return Response objects filled
* with exception classes and exception messages if there is an exception during
* the request processing.
@@ -61,7 +61,7 @@ public interface RequestHandler {
* @param auditor
* Delegate for publication of 'access' audit events.
* @param requests
- * A Set
*
+ *
* If you are working with a binary value (not a string value), you need to bitwise OR (|) the
* modification type with
*
* @param attr the attribute (possibly with values) to modify
*/
diff --git a/openam-core/src/main/java/com/iplanet/services/ldap/ServerInstance.java b/openam-core/src/main/java/com/iplanet/services/ldap/ServerInstance.java
index cf49e4ce1e..789da5f7a5 100644
--- a/openam-core/src/main/java/com/iplanet/services/ldap/ServerInstance.java
+++ b/openam-core/src/main/java/com/iplanet/services/ldap/ServerInstance.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -32,7 +33,7 @@
package com.iplanet.services.ldap;
/**
- * The server instance object represents a tuple of may
be re-configured after construction.
+ * An ExecutorService that may be re-configured after construction.
*
* This interface is a work-around for the fact that ThreadPoolExecutor does not implement an interface for
* its configuration methods. As such, in order to re-configure a ThreadPoolExecutor after its construction
diff --git a/openam-audit/openam-audit-context/src/main/java/org/forgerock/openam/audit/context/TransactionIdConfiguration.java b/openam-audit/openam-audit-context/src/main/java/org/forgerock/openam/audit/context/TransactionIdConfiguration.java
index 326062d311..7a277ed769 100644
--- a/openam-audit/openam-audit-context/src/main/java/org/forgerock/openam/audit/context/TransactionIdConfiguration.java
+++ b/openam-audit/openam-audit-context/src/main/java/org/forgerock/openam/audit/context/TransactionIdConfiguration.java
@@ -12,12 +12,13 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package org.forgerock.openam.audit.context;
/**
* Responsible for deciding whether or not transaction ID received as HTTP header should be accepted.
- *
+ * Login.Token1 to specify secret.) For example:
*
- * "module=Application&IDToken0=UrlAccessAgent&IDToken1=secret"
+ * "module=Application&IDToken0=UrlAccessAgent&IDToken1=secret"
*
* OR
*
- * "module=Application&IDToken0=
* Old usage:
*
- * "module=Application&Login.Token0=UrlAccessAgent&Login.Token1=secret"
+ * "module=Application&Login.Token0=UrlAccessAgent&Login.Token1=secret"
*
*/
public class Application extends AMLoginModule {
diff --git a/openam-authentication/openam-auth-common/src/main/java/org/forgerock/openam/authentication/modules/common/JaspiAuthLoginModulePostAuthenticationPlugin.java b/openam-authentication/openam-auth-common/src/main/java/org/forgerock/openam/authentication/modules/common/JaspiAuthLoginModulePostAuthenticationPlugin.java
index 17955e1e4f..6d341d42cd 100644
--- a/openam-authentication/openam-auth-common/src/main/java/org/forgerock/openam/authentication/modules/common/JaspiAuthLoginModulePostAuthenticationPlugin.java
+++ b/openam-authentication/openam-auth-common/src/main/java/org/forgerock/openam/authentication/modules/common/JaspiAuthLoginModulePostAuthenticationPlugin.java
@@ -12,7 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2013-2016 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package org.forgerock.openam.authentication.modules.common;
@@ -68,7 +68,7 @@ protected abstract MapHOTPPrincipal.
- *
- *
*
* @return the HOTP username for this HOTPPrincipal
*/
@@ -48,8 +47,6 @@ public String getName() {
/**
* Returns a string representation of this HOTPPrincipal.
- *
- *
*
* @return a string representation of this HOTPPrincipal.
*/
@@ -62,8 +59,6 @@ public String toString() {
* for equality. Returns true if the given object is also a
* HOTPPrincipal and the two HOTPPrincipals
* have the same username.
- *
- *
*
* @param o Object to be compared for equality with this
* HOTPPrincipal.
@@ -92,8 +87,6 @@ public boolean equals(Object o) {
/**
* Returns a hash code for this HOTPPrincipal.
- *
- *
*
* @return a hash code for this HOTPPrincipal.
*/
diff --git a/openam-authentication/openam-auth-fr-oath/src/main/java/org/forgerock/openam/authentication/modules/fr/oath/TOTPAlgorithm.java b/openam-authentication/openam-auth-fr-oath/src/main/java/org/forgerock/openam/authentication/modules/fr/oath/TOTPAlgorithm.java
index 7b47d2cf0c..c9ce9182c6 100644
--- a/openam-authentication/openam-auth-fr-oath/src/main/java/org/forgerock/openam/authentication/modules/fr/oath/TOTPAlgorithm.java
+++ b/openam-authentication/openam-auth-fr-oath/src/main/java/org/forgerock/openam/authentication/modules/fr/oath/TOTPAlgorithm.java
@@ -10,6 +10,7 @@
*/
/**
* Portions Copyrighted 2012-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.authentication.modules.fr.oath;
@@ -86,7 +87,7 @@ private static byte[] hexStr2Bytes(String hex) {
* @param time a value that reflects a time
* @param returnDigits number of digits to return
* @return a numeric String in base 10 that includes
- * {@link truncationDigits} digits
+ * {@code truncationDigits} digits
*/
public static String generateTOTP(String key,
@@ -104,7 +105,7 @@ public static String generateTOTP(String key,
* @param time a value that reflects a time
* @param returnDigits number of digits to return
* @return a numeric String in base 10 that includes
- * {@link truncationDigits} digits
+ * {@code truncationDigits} digits
*/
public static String generateTOTP256(String key,
@@ -121,7 +122,7 @@ public static String generateTOTP256(String key,
* @param time a value that reflects a time
* @param returnDigits number of digits to return
* @return a numeric String in base 10 that includes
- * {@link truncationDigits} digits
+ * {@code truncationDigits} digits
*/
public static String generateTOTP512(String key,
@@ -140,7 +141,7 @@ public static String generateTOTP512(String key,
* @param returnDigits number of digits to return
* @param crypto the crypto function to use
* @return a numeric String in base 10 that includes
- * {@link truncationDigits} digits
+ * {@code truncationDigits} digits
*/
public static String generateTOTP(String key,
diff --git a/openam-authentication/openam-auth-hotp/src/main/java/com/sun/identity/authentication/modules/hotp/HOTPPrincipal.java b/openam-authentication/openam-auth-hotp/src/main/java/com/sun/identity/authentication/modules/hotp/HOTPPrincipal.java
index f39e6e8bb0..0b71c8f278 100644
--- a/openam-authentication/openam-auth-hotp/src/main/java/com/sun/identity/authentication/modules/hotp/HOTPPrincipal.java
+++ b/openam-authentication/openam-auth-hotp/src/main/java/com/sun/identity/authentication/modules/hotp/HOTPPrincipal.java
@@ -27,6 +27,7 @@
*/
/**
* Portions Copyrighted [2011] [ForgeRock AS]
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package com.sun.identity.authentication.modules.hotp;
@@ -53,7 +54,6 @@ public HOTPPrincipal(String name) {
/**
* Returns the HOTP username for this HOTPPrincipal.
*
- * HOTPPrincipal
*/
@@ -64,7 +64,6 @@ public String getName() {
/**
* Returns a string representation of this HOTPPrincipal.
*
- * HOTPPrincipal.
*/
@@ -78,7 +77,6 @@ public String toString() {
* HOTPPrincipal and the two HOTPPrincipals
* have the same username.
*
- * HOTPPrincipal.
@@ -109,7 +107,6 @@ public boolean equals(Object o) {
/**
* Returns a hash code for this HOTPPrincipal.
*
- * HOTPPrincipal.
*/
diff --git a/openam-authentication/openam-auth-hotp/src/main/java/com/sun/identity/authentication/modules/hotp/SMSGateway.java b/openam-authentication/openam-auth-hotp/src/main/java/com/sun/identity/authentication/modules/hotp/SMSGateway.java
index c06965a14f..950ce1b3cc 100644
--- a/openam-authentication/openam-auth-hotp/src/main/java/com/sun/identity/authentication/modules/hotp/SMSGateway.java
+++ b/openam-authentication/openam-auth-hotp/src/main/java/com/sun/identity/authentication/modules/hotp/SMSGateway.java
@@ -25,6 +25,7 @@
* $Id: SMSGateway.java,v 1.2 2009/06/03 20:46:51 veiming Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package com.sun.identity.authentication.modules.hotp;
@@ -48,7 +49,6 @@ public interface SMSGateway {
/**
* Sends a SMS message to the phone with the code
- * CallbackHandler to ask for user name and
* password to procees Login Page.
*
- * @throws LoginException
+ * @throws LoginException if no callback handler is available or the
+ * login callbacks cannot be presented to the user
*/
public void setLoginScreen() throws LoginException {
loginCallbacks();
@@ -79,9 +81,10 @@ public void setLoginScreen() throws LoginException {
* method of a CallbackHandler to ask for old, new and
* confirm passwords to procees change password screen.
*
- * @throws LoginException
+ * @throws LoginException if no callback handler is available or the
+ * change password callbacks cannot be presented to the user
*/
- public void setPwdExpiryScreen() throws LoginException {
+ public void setPwdExpiryScreen() throws LoginException {
chgPwdCallback();
}
@@ -90,9 +93,12 @@ public void setPwdExpiryScreen() throws LoginException {
* invokeCallback method of a CallbackHandler to
* display information messages, warning messages and error messages.
*
- * @param type
- * @param msg
- * @throws LoginException
+ * @param type the message type to display, one of the
+ * TextOutputCallback constants (information, warning
+ * or error)
+ * @param msg the message text to display to the user
+ * @throws LoginException if no callback handler is available or the
+ * message callback cannot be presented to the user
*/
public void sendMessage(int type, String msg) throws LoginException {
messageCallback(type,msg);
diff --git a/openam-authentication/openam-auth-membership/src/main/java/com/sun/identity/authentication/modules/membership/Membership.java b/openam-authentication/openam-auth-membership/src/main/java/com/sun/identity/authentication/modules/membership/Membership.java
index 04e872b356..2af089ef80 100644
--- a/openam-authentication/openam-auth-membership/src/main/java/com/sun/identity/authentication/modules/membership/Membership.java
+++ b/openam-authentication/openam-auth-membership/src/main/java/com/sun/identity/authentication/modules/membership/Membership.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2011-2012 ForgeRock Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC.
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -113,12 +114,12 @@ public void init(Subject subject, Map sharedState, Map options) {
* Return STATE_SUCCEED if the login is successful, return STATE_FAILED
* if the LoginModule should be ignored.
*
- * @param callbacks an array of Callback for this Login state
+ * @param callbacks an array of Callback for this Login state
* @param state order of state. State order starts with 1.
* @return int order of next state. Return STATE_SUCCEED if authentication
* is successful, return STATE_FAILED if the
* LoginModule should be ignored.
- * @throws AuthLoginException
+ * @throws AuthLoginException if an error occurs while processing the callbacks
*/
public int process(Callback[] callbacks, int state)
throws AuthLoginException {
diff --git a/openam-authentication/openam-auth-msisdn/src/main/java/com/sun/identity/authentication/modules/msisdn/MSISDN.java b/openam-authentication/openam-auth-msisdn/src/main/java/com/sun/identity/authentication/modules/msisdn/MSISDN.java
index 164c098051..ff6989642f 100644
--- a/openam-authentication/openam-auth-msisdn/src/main/java/com/sun/identity/authentication/modules/msisdn/MSISDN.java
+++ b/openam-authentication/openam-auth-msisdn/src/main/java/com/sun/identity/authentication/modules/msisdn/MSISDN.java
@@ -165,12 +165,12 @@ private void initAuthConfig() {
/**
* Validates the authentication credentials.
*
- * @param callbacks
- * @param state
+ * @param callbacks the callbacks presented to this module for the request
+ * @param state the current authentication state
* @return ISAuthConstants.LOGIN_SUCCEED on login success
- * @exception AuthLoginException
+ * @exception AuthLoginException if the credentials cannot be validated
*/
- public int process(Callback[] callbacks, int state)
+ public int process(Callback[] callbacks, int state)
throws AuthLoginException {
debug.message("MSISDN : in process ..");
if (errorMsgKey != null) {
diff --git a/openam-authentication/openam-auth-msisdn/src/main/java/com/sun/identity/authentication/modules/msisdn/MSISDNValidation.java b/openam-authentication/openam-auth-msisdn/src/main/java/com/sun/identity/authentication/modules/msisdn/MSISDNValidation.java
index b98f3bfa2b..e74ddc4ac1 100644
--- a/openam-authentication/openam-auth-msisdn/src/main/java/com/sun/identity/authentication/modules/msisdn/MSISDNValidation.java
+++ b/openam-authentication/openam-auth-msisdn/src/main/java/com/sun/identity/authentication/modules/msisdn/MSISDNValidation.java
@@ -182,11 +182,11 @@ private void initMSISDNConfig(Map options) throws AuthLoginException {
}
/**
- * Returns user ID which has sunIdentityMSISDNNumber matching
- * the msisdn number.
+ * Returns user ID which has sunIdentityMSISDNNumber matching
+ * the msisdn number.
*
* @param msisdnNumber to search.
- * @throws AuthLoginException
+ * @throws AuthLoginException if the MSISDN number is invalid or the user cannot be looked up
*/
protected String getUserId(String msisdnNumber) throws AuthLoginException {
String validatedUserID = null;
diff --git a/openam-authentication/openam-auth-oath/src/main/java/org/forgerock/openam/authentication/modules/oath/OATH.java b/openam-authentication/openam-auth-oath/src/main/java/org/forgerock/openam/authentication/modules/oath/OATH.java
index b601ec3744..53ce91a517 100644
--- a/openam-authentication/openam-auth-oath/src/main/java/org/forgerock/openam/authentication/modules/oath/OATH.java
+++ b/openam-authentication/openam-auth-oath/src/main/java/org/forgerock/openam/authentication/modules/oath/OATH.java
@@ -21,6 +21,7 @@
* your own identifying information:
*
* Portions Copyrighted 2014 Nomura Research Institute, Ltd
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.authentication.modules.oath;
@@ -155,9 +156,9 @@ public java.security.Principal getPrincipal() {
* settings, and the username from the previous authentication module in
* the chain.
*
- * @param subject
- * @param sharedState
- * @param options
+ * @param subject the subject to be authenticated
+ * @param sharedState the state shared with other configured authentication modules
+ * @param options the options configured for this authentication module
*/
@Override
public void init(Subject subject,
@@ -232,8 +233,8 @@ public void init(Subject subject,
* Processes the OTP input by the user. Checks the OTP for validity, and
* resynchronizes the server as needed.
*
- * @param callbacks
- * @param state
+ * @param callbacks the callbacks submitted for the current authentication state
+ * @param state the current authentication state
* @return -1 for success; 0 for failure
* @throws AuthLoginException upon any errors
*/
diff --git a/openam-authentication/openam-auth-oath/src/main/java/org/forgerock/openam/authentication/modules/oath/OATHPrincipal.java b/openam-authentication/openam-auth-oath/src/main/java/org/forgerock/openam/authentication/modules/oath/OATHPrincipal.java
index d50ad4c586..8af4846066 100644
--- a/openam-authentication/openam-auth-oath/src/main/java/org/forgerock/openam/authentication/modules/oath/OATHPrincipal.java
+++ b/openam-authentication/openam-auth-oath/src/main/java/org/forgerock/openam/authentication/modules/oath/OATHPrincipal.java
@@ -20,6 +20,7 @@
* with the fields enclosed by brackets [] replaced by
* your own identifying information:
* "Portions Copyrighted 2012 ForgeRock AS"
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.authentication.modules.oath;
@@ -45,8 +46,6 @@ public OATHPrincipal(String name) {
/**
* Returns the HOTP username for this HOTPPrincipal.
- *
- *
*
* @return the HOTP username for this HOTPPrincipal
*/
@@ -56,8 +55,6 @@ public String getName() {
/**
* Returns a string representation of this HOTPPrincipal.
- *
- *
*
* @return a string representation of this HOTPPrincipal.
*/
@@ -70,8 +67,6 @@ public String toString() {
* for equality. Returns true if the given object is also a
* HOTPPrincipal and the two HOTPPrincipals
* have the same username.
- *
- *
*
* @param o Object to be compared for equality with this
* HOTPPrincipal.
@@ -100,8 +95,6 @@ public boolean equals(Object o) {
/**
* Returns a hash code for this HOTPPrincipal.
- *
- *
*
* @return a hash code for this HOTPPrincipal.
*/
diff --git a/openam-authentication/openam-auth-oath/src/main/java/org/forgerock/openam/authentication/modules/oath/TOTPAlgorithm.java b/openam-authentication/openam-auth-oath/src/main/java/org/forgerock/openam/authentication/modules/oath/TOTPAlgorithm.java
index 1d1bac7e06..8ef30671ea 100644
--- a/openam-authentication/openam-auth-oath/src/main/java/org/forgerock/openam/authentication/modules/oath/TOTPAlgorithm.java
+++ b/openam-authentication/openam-auth-oath/src/main/java/org/forgerock/openam/authentication/modules/oath/TOTPAlgorithm.java
@@ -9,7 +9,7 @@
(http://trustee.ietf.org/license-info).
*
* Portions Copyrighted 2012-2015 ForgeRock AS.
- * Portions copyright 2025 3A Systems LLC.
+ * Portions copyright 2025-2026 3A Systems LLC.
*/
package org.forgerock.openam.authentication.modules.oath;
@@ -68,7 +68,7 @@ private static byte[] hmac_sha(String crypto, byte[] keyBytes, byte[] text) {
* @param time a value that reflects a time
* @param returnDigits number of digits to return
* @return a numeric String in base 10 that includes
- * {@link truncationDigits} digits
+ * {@code truncationDigits} digits
*/
public static String generateTOTP(byte[] key,
@@ -86,7 +86,7 @@ public static String generateTOTP(byte[] key,
* @param time a value that reflects a time
* @param returnDigits number of digits to return
* @return a numeric String in base 10 that includes
- * {@link truncationDigits} digits
+ * {@code truncationDigits} digits
*/
public static String generateTOTP256(byte[] key,
@@ -103,7 +103,7 @@ public static String generateTOTP256(byte[] key,
* @param time a value that reflects a time
* @param returnDigits number of digits to return
* @return a numeric String in base 10 that includes
- * {@link truncationDigits} digits
+ * {@code truncationDigits} digits
*/
public static String generateTOTP512(byte[] key,
@@ -122,7 +122,7 @@ public static String generateTOTP512(byte[] key,
* @param returnDigits number of digits to return
* @param crypto the crypto function to use
* @return a numeric String in base 10 that includes
- * {@link truncationDigits} digits
+ * {@code truncationDigits} digits
*/
public static String generateTOTP(byte[] key,
diff --git a/openam-authentication/openam-auth-oauth2/src/main/java/org/forgerock/openam/authentication/modules/oauth2/DefaultEmailGatewayImpl.java b/openam-authentication/openam-auth-oauth2/src/main/java/org/forgerock/openam/authentication/modules/oauth2/DefaultEmailGatewayImpl.java
index df37258eaa..46e6d12721 100644
--- a/openam-authentication/openam-auth-oauth2/src/main/java/org/forgerock/openam/authentication/modules/oauth2/DefaultEmailGatewayImpl.java
+++ b/openam-authentication/openam-auth-oauth2/src/main/java/org/forgerock/openam/authentication/modules/oauth2/DefaultEmailGatewayImpl.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2011 ForgeRock AS. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC.
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -53,7 +54,6 @@ public DefaultEmailGatewayImpl() {
/**
* Sends an email message to the mail with the code
- * https://login.microsoftonline.com/{tid}/v2.0 shall have {tid} replaced with the iss claim's value.
*
* @param jwtClaimSet The JWT claims.
* @return Whether the JWT token is issued by the configured issuer.
@@ -167,7 +168,7 @@ private boolean isJwtFromIssuerFormat(JwtClaimsSet jwtClaimSet) {
*
* @param jwtValue The encoded JWT string.
* @return The reconstructed JWT object.
- * @throws AuthLoginException
+ * @throws AuthLoginException if the JWT cannot be reconstructed from the encoded value
*/
private SignedJwt getSignedJwt(String jwtValue) throws AuthLoginException {
final SignedJwt signedJwt;
@@ -190,7 +191,7 @@ private SignedJwt getSignedJwt(String jwtValue) throws AuthLoginException {
* @param audienceName The audience name to check that the token is intended for.
* @param jwtClaims The parsed JWT claims.
* @return true if the token is intended for the specified audience, false if it is not.
- * @throws AuthLoginException
+ * @throws AuthLoginException if the token audience cannot be evaluated
*/
public static boolean isIntendedForAudience(String audienceName, JwtClaimsSet jwtClaims) throws AuthLoginException {
ListRADIUSPrincipal.
- *
- *
*
* @return the RADIUS username for this RADIUSPrincipal
*/
@@ -73,8 +72,6 @@ public String getName() {
/**
* Return a string representation of this RADIUSPrincipal.
- *
- *
*
* @return a string representation of this RADIUSPrincipal.
*/
@@ -85,8 +82,6 @@ public String toString() {
/**
* Compares the specified Object with this RADIUSPrincipal for equality. Returns true if the given
* object is also a RADIUSPrincipal and the two RADIUSPrincipals have the same username.
- *
- *
*
* @param o Object to be compared for equality with this RADIUSPrincipal.
* @return true if the specified Object is equal equal to this RADIUSPrincipal.
@@ -113,8 +108,6 @@ public boolean equals(Object o) {
/**
* Return a hash code for this RADIUSPrincipal.
- *
- *
*
* @return a hash code for this RADIUSPrincipal.
*/
diff --git a/openam-authentication/openam-auth-securid/src/main/java/com/sun/identity/authentication/modules/securid/SecurIDPrincipal.java b/openam-authentication/openam-auth-securid/src/main/java/com/sun/identity/authentication/modules/securid/SecurIDPrincipal.java
index 66f77fa066..69f05106e6 100644
--- a/openam-authentication/openam-auth-securid/src/main/java/com/sun/identity/authentication/modules/securid/SecurIDPrincipal.java
+++ b/openam-authentication/openam-auth-securid/src/main/java/com/sun/identity/authentication/modules/securid/SecurIDPrincipal.java
@@ -28,6 +28,7 @@
/*
* Portions Copyrighted [2011] [ForgeRock AS]
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package com.sun.identity.authentication.modules.securid;
@@ -54,7 +55,6 @@ public SecurIDPrincipal(String name) {
/**
* Return the SecurID username for this SecurIDPrincipal.
*
- * SecurIDPrincipal
*/
@@ -65,7 +65,6 @@ public String getName() {
/**
* Return a string representation of this SecurIDPrincipal.
*
- * SecurIDPrincipal.
*/
@@ -79,7 +78,6 @@ public String toString() {
* SecurIDPrincipal and the two SecurIDPrincipals
* have the same username.
*
- * SecurIDPrincipal.
@@ -106,7 +104,6 @@ public boolean equals(Object o) {
/**
* Return a hash code for this SecurIDPrincipal.
*
- * SecurIDPrincipal.
*/
diff --git a/openam-authentication/openam-auth-windowsdesktopsso/src/main/java/com/sun/identity/authentication/modules/windowsdesktopsso/WindowsDesktopSSO.java b/openam-authentication/openam-auth-windowsdesktopsso/src/main/java/com/sun/identity/authentication/modules/windowsdesktopsso/WindowsDesktopSSO.java
index d79a459b05..3629b282a4 100644
--- a/openam-authentication/openam-auth-windowsdesktopsso/src/main/java/com/sun/identity/authentication/modules/windowsdesktopsso/WindowsDesktopSSO.java
+++ b/openam-authentication/openam-auth-windowsdesktopsso/src/main/java/com/sun/identity/authentication/modules/windowsdesktopsso/WindowsDesktopSSO.java
@@ -25,7 +25,7 @@
* $Id: WindowsDesktopSSO.java,v 1.7 2009/07/28 19:40:45 beomsuk Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.authentication.modules.windowsdesktopsso;
@@ -128,11 +128,11 @@ public WindowsDesktopSSO() {
}
/**
- * Initialize parameters.
+ * Initialize parameters.
*
- * @param subject
- * @param sharedState
- * @param options
+ * @param subject the subject to be authenticated
+ * @param sharedState the state shared between authentication modules
+ * @param options the configuration options for this module
*/
public void init(Subject subject, Map sharedState, Map options) {
this.options = options;
@@ -154,8 +154,8 @@ public Principal getPrincipal() {
/**
* Processes the authentication request.
*
- * @param callbacks
- * @param state
+ * @param callbacks the callbacks presented to this module for the request
+ * @param state the current authentication state
* @return -1 as succeeded; 0 as failed.
* @exception AuthLoginException upon any failure.
*/
diff --git a/openam-authentication/openam-auth-windowsdesktopsso/src/main/java/com/sun/identity/authentication/modules/windowsdesktopsso/WindowsDesktopSSOConfig.java b/openam-authentication/openam-auth-windowsdesktopsso/src/main/java/com/sun/identity/authentication/modules/windowsdesktopsso/WindowsDesktopSSOConfig.java
index 1ad67cf24d..783230f9f6 100644
--- a/openam-authentication/openam-auth-windowsdesktopsso/src/main/java/com/sun/identity/authentication/modules/windowsdesktopsso/WindowsDesktopSSOConfig.java
+++ b/openam-authentication/openam-auth-windowsdesktopsso/src/main/java/com/sun/identity/authentication/modules/windowsdesktopsso/WindowsDesktopSSOConfig.java
@@ -24,6 +24,7 @@
*
* $Id: WindowsDesktopSSOConfig.java,v 1.3 2009/04/07 22:55:13 beomsuk Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
@@ -54,7 +55,7 @@ public class WindowsDesktopSSOConfig extends Configuration {
/**
* Constructor
*
- * @param config
+ * @param config the configuration this instance delegates to
*/
public WindowsDesktopSSOConfig(Configuration config) {
this.config = config;
@@ -63,7 +64,7 @@ public WindowsDesktopSSOConfig(Configuration config) {
/**
* Sets principal name.
*
- * @param principalName
+ * @param principalName the service principal name to set
*/
public void setPrincipalName(String principalName) {
servicePrincipal = principalName;
@@ -72,7 +73,7 @@ public void setPrincipalName(String principalName) {
/**
* Sets key tab file.
*
- * @param keytabFile
+ * @param keytabFile the keytab file path to set
*/
public void setKeyTab(String keytabFile) {
keytab = keytabFile;
@@ -89,7 +90,7 @@ public void setRefreshConfig(String refresh) {
* Returns AppConfigurationEntry array for the application appName
* using Kerberos module.
*
- * @param appName
+ * @param appName the application name to build the configuration entry for
* @return Array of AppConfigurationEntry
*/
public AppConfigurationEntry[] getAppConfigurationEntry(String appName){
diff --git a/openam-certs/src/main/java/com/sun/identity/security/cert/AMCRLStore.java b/openam-certs/src/main/java/com/sun/identity/security/cert/AMCRLStore.java
index 5fbade5521..f2bbcefbf0 100644
--- a/openam-certs/src/main/java/com/sun/identity/security/cert/AMCRLStore.java
+++ b/openam-certs/src/main/java/com/sun/identity/security/cert/AMCRLStore.java
@@ -25,7 +25,7 @@
* $Id: AMCRLStore.java,v 1.7 2009/01/28 05:35:12 ww203982 Exp $
*
* Portions Copyrighted 2013-2016 ForgeRock AS.
- * Portions Copyrighted 2023-2025 3A Systems, LLC.
+ * Portions Copyrighted 2023-2026 3A Systems, LLC.
*/
package com.sun.identity.security.cert;
@@ -125,7 +125,7 @@ public class AMCRLStore extends AMCertStore {
* and all the access information for CRLDistributionPointExtension and
* CRLIssuingDistributionPoint Extension
*
- * @param param
+ * @param param the LDAP certificate store parameters used to configure this CRL store
*/
public AMCRLStore(AMLDAPCertStoreParameters param) {
super(param);
@@ -134,7 +134,9 @@ public AMCRLStore(AMLDAPCertStoreParameters param) {
/**
* Checks certificate and returns corresponding stored CRL in ldap store
*
- * @param certificate
+ * @param certificate the certificate whose CRL should be retrieved
+ * @return the stored CRL for the certificate's issuer, or null if none was found
+ * @throws IOException if an error occurs while accessing the CRL store
*/
public X509CRL getCRL(X509Certificate certificate) throws IOException {
SearchResultEntry crlEntry = null;
@@ -227,7 +229,7 @@ public X509CRL getCRL(X509Certificate certificate) throws IOException {
/**
* Checks certificate and returns corresponding stored CRL in cached CRL store.
*
- * @param certificate
+ * @param certificate the certificate whose issuer is used to look up the cached CRL
* @return Cached CRL information about the certificate.
*/
public X509CRL getCRLFromCache(X509Certificate certificate) {
@@ -237,8 +239,8 @@ public X509CRL getCRLFromCache(X509Certificate certificate) {
/**
* Checks certificate and update CRL in cached CRL store.
*
- * @param certificate
- * @param crl
+ * @param certificate the certificate whose issuer identifies the cache entry
+ * @param crl the CRL to store in the cache, or null to remove the cached entry
*/
public void updateCRLCache(X509Certificate certificate, X509CRL crl) {
String issuer = CertUtils.getIssuerName(certificate);
@@ -711,27 +713,28 @@ private boolean needCRLUpdate(X509CRL crl) {
* (example : ldap://server:port/uid=ca,o=company.com)
* This dn entry has to have CRL in attribute certificaterevocationlist
* or certificaterevocationlist;binary.
- * true to add the values of map2
* map1. false to remove values of
* map2 from map1.
- * @return truemap1 is altered.
+ * @return {@code true} if {@code map1} is altered.
*/
public static boolean mergeAttributeValues(
Map map1,
@@ -282,7 +283,7 @@ public static boolean mergeAttributeValues(
* @param bAdd true to add the values of map2
* map1. false to remove values of
* map2 from map1.
- * @return truemap1 is altered.
+ * @return {@code true} if {@code map1} is altered.
*/
public static boolean mergeAttributeValues(
Map map1,
diff --git a/openam-cli/openam-cli-impl/src/main/java/com/sun/identity/cli/Debugger.java b/openam-cli/openam-cli-impl/src/main/java/com/sun/identity/cli/Debugger.java
index 59d64ccf2b..982b5d669f 100644
--- a/openam-cli/openam-cli-impl/src/main/java/com/sun/identity/cli/Debugger.java
+++ b/openam-cli/openam-cli-impl/src/main/java/com/sun/identity/cli/Debugger.java
@@ -25,6 +25,7 @@
* $Id: Debugger.java,v 1.2 2008/06/25 05:42:08 qcheng Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.cli;
@@ -190,7 +191,7 @@ public static void error(CommandManager mgr, String msg) {
* Prints error messages only if debug state is greater than
* Debug.OFF. If the debug file is not accessible and debugging is enabled,
* the message along with a time stamp and thread info will be printed on
- * System.out.System.out.
*
* true>/code> if tab set of more than one tab.
+ * Returns {@code true} if tab set of more than one tab.
*
* @param event Child Display Event.
- * @return true>/code> if tab set of more than one tab.
+ * @return {@code true} if tab set of more than one tab.
*/
public boolean beginTabCommonDisplay(ChildDisplayEvent event) {
return (tabModel.getNodeCount() > 1);
@@ -1131,7 +1131,6 @@ private List reverseParentagePath(String path) {
* Handles parentage path request.
*
* @param event Request Invocation Event.
- * @throws ModelControlException if table model cannot be restored.
*/
public void handleParentagepathHrefRequest(RequestInvocationEvent event) {
String path = (String)getDisplayFieldValue(PARENTAGE_PATH_HREF);
diff --git a/openam-console/src/main/java/com/sun/identity/console/agentconfig/model/AgentsModel.java b/openam-console/src/main/java/com/sun/identity/console/agentconfig/model/AgentsModel.java
index cac8bed7d8..7d89845e67 100644
--- a/openam-console/src/main/java/com/sun/identity/console/agentconfig/model/AgentsModel.java
+++ b/openam-console/src/main/java/com/sun/identity/console/agentconfig/model/AgentsModel.java
@@ -24,6 +24,7 @@
*
* $Id: AgentsModel.java,v 1.12 2008/12/13 07:16:09 veiming Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.console.agentconfig.model;
@@ -273,8 +274,6 @@ boolean setGroup(String realmName, String universalId, String groupName)
* Returns map of secure token service configurations.
*
* @return map of secure token service configurations.
- * @throws AMConsoleException if sercure token service configurations cannot
- * be returned.
*/
Map getSTSConfigurations();
@@ -282,7 +281,6 @@ boolean setGroup(String realmName, String universalId, String groupName)
* Returns set of discovery configurations.
*
* @return set of discovery configurations.
- * @throws AMConsoleException if discovery configurations cannot be returned.
*/
Map getDiscoveryConfigurations();
diff --git a/openam-console/src/main/java/com/sun/identity/console/agentconfig/model/AgentsModelImpl.java b/openam-console/src/main/java/com/sun/identity/console/agentconfig/model/AgentsModelImpl.java
index e9fbf580c5..43e70febcd 100644
--- a/openam-console/src/main/java/com/sun/identity/console/agentconfig/model/AgentsModelImpl.java
+++ b/openam-console/src/main/java/com/sun/identity/console/agentconfig/model/AgentsModelImpl.java
@@ -28,7 +28,7 @@
/**
* Portions Copyrighted 2012 ForgeRock Inc
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.console.agentconfig.model;
@@ -884,8 +884,6 @@ public Map getSecurityMechanisms(String agentType) {
* Returns map of secure token service configurations.
*
* @return map of secure token service configurations.
- * @throws AMConsoleException if secure token service configurations cannot
- * be returned.
*/
public Map getSTSConfigurations() {
try {
@@ -917,7 +915,6 @@ public Map getSTSConfigurations() {
* Returns map of discovery configurations.
*
* @return map of discovery configurations.
- * @throws AMConsoleException if discovery configurations cannot be returned.
*/
public Map getDiscoveryConfigurations() {
try {
diff --git a/openam-console/src/main/java/com/sun/identity/console/authentication/EditAuthTypeViewBean.java b/openam-console/src/main/java/com/sun/identity/console/authentication/EditAuthTypeViewBean.java
index 1f4621ae35..01621aed1a 100644
--- a/openam-console/src/main/java/com/sun/identity/console/authentication/EditAuthTypeViewBean.java
+++ b/openam-console/src/main/java/com/sun/identity/console/authentication/EditAuthTypeViewBean.java
@@ -29,7 +29,7 @@
/*
* Portions Copyright 2014-2015 ForgeRock AS.
* Portions Copyrighted 2015 Nomura Research Institute, Ltd.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.console.authentication;
@@ -95,7 +95,7 @@ public EditAuthTypeViewBean() {
* This will populate the property sheet with attribute values for display. If this is called after
* a dynamic request the values that was present on the UI (which might not have been persisted) will be used.
* @param event The display event.
- * @throws ModelControlException
+ * @throws ModelControlException if the framework model cannot be accessed.
*/
public void beginDisplay(DisplayEvent event) throws ModelControlException {
super.beginDisplay(event);
diff --git a/openam-console/src/main/java/com/sun/identity/console/base/AMViewBeanBase.java b/openam-console/src/main/java/com/sun/identity/console/base/AMViewBeanBase.java
index 5642146269..98f3b229e0 100644
--- a/openam-console/src/main/java/com/sun/identity/console/base/AMViewBeanBase.java
+++ b/openam-console/src/main/java/com/sun/identity/console/base/AMViewBeanBase.java
@@ -25,7 +25,7 @@
* $Id: AMViewBeanBase.java,v 1.15 2009/10/19 18:17:33 asyhuang Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.console.base;
@@ -651,7 +651,7 @@ protected void bypassForwardTo(RequestContext rc) {
/**
* Set location DN
*
- * @param dn
+ * @param dn the location distinguished name to set
*/
public void setCurrentLocation(String dn) {
if (dn != null) {
diff --git a/openam-console/src/main/java/com/sun/identity/console/base/ConsoleServletBase.java b/openam-console/src/main/java/com/sun/identity/console/base/ConsoleServletBase.java
index 0dd38e3430..ede54d28dd 100644
--- a/openam-console/src/main/java/com/sun/identity/console/base/ConsoleServletBase.java
+++ b/openam-console/src/main/java/com/sun/identity/console/base/ConsoleServletBase.java
@@ -25,7 +25,7 @@
* $Id: ConsoleServletBase.java,v 1.7 2009/03/24 23:57:32 babysunil Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.console.base;
@@ -188,7 +188,7 @@ protected void onSessionTimeout(RequestContext requestContext)
*
* @param requestContext - request context
* @param handlerName - name of handler
- * @throws ServletException
+ * @throws ServletException if forwarding to the invalid URL view bean fails.
*/
protected void onRequestHandlerNotFound(
RequestContext requestContext,
@@ -206,7 +206,7 @@ protected void onRequestHandlerNotFound(
* Forwards to invalid URL view bean, in case of no handler specified
*
* @param requestContext - request context
- * @throws ServletException
+ * @throws ServletException if forwarding to the invalid URL view bean fails.
*/
protected void onRequestHandlerNotSpecified(RequestContext requestContext)
throws ServletException
@@ -235,8 +235,8 @@ protected void onPageSessionDeserializationException(
*
* @param requestContext - request context
* @param e Exception that was not handled by the application.
- * @throws ServletException
- * @throws IOException
+ * @throws ServletException if the error response cannot be processed.
+ * @throws IOException if the redirect response cannot be sent.
*/
protected void onUncaughtException(
RequestContext requestContext,
diff --git a/openam-console/src/main/java/com/sun/identity/console/base/model/AMFormatUtils.java b/openam-console/src/main/java/com/sun/identity/console/base/model/AMFormatUtils.java
index 02c3cbb3ad..5e54b6b57b 100644
--- a/openam-console/src/main/java/com/sun/identity/console/base/model/AMFormatUtils.java
+++ b/openam-console/src/main/java/com/sun/identity/console/base/model/AMFormatUtils.java
@@ -25,6 +25,7 @@
* $Id: AMFormatUtils.java,v 1.5 2009/01/28 05:34:56 ww203982 Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.console.base.model;
@@ -131,7 +132,7 @@ public static OptionList getSortedOptionList(Map map, Locale locale) {
/**
* Gets relative distinguished name
*
- * @param model
+ * @param model the model used to resolve localized strings
* @param dn - distinguished name
* @return name of relative distinguished name
*/
diff --git a/openam-console/src/main/java/com/sun/identity/console/base/model/AMModelBase.java b/openam-console/src/main/java/com/sun/identity/console/base/model/AMModelBase.java
index 470ccebdec..b6f4e3b8d9 100644
--- a/openam-console/src/main/java/com/sun/identity/console/base/model/AMModelBase.java
+++ b/openam-console/src/main/java/com/sun/identity/console/base/model/AMModelBase.java
@@ -26,7 +26,7 @@
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
* Portions Copyrighted 2022 Open Identity Platform Community
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.console.base.model;
@@ -309,7 +309,7 @@ public String getRandomString() {
/**
* Returns the attribute name that is used for the main user display
* on user entries. This attribute is defined in the administration
- * service in Search Return Attribute/code>. The FIRST entry in
+ * service in Search Return Attribute. The FIRST entry in
* this attribute is the value returned. If the attribute contains the
* following values cn uid, then cn will be
* the return value.
diff --git a/openam-console/src/main/java/com/sun/identity/console/base/model/SubConfigMeta.java b/openam-console/src/main/java/com/sun/identity/console/base/model/SubConfigMeta.java
index 6b1b5a7a7a..a520248d59 100644
--- a/openam-console/src/main/java/com/sun/identity/console/base/model/SubConfigMeta.java
+++ b/openam-console/src/main/java/com/sun/identity/console/base/model/SubConfigMeta.java
@@ -25,6 +25,7 @@
* $Id: SubConfigMeta.java,v 1.2 2008/06/25 05:42:50 qcheng Exp $
*
* Portions Copyrighted 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.console.base.model;
@@ -128,8 +129,6 @@ public Map getCreateableSubSchemaNames() {
/**
* Returns sub service schema.
- *
- * @throws SMSException if sub schema cannot be determined.
*/
public ServiceSchema getServiceSchema() {
return corrSchema;
diff --git a/openam-console/src/main/java/com/sun/identity/console/federation/ImportEntityViewBean.java b/openam-console/src/main/java/com/sun/identity/console/federation/ImportEntityViewBean.java
index 838dbe6bd9..5ec066995a 100644
--- a/openam-console/src/main/java/com/sun/identity/console/federation/ImportEntityViewBean.java
+++ b/openam-console/src/main/java/com/sun/identity/console/federation/ImportEntityViewBean.java
@@ -24,7 +24,7 @@
*
* $Id: ImportEntityViewBean.java,v 1.7 2009/08/21 20:09:23 veiming Exp $
*
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*
*/
@@ -193,7 +193,7 @@ public String endPropertyAttributesDisplay(
* required.
*
* @param event Request invocation event
- * @throws ModelControlException
+ * @throws ModelControlException if the framework model cannot be accessed.
*/
public void handleButton1Request(RequestInvocationEvent event)
throws ModelControlException
diff --git a/openam-console/src/main/java/com/sun/identity/console/federation/SAMLPropertyXMLBuilder.java b/openam-console/src/main/java/com/sun/identity/console/federation/SAMLPropertyXMLBuilder.java
index 10025ac56a..caf299ebb1 100755
--- a/openam-console/src/main/java/com/sun/identity/console/federation/SAMLPropertyXMLBuilder.java
+++ b/openam-console/src/main/java/com/sun/identity/console/federation/SAMLPropertyXMLBuilder.java
@@ -24,6 +24,7 @@
*
* $Id: SAMLPropertyXMLBuilder.java,v 1.7 2009/10/15 00:02:02 asyhuang Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.console.federation;
@@ -186,7 +187,7 @@ public static SAMLPropertyXMLBuilder getInstance() {
/**
* get samlv1.x Property.
*
- * @param name
+ * @param name the name of the SAML property to return
* @return samlv1.x Property
*/
public static SAMLProperty getSAMLProperty(String name) {
diff --git a/openam-console/src/main/java/com/sun/identity/console/federation/model/FSAuthDomainsModel.java b/openam-console/src/main/java/com/sun/identity/console/federation/model/FSAuthDomainsModel.java
index e8f7ef36ff..358aac9bc6 100755
--- a/openam-console/src/main/java/com/sun/identity/console/federation/model/FSAuthDomainsModel.java
+++ b/openam-console/src/main/java/com/sun/identity/console/federation/model/FSAuthDomainsModel.java
@@ -24,6 +24,7 @@
*
* $Id: FSAuthDomainsModel.java,v 1.3 2008/06/25 05:49:39 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.console.federation.model;
@@ -102,7 +103,7 @@ void createAuthenticationDomain(Map attrValues, Set providers)
/**
* Deletes authentication domains.
- * @param realm
+ * @param realm the realm containing the authentication domain
* @param cotName Name of circle of trust
* @throws AMConsoleException if authentication domains cannot be deleted.
*/
@@ -111,11 +112,10 @@ void deleteAuthenticationDomain(String realm, String cotName)
/**
* Returns attribute values.
- * @param realm
+ * @param realm the realm containing the authentication domain
* @param name Name of authentication domain.
* @return attribute values.
- * @throws FSAllianceManagementException if attribute values cannot be
- * obtained.
+ * @throws AMConsoleException if attribute values cannot be obtained.
*/
Map getAttributeValues(String realm, String name)
throws AMConsoleException;
@@ -139,7 +139,7 @@ void setAttributeValues(String realm, String name, Map values)
/**
* Returns a set of provider names.
- * @param realm
+ * @param realm the realm to search for provider names
* @return a set of provider names.
* @throws AMConsoleException if provider names cannot be obtained.
*/
@@ -148,7 +148,7 @@ Set getAllProviderNames(String realm)
/**
* Returns a set of provider names under a authentication domain.
- * @param realm
+ * @param realm the realm containing the authentication domain
* @param name Name of authentication domain.
* @return a set of provider names under a authentication domain.
* @throws AMConsoleException if provider names cannot be obtained.
diff --git a/openam-console/src/main/java/com/sun/identity/console/federation/model/FSAuthDomainsModelImpl.java b/openam-console/src/main/java/com/sun/identity/console/federation/model/FSAuthDomainsModelImpl.java
index 319f0cb1f9..a989dfe5e9 100755
--- a/openam-console/src/main/java/com/sun/identity/console/federation/model/FSAuthDomainsModelImpl.java
+++ b/openam-console/src/main/java/com/sun/identity/console/federation/model/FSAuthDomainsModelImpl.java
@@ -24,7 +24,7 @@
*
* $Id: FSAuthDomainsModelImpl.java,v 1.12 2009/11/10 01:19:49 exu Exp $
*
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*
*/
@@ -82,7 +82,7 @@ public FSAuthDomainsModelImpl(HttpServletRequest req, Map map) {
}
/**
- * Returns a <code>Set</code> of all the authentication domains
+ * Returns a {@code Set} of all the authentication domains
* starting from the root realm.
*
* @return a Set of authentication domain names.
@@ -270,7 +270,7 @@ public Map getAttributeValues(String realm, String name)
*
* @param name Name of authentication domain.
* @param values Map of attribute name to value.
- * @throws IDFFMetaException if attribute values cannot be set.
+ * @throws AMConsoleException if attribute values cannot be set.
*/
public void setAttributeValues(String realm, String name, Map values)
throws AMConsoleException
@@ -314,7 +314,7 @@ public Map getDataMap() {
}
/**
- * Returns a <code>Set</code> of provider names that exist in the
+ * Returns a {@code Set} of provider names that exist in the
* specified realm.
*
* @param realm name of the realm to search.
diff --git a/openam-console/src/main/java/com/sun/identity/console/federation/model/IDFFModelImpl.java b/openam-console/src/main/java/com/sun/identity/console/federation/model/IDFFModelImpl.java
index aed9d1df8c..f01b61e0c5 100644
--- a/openam-console/src/main/java/com/sun/identity/console/federation/model/IDFFModelImpl.java
+++ b/openam-console/src/main/java/com/sun/identity/console/federation/model/IDFFModelImpl.java
@@ -24,7 +24,7 @@
*
* $Id: IDFFModelImpl.java,v 1.9 2009/11/10 01:19:49 exu Exp $
*
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*
*/
package com.sun.identity.console.federation.model;
@@ -225,7 +225,7 @@ public IDFFModelImpl(HttpServletRequest req, Map map) {
* @param realm the realm in which the entity resides.
* @param entityName Name of Entity Descriptor.
* @return provider-affiliate common attribute values.
- * @throws IDFFMetaException if attribute values cannot be obtained.
+ * @throws AMConsoleException if attribute values cannot be obtained.
*/
public Map getCommonAttributeValues(String realm, String entityName)
throws AMConsoleException {
@@ -932,7 +932,6 @@ private void updateAttrInConfig(
* @param realm where entity exists.
* @param attrValues Map of attribute name to set of values.
* @throws AMConsoleException if provider cannot be modified.
- * @throws JAXBException if provider cannot be retrieved.
*/
public void updateIDPEntityConfig(
String realm,
@@ -985,7 +984,6 @@ public void updateIDPEntityConfig(
* @param entityName name of Entity Descriptor.
* @param attrValues Map of attribute name to set of values.
* @throws AMConsoleException if provider cannot be modified.
- * @throws JAXBException if provider cannot be retrieved.
*/
public void updateSPEntityConfig(
String realm,
@@ -1616,7 +1614,7 @@ public void updateAffiliateProfile(
*
* @param realm the realm in which the entity resides.
* @return the IDFF entity descriptor
- * @throws AMConsoleException
+ * @throws AMConsoleException if the entity descriptor names cannot be obtained.
*/
public Set getAllEntityDescriptorNames(String realm)
throws AMConsoleException {
diff --git a/openam-console/src/main/java/com/sun/identity/console/realm/RMRealmViewBeanBase.java b/openam-console/src/main/java/com/sun/identity/console/realm/RMRealmViewBeanBase.java
index 344f6b873f..18c1d33a29 100644
--- a/openam-console/src/main/java/com/sun/identity/console/realm/RMRealmViewBeanBase.java
+++ b/openam-console/src/main/java/com/sun/identity/console/realm/RMRealmViewBeanBase.java
@@ -28,6 +28,7 @@
/*
* Portions Copyrighted [2011] [ForgeRock AS]
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.console.realm;
@@ -174,7 +175,6 @@ private List reverseParentagePath(String path) {
* Handles parentage path request.
*
* @param event Request Invocation Event.
- * @throws ModelControlException if table model cannot be restored.
*/
public void handleParentagepathHrefRequest(RequestInvocationEvent event) {
String path = (String)getDisplayFieldValue(PARENTAGE_PATH_HREF);
diff --git a/openam-console/src/main/java/com/sun/identity/console/realm/model/RMRealmModelImpl.java b/openam-console/src/main/java/com/sun/identity/console/realm/model/RMRealmModelImpl.java
index 8320a6b183..f3174fde42 100644
--- a/openam-console/src/main/java/com/sun/identity/console/realm/model/RMRealmModelImpl.java
+++ b/openam-console/src/main/java/com/sun/identity/console/realm/model/RMRealmModelImpl.java
@@ -28,7 +28,7 @@
/*
* Portions Copyrighted [2011] [ForgeRock AS]
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.console.realm.model;
@@ -214,8 +214,6 @@ public void deleteSubRealms(String parentRealm, Collection names)
* type attributes. Returning other default values runs the risk
* of violating the attribute uniqueness plugin while creating a
* new realm.
- *
- * @throws AMConsoleException if map cannot be obtained.
*/
public Map getDefaultValues() {
Map map = new HashMap();
@@ -247,8 +245,6 @@ public Map getDefaultValues() {
/**
* Returns Map of attribute name to empty set of values.
- *
- * @throws AMConsoleException if map cannot be obtained.
*/
public Map getDataMap() {
Map map = new HashMap();
diff --git a/openam-console/src/main/java/com/sun/identity/console/session/model/SMSessionData.java b/openam-console/src/main/java/com/sun/identity/console/session/model/SMSessionData.java
index 5cd487a292..7b431f2376 100644
--- a/openam-console/src/main/java/com/sun/identity/console/session/model/SMSessionData.java
+++ b/openam-console/src/main/java/com/sun/identity/console/session/model/SMSessionData.java
@@ -24,6 +24,7 @@
*
* $Id: SMSessionData.java,v 1.2 2008/06/25 05:43:21 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.console.session.model;
@@ -109,7 +110,7 @@ public void setMaxIdleTime(long value) {
/**
* Set Organization
*
- * @param Organization
+ * @param organization the organization to set
*/
public void setOrganization(String organization) {
this.organization = organization;
@@ -118,7 +119,7 @@ public void setOrganization(String organization) {
/**
* Set Service
*
- * @param Service
+ * @param service the service to set
*/
public void setService(String service) {
this.service = service;
@@ -127,7 +128,7 @@ public void setService(String service) {
/**
* Set AuthType
*
- * @param AuthType
+ * @param authType the authentication type to set
*/
public void setAuthType(String authType) {
this.authType = authType;
@@ -136,7 +137,7 @@ public void setAuthType(String authType) {
/**
* Set AuthLevel
*
- * @param AuthLevel
+ * @param authLevel the authentication level to set
*/
public void setAuthLevel(String authLevel) {
this.authLevel = authLevel;
@@ -145,7 +146,7 @@ public void setAuthLevel(String authLevel) {
/**
* Set AMCtxId
*
- * @param AMCtxId
+ * @param aMCtxId the AM context ID to set
*/
public void setaMCtxId(String aMCtxId) {
this.aMCtxId = aMCtxId;
diff --git a/openam-core-rest/src/main/java/org/forgerock/openam/core/rest/authn/callbackhandlers/JsonCallbackParser.java b/openam-core-rest/src/main/java/org/forgerock/openam/core/rest/authn/callbackhandlers/JsonCallbackParser.java
index e01c254052..0da32fa9c9 100644
--- a/openam-core-rest/src/main/java/org/forgerock/openam/core/rest/authn/callbackhandlers/JsonCallbackParser.java
+++ b/openam-core-rest/src/main/java/org/forgerock/openam/core/rest/authn/callbackhandlers/JsonCallbackParser.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2013-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.core.rest.authn.callbackhandlers;
@@ -43,7 +44,6 @@ public interface JsonCallbackParser
* {
* type : "NameCallback",
@@ -61,7 +61,6 @@ public interface JsonCallbackParser
- *
*
* The type field MUST be the name of the Callback class.
* Output fields detail information that the client can use to display to the user.
diff --git a/openam-core-rest/src/main/java/org/forgerock/openam/core/rest/authn/callbackhandlers/RestAuthNameValueOutputCallbackHandler.java b/openam-core-rest/src/main/java/org/forgerock/openam/core/rest/authn/callbackhandlers/RestAuthNameValueOutputCallbackHandler.java
index b5cffa02ea..517b1382b6 100644
--- a/openam-core-rest/src/main/java/org/forgerock/openam/core/rest/authn/callbackhandlers/RestAuthNameValueOutputCallbackHandler.java
+++ b/openam-core-rest/src/main/java/org/forgerock/openam/core/rest/authn/callbackhandlers/RestAuthNameValueOutputCallbackHandler.java
@@ -12,7 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2018 Open Identity Community.
- * Portions copyright 2025 3A Systems LLC.
+ * Portions copyright 2025-2026 3A Systems LLC.
*/
package org.forgerock.openam.core.rest.authn.callbackhandlers;
@@ -28,11 +28,7 @@
import jakarta.servlet.http.HttpServletResponse;
/**
-<<<<<<< HEAD
* Defines methods to convert a NameValueOutputCallback to a JSON representation.
-=======
- * Defines methods to convert a TextOutputCallback to a JSON representation.
->>>>>>> upstream/master
*/
public class RestAuthNameValueOutputCallbackHandler extends AbstractRestAuthCallbackHandlerCollections.EMPTY_SET otherwise
+ * Collections.EMPTY_SET otherwise
*/
public Set getDefaultValues() {
return attrSchema.getDefaultValues();
@@ -383,6 +384,7 @@ public String getI18NKey() {
* @param i18nKey
* value of i18nKey.
* @throws AMException
+ * if an error occurs while setting the I18N key
*/
public void setI18NKey(String i18nKey) throws AMException {
try {
diff --git a/openam-core/src/main/java/com/iplanet/am/sdk/AMCallBack.java b/openam-core/src/main/java/com/iplanet/am/sdk/AMCallBack.java
index 6a909cda1d..8eb5574126 100644
--- a/openam-core/src/main/java/com/iplanet/am/sdk/AMCallBack.java
+++ b/openam-core/src/main/java/com/iplanet/am/sdk/AMCallBack.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -63,18 +64,15 @@
*
- *
- * @return Map of updated values for attributes or null. If this
+ * @return Map of updated values for attributes or null. If this
* returned map is not null, then this map will be used while
* performing the operation.
* @throws AMPreCallBackException if an
@@ -417,7 +415,7 @@ public void postProcessDelete(SSOToken token, String entryDN,
* AMObject.ASSIGNABLE_DYNAMIC_GROUP}
*
*
- * @return Set of updated values for members or null. If null
+ * @return Set of updated values for members or null. If null
* value or empty set is returned, no users will be added. Hence, if no
* modification is being performed to the original set, it needs to be
* back.
@@ -487,7 +485,7 @@ public void postProcessAddUser(SSOToken token, String entryDN, Set members,
* AMObject.ASSIGNABLE_DYNAMIC_GROUP}
*
*
- * @return Set of updated values for members or null. If null
+ * @return Set of updated values for members or null. If null
* value or empty set is returned, no users will be removed. Hence, if no
* modification is being performed to the original set, it needs to be
* back.
diff --git a/openam-core/src/main/java/com/iplanet/am/sdk/AMCommonUtils.java b/openam-core/src/main/java/com/iplanet/am/sdk/AMCommonUtils.java
index f211f5c8f2..2a963aaf2a 100644
--- a/openam-core/src/main/java/com/iplanet/am/sdk/AMCommonUtils.java
+++ b/openam-core/src/main/java/com/iplanet/am/sdk/AMCommonUtils.java
@@ -25,6 +25,7 @@
* $Id: AMCommonUtils.java,v 1.7 2009/01/28 05:34:46 ww203982 Exp $
*
* Portions Copyright 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.iplanet.am.sdk;
@@ -143,7 +144,7 @@ protected static String getUserLocale(SSOToken token) {
* the first AttrSet
* @param attrSet2
* the second AttrSet
- * @return an AttrSet which has combined values of attrSet1 & attrSet2
+ * @return an AttrSet which has combined values of attrSet1 & attrSet2
*/
protected static AttrSet combineAttrSets(AttrSet attrSet1, AttrSet attrSet2)
{
@@ -456,7 +457,7 @@ public static Set updateAndGetRemovableOCs(Set origSet, Set removeOCs) {
* remove these attributes from newly created entries. Such empty sets
* should be ignored, when entry is being created.
*
- * @param attrMap
+ * @param attrMap the attribute-value map from which empty value sets are removed
* @return map without empty set.
*/
public static Map removeEmptyValues(Map attrMap) {
diff --git a/openam-core/src/main/java/com/iplanet/am/sdk/AMEntityType.java b/openam-core/src/main/java/com/iplanet/am/sdk/AMEntityType.java
index 55091f4d3d..215b037aee 100644
--- a/openam-core/src/main/java/com/iplanet/am/sdk/AMEntityType.java
+++ b/openam-core/src/main/java/com/iplanet/am/sdk/AMEntityType.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -42,7 +43,6 @@
* This class defines a supported managed object type by AM SDK
* It defines the name, type, service name of the object. A set of the supported
* types can be obtained by using the class AMStoreConnection:
- *
*
diff --git a/openam-core/src/main/java/com/iplanet/am/sdk/AMEvent.java b/openam-core/src/main/java/com/iplanet/am/sdk/AMEvent.java
index 65c34f8679..2e45af4aa0 100644
--- a/openam-core/src/main/java/com/iplanet/am/sdk/AMEvent.java
+++ b/openam-core/src/main/java/com/iplanet/am/sdk/AMEvent.java
@@ -25,6 +25,7 @@
* $Id: AMEvent.java,v 1.8 2009/01/28 05:34:47 ww203982 Exp $
*
* Portions Copyright 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.iplanet.am.sdk;
@@ -167,7 +168,6 @@ public int getEventType() {
/**
* Returns the type of the source object that caused the event.
- *
*
AMObject.USER
diff --git a/openam-core/src/main/java/com/iplanet/am/sdk/AMObjectImpl.java b/openam-core/src/main/java/com/iplanet/am/sdk/AMObjectImpl.java
index a861ad07be..c2542383de 100644
--- a/openam-core/src/main/java/com/iplanet/am/sdk/AMObjectImpl.java
+++ b/openam-core/src/main/java/com/iplanet/am/sdk/AMObjectImpl.java
@@ -25,6 +25,7 @@
* $Id: AMObjectImpl.java,v 1.14 2009/11/20 23:52:51 ww203982 Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.iplanet.am.sdk;
@@ -111,7 +112,7 @@ class AMObjectImpl implements AMObject {
/**
* Hash table used to keep track of elements that need to be removed from
* objImplListeners table when a SSOToken is no longer valid. The key is
- * SSOTokenId & the value is a Set of DN's.
+ * SSOTokenId & the value is a Set of DN's.
*/
protected static Hashtable profileNameTable = new Hashtable();
@@ -1622,7 +1623,6 @@ public void removeAttributes(Set attrNames) throws AMException,
* UnRegister a previously registered event listener. If the
* listener was not registered, the method simply returns
* without doing anything.
- * AMIdRepoListener to send
+ * AMIdRepoListener to send
* notifications to all interested AMObjectImp's whenever an ACI
* change occurs.
*
@@ -2106,7 +2106,6 @@ protected static void notifyACIChangeEvent(String dn, int eventType) {
/**
* This method will be called EntryEventListener to send notifications to
* all interested AMObjectImp's whenever an Entry Event occurs.
- * <serviceName><AttrMap>
- * (attrMap=<attrName><Set of attrvalues>)
+ * <serviceName><AttrMap>
+ * (attrMap=<attrName><Set of attrvalues>)
* @return AMGroup object of newly created group.
* @throws AMException
* if an error is encountered when trying to access/retrieve
@@ -1116,15 +1117,15 @@ public Set createDynamicGroups(Map dynamicGroups) throws AMException,
SSOException;
/**
- * Creates dynamic group. Takes serviceNameAndAttr map
+ * Creates dynamic group. Takes .
+ * Returns the integer type of the object represented by the serviceNameAndAttr map
* so that services can be assigned to the group which is just created.
*
* @param name of group to be created
* @param attributes to be set in group
* @param serviceNameAndAttrs service name and attribute map where the map
* is like this:
- * <serviceName><AttrMap>
- * (attrMap=<attrName><Set of attrvalues>)
+ * <serviceName><AttrMap>
+ * (attrMap=<attrName><Set of attrvalues>)
* @return AMGroup object of newly created group.
* @throws AMException if an error is encountered when trying to
* access/retrieve data from the data store.
@@ -1351,8 +1352,8 @@ public AMSearchResults searchDynamicGroups(String wildcard, Map avPairs,
* to be set in group node.
* @param serviceNameAndAttrs
* service name and attribute map where the map is like this:
- * <serviceName><AttrMap>
- * (attrMap=<attrName><Set of attrvalues>).
+ * <serviceName><AttrMap>
+ * (attrMap=<attrName><Set of attrvalues>).
* @return AMGroup object of newly created group.
* @throws AMException
* if an error is encountered when trying to access/retrieve
@@ -2009,7 +2010,9 @@ public AMUser createUser(String uid, Map attrMap, Map serviceNameAndAttrs)
* search template.
* @return AMUser object of user found.
* @throws AMException
+ * if an error occurs while retrieving the user
* @throws SSOException
+ * if the single sign-on token is invalid or has expired
*/
AMUser getUser(String uid, String userSearchTemplate) throws AMException,
SSOException;
diff --git a/openam-core/src/main/java/com/iplanet/am/sdk/AMOrganizationImpl.java b/openam-core/src/main/java/com/iplanet/am/sdk/AMOrganizationImpl.java
index fc17be5e34..e13e3c948b 100644
--- a/openam-core/src/main/java/com/iplanet/am/sdk/AMOrganizationImpl.java
+++ b/openam-core/src/main/java/com/iplanet/am/sdk/AMOrganizationImpl.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -2724,7 +2725,7 @@ public AMSearchResults searchUsers(String wildcard, Map avPairs,
* @param searchControl
* specifies the search scope to be used, VLV ranges etc.,
* @param avfilter
- * this attribute-value pairs filter will be & with user search
+ * this attribute-value pairs filter will be & with user search
* filter
*
* @return AMSearchResults which contains a Set DNs of Users matching the
@@ -2751,7 +2752,7 @@ public AMSearchResults searchUsers(String wildcard,
* @param searchControl
* specifies the search scope to be used, VLV ranges etc.,
* @param avfilter
- * this attribute-value pairs filter will be & with user search
+ * this attribute-value pairs filter will be & with user search
* filter
*
* @return AMSearchResults which contains a Set DNs of Users matching the
diff --git a/openam-core/src/main/java/com/iplanet/am/sdk/AMOrganizationalUnitImpl.java b/openam-core/src/main/java/com/iplanet/am/sdk/AMOrganizationalUnitImpl.java
index 0444b69afc..8a4af7c7ee 100644
--- a/openam-core/src/main/java/com/iplanet/am/sdk/AMOrganizationalUnitImpl.java
+++ b/openam-core/src/main/java/com/iplanet/am/sdk/AMOrganizationalUnitImpl.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -2294,7 +2295,7 @@ public AMSearchResults searchUsers(String wildcard, Map avPairs,
* @param searchControl
* specifies the search scope to be used, VLV ranges etc.,
* @param avfilter
- * this attribute-value pairs filter will be & with user search
+ * this attribute-value pairs filter will be & with user search
* filter
*
* @return AMSearchResults which contains a Set DNs of Users matching the
@@ -2321,7 +2322,7 @@ public AMSearchResults searchUsers(String wildcard,
* @param searchControl
* specifies the search scope to be used, VLV ranges etc.,
* @param avfilter
- * this attribute-value pairs filter will be & with user search
+ * this attribute-value pairs filter will be & with user search
* filter
*
* @return AMSearchResults which contains a Set DNs of Users matching the
diff --git a/openam-core/src/main/java/com/iplanet/am/sdk/AMPeopleContainerImpl.java b/openam-core/src/main/java/com/iplanet/am/sdk/AMPeopleContainerImpl.java
index 94650c1c38..62307c4e73 100644
--- a/openam-core/src/main/java/com/iplanet/am/sdk/AMPeopleContainerImpl.java
+++ b/openam-core/src/main/java/com/iplanet/am/sdk/AMPeopleContainerImpl.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -550,7 +551,7 @@ public AMSearchResults searchUsers(String wildcard, Map avPairs,
* @param searchControl
* specifies the search scope to be used, VLV ranges etc.,
* @param avfilter
- * this attribute-value pairs filter will be & with user search
+ * this attribute-value pairs filter will be & with user search
* filter
*
* @return AMSearchResults which contains a Set DNs of Users matching the
@@ -580,7 +581,7 @@ public AMSearchResults searchUsers(String wildcard,
* @param searchControl
* specifies the search scope to be used, VLV ranges etc.,
* @param avfilter
- * this attribute-value pairs filter will be & with user search
+ * this attribute-value pairs filter will be & with user search
* filter
*
* @return AMSearchResults which contains a Set DNs of Users matching the
diff --git a/openam-core/src/main/java/com/iplanet/am/sdk/AMStoreConnection.java b/openam-core/src/main/java/com/iplanet/am/sdk/AMStoreConnection.java
index 50a15b3a88..b8ac773142 100644
--- a/openam-core/src/main/java/com/iplanet/am/sdk/AMStoreConnection.java
+++ b/openam-core/src/main/java/com/iplanet/am/sdk/AMStoreConnection.java
@@ -25,6 +25,7 @@
* $Id: AMStoreConnection.java,v 1.13 2009/01/28 05:34:47 ww203982 Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.iplanet.am.sdk;
@@ -598,7 +599,7 @@ public AMOrganization getOrganization(String orgDN) throws SSOException {
* returned. A "/" separated string is assumed to represent an
* existing organization DN in the DIT. For example:
* /iplanet/sun is converted to a DN
- * (o=iplanet,o=sun,<base DN>) and the validity
+ * (o=iplanet,o=sun,<base DN>) and the validity
* of this DN is checked and returned. Any other string is
* assumed to be either a domain or an associated domain or the
* organization name. The search filter is created accordingly.
@@ -1387,6 +1388,7 @@ public void purge(String domainName, int graceperiod) throws AMException,
* if there is an error in deleting the user, or if the user
* callbacks thrown an exception
* @throws SSOException
+ * if the single sign-on token is invalid or has expired
*/
public void purgeUser(String uid, String domainName, int graceperiod)
throws AMException, SSOException {
@@ -1439,6 +1441,7 @@ public void purgeUser(String uid, String domainName, int graceperiod)
* if there is an error in deleting the user, or if the user
* callbacks thrown an exception
* @throws SSOException
+ * if the single sign-on token is invalid or has expired
*/
public void purgeResource(String rid, String domainName, int graceperiod)
throws AMException, SSOException {
@@ -1492,6 +1495,7 @@ public void purgeResource(String rid, String domainName, int graceperiod)
* if there is an error in deleting the group, or if the
* callbacks thrown an exception
* @throws SSOException
+ * if the single sign-on token is invalid or has expired
*/
public void purgeGroup(String gid, String domainName, int graceperiod)
throws AMException, SSOException {
diff --git a/openam-core/src/main/java/com/iplanet/am/sdk/AMTemplate.java b/openam-core/src/main/java/com/iplanet/am/sdk/AMTemplate.java
index 0e259d4645..b0ae30c98a 100644
--- a/openam-core/src/main/java/com/iplanet/am/sdk/AMTemplate.java
+++ b/openam-core/src/main/java/com/iplanet/am/sdk/AMTemplate.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -161,6 +162,7 @@ public interface AMTemplate extends AMObject {
*
*
*/
public int getType();
diff --git a/openam-core/src/main/java/com/iplanet/am/sdk/common/CacheBlockBase.java b/openam-core/src/main/java/com/iplanet/am/sdk/common/CacheBlockBase.java
index 65af52349e..4e9ac4fe6d 100644
--- a/openam-core/src/main/java/com/iplanet/am/sdk/common/CacheBlockBase.java
+++ b/openam-core/src/main/java/com/iplanet/am/sdk/common/CacheBlockBase.java
@@ -25,7 +25,7 @@
* $Id: CacheBlockBase.java,v 1.6 2009/10/29 00:28:46 hengming Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
- * Portions Copyrighted 2023 3A Systems LLC
+ * Portions Copyrighted 2023-2026 3A Systems LLC
*/
package com.iplanet.am.sdk.common;
@@ -199,7 +199,7 @@ public String getEntryDN() {
* NOTE: Call to this method should preceeded with
* expiredAndUpdated() check. For example, isExists() return value holds
* good only it the entry has not expired. So, check anywhere it is called
- * the check should be if (!cb.expiredAndUpdated() && cb.isExists()) or
+ * the check should be if (!cb.expiredAndUpdated() && cb.isExists()) or
* similar.
*
* @return true if it represents a valid entry, false otherwise
diff --git a/openam-core/src/main/java/com/iplanet/am/sdk/common/IComplianceServices.java b/openam-core/src/main/java/com/iplanet/am/sdk/common/IComplianceServices.java
index 4372a0b40e..25558f8382 100644
--- a/openam-core/src/main/java/com/iplanet/am/sdk/common/IComplianceServices.java
+++ b/openam-core/src/main/java/com/iplanet/am/sdk/common/IComplianceServices.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -69,7 +70,7 @@ public void verifyAndDeleteObject(SSOToken token, String profileDN)
/**
* Returns the search filter to be used for searching deleted objects. For
* example, for searching deleted users, the search filter is
- * (&(objectclass=inetOrgPerson)(inetUserStatus=deleted)) .
+ * (&(objectclass=inetOrgPerson)(inetUserStatus=deleted)) .
* The search filters are configured in the Admin Console service
*
* @param objectType
diff --git a/openam-core/src/main/java/com/iplanet/am/sdk/common/IDirectoryServices.java b/openam-core/src/main/java/com/iplanet/am/sdk/common/IDirectoryServices.java
index f038c00ffc..458651c526 100644
--- a/openam-core/src/main/java/com/iplanet/am/sdk/common/IDirectoryServices.java
+++ b/openam-core/src/main/java/com/iplanet/am/sdk/common/IDirectoryServices.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -76,8 +77,7 @@ public interface IDirectoryServices {
public boolean doesEntryExists(SSOToken token, String entryDN);
/**
- * Returns the integer type of the object represented by the DN.
*
* @param token
* User's single sign on token
@@ -392,7 +392,7 @@ public void createEntry(SSOToken token, String entryName, int objectType,
* @param objectType
* profile type
* @param recursive
- * if true, remove all sub entries & the object
+ * if true, remove all sub entries & the object
* @param softDelete
* Used to let pre/post callback plugins know that this delete is
* either a soft delete (marked for deletion) or a purge/hard
@@ -530,8 +530,11 @@ public void changePassword(SSOToken token, String entryDN, String attrName,
* @param entryDN
* DN of the profile
* @param profileType
+ * the profile type of the entry
* @throws AMException
+ * if an error occurs while retrieving the group filter and scope
* @throws SSOException
+ * if the single sign-on token is invalid or has expired
*/
public String[] getGroupFilterAndScope(SSOToken token, String entryDN,
int profileType) throws SSOException, AMException;
@@ -696,6 +699,7 @@ public String createAMTemplate(SSOToken token, String entryDN,
* objectclass.
*
* @param objectclass
+ * the object class whose attributes are returned
* @return The set of attribute names (both required and optional) for this
* objectclass
*/
@@ -707,7 +711,7 @@ public String createAMTemplate(SSOToken token, String entryDN,
* @param objectType
* Integere represenintg object type.
* @param orgDN
- * Organization
+ * Organization DN
* @param searchTemplateName
* Name of search template
* @return Search filter
diff --git a/openam-core/src/main/java/com/iplanet/am/sdk/common/MiscUtils.java b/openam-core/src/main/java/com/iplanet/am/sdk/common/MiscUtils.java
index b4aeebed8b..20d320f620 100644
--- a/openam-core/src/main/java/com/iplanet/am/sdk/common/MiscUtils.java
+++ b/openam-core/src/main/java/com/iplanet/am/sdk/common/MiscUtils.java
@@ -25,6 +25,7 @@
* $Id: MiscUtils.java,v 1.5 2009/01/28 05:34:47 ww203982 Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.iplanet.am.sdk.common;
@@ -126,7 +127,7 @@ public static String getUserLocale(SSOToken token) {
* the first AttrSet
* @param attrSet2
* the second AttrSet
- * @return an AttrSet which has combined values of attrSet1 & attrSet2
+ * @return an AttrSet which has combined values of attrSet1 & attrSet2
*/
public static AttrSet combineAttrSets(AttrSet attrSet1, AttrSet attrSet2) {
@@ -438,7 +439,7 @@ public static Set updateAndGetRemovableOCs(Set origSet, Set removeOCs) {
* remove these attributes from newly created entries. Such empty sets
* should be ignored, when entry is being created.
*
- * @param attrMap
+ * @param attrMap the attribute-value map from which empty value sets are removed
* @return map without empty set.
*/
public static Map removeEmptyValues(Map attrMap) {
diff --git a/openam-core/src/main/java/com/iplanet/am/sdk/ldap/ACIEventListener.java b/openam-core/src/main/java/com/iplanet/am/sdk/ldap/ACIEventListener.java
index 562c0c68dd..9906af3ba0 100644
--- a/openam-core/src/main/java/com/iplanet/am/sdk/ldap/ACIEventListener.java
+++ b/openam-core/src/main/java/com/iplanet/am/sdk/ldap/ACIEventListener.java
@@ -25,6 +25,7 @@
* $Id: ACIEventListener.java,v 1.5 2009/01/28 05:34:48 ww203982 Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.iplanet.am.sdk.ldap;
@@ -72,7 +73,6 @@ public ACIEventListener() {
* the AMObjectImpl by calling the appropriate method.
* Usually all the DN's whose have a suffix of this DN of this event will
* get affected
- * DSEvent object generated by the
diff --git a/openam-core/src/main/java/com/iplanet/am/sdk/ldap/CachedDirectoryServicesImpl.java b/openam-core/src/main/java/com/iplanet/am/sdk/ldap/CachedDirectoryServicesImpl.java
index fef0edd024..a81d8124d1 100644
--- a/openam-core/src/main/java/com/iplanet/am/sdk/ldap/CachedDirectoryServicesImpl.java
+++ b/openam-core/src/main/java/com/iplanet/am/sdk/ldap/CachedDirectoryServicesImpl.java
@@ -25,7 +25,7 @@
* $Id: CachedDirectoryServicesImpl.java,v 1.5 2009/11/20 23:52:51 ww203982 Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
- * Portions Copyrighted 2023 3A Systems LLC
+ * Portions Copyrighted 2023-2026 3A Systems LLC
*/
package com.iplanet.am.sdk.ldap;
@@ -981,7 +981,7 @@ public void setAttributes(SSOToken token, String entryDN, int objectType,
* @param objectType
* profile type
* @param recursive
- * if true, remove all sub entries & the object
+ * if true, remove all sub entries & the object
* @param softDelete
* Used to let pre/post callback plugins know that this delete is
* either a soft delete (marked for deletion) or a purge/hard
diff --git a/openam-core/src/main/java/com/iplanet/am/sdk/ldap/CallBackHelper.java b/openam-core/src/main/java/com/iplanet/am/sdk/ldap/CallBackHelper.java
index d041519205..1b69696e3e 100644
--- a/openam-core/src/main/java/com/iplanet/am/sdk/ldap/CallBackHelper.java
+++ b/openam-core/src/main/java/com/iplanet/am/sdk/ldap/CallBackHelper.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -293,7 +294,7 @@ public void postProcess(SSOToken token, String entryDN, String orgDN,
}
/**
- * Special method for pre processing memberShip modification for roles &
+ * Special method for pre processing memberShip modification for roles &
* groups.
*/
public Set preProcessModifyMemberShip(SSOToken token, String entryDN,
@@ -334,7 +335,7 @@ public Set preProcessModifyMemberShip(SSOToken token, String entryDN,
}
/**
- * Special method for post processing memberShip modification for roles &
+ * Special method for post processing memberShip modification for roles &
* groups.
*/
public void postProcessModifyMemberShip(SSOToken token, String entryDN,
diff --git a/openam-core/src/main/java/com/iplanet/am/sdk/ldap/CommonUtils.java b/openam-core/src/main/java/com/iplanet/am/sdk/ldap/CommonUtils.java
index 02c0bee3a7..147dea79a7 100644
--- a/openam-core/src/main/java/com/iplanet/am/sdk/ldap/CommonUtils.java
+++ b/openam-core/src/main/java/com/iplanet/am/sdk/ldap/CommonUtils.java
@@ -25,6 +25,7 @@
* $Id: CommonUtils.java,v 1.8 2009/01/28 05:34:48 ww203982 Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.iplanet.am.sdk.ldap;
@@ -156,7 +157,7 @@ protected static String getUserLocale(SSOToken token) {
* the first AttrSet
* @param attrSet2
* the second AttrSet
- * @return an AttrSet which has combined values of attrSet1 & attrSet2
+ * @return an AttrSet which has combined values of attrSet1 & attrSet2
*/
protected static AttrSet combineAttrSets(AttrSet attrSet1, AttrSet attrSet2)
{
diff --git a/openam-core/src/main/java/com/iplanet/am/sdk/ldap/ComplianceServicesImpl.java b/openam-core/src/main/java/com/iplanet/am/sdk/ldap/ComplianceServicesImpl.java
index bad1f3c0a9..00f620a46c 100644
--- a/openam-core/src/main/java/com/iplanet/am/sdk/ldap/ComplianceServicesImpl.java
+++ b/openam-core/src/main/java/com/iplanet/am/sdk/ldap/ComplianceServicesImpl.java
@@ -25,6 +25,7 @@
* $Id: ComplianceServicesImpl.java,v 1.10 2009/11/20 23:52:51 ww203982 Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.iplanet.am.sdk.ldap;
@@ -418,7 +419,6 @@ protected void verifyAndUnLinkGroupToRole(SSOToken token, Set members,
* Method which checks the attribute set for the presence of
* "inetuserstatus" attribute. If the attribute exists and has a value of
* "deleted", the method returns true, if not it returns false.
- * EventListener. Should be instantiated
* once by RemoteServicesImpl
*
*/
@@ -241,7 +242,6 @@ public void addListener(SSOToken token, AMObjectListener listener)
* Sends notifications to listeners added via addListener.
* The parameter nItem is an XML document having a single
* notification event, using the following DTD.
- *
* <!-- EventNotification element specifes the change notification
diff --git a/openam-core/src/main/java/com/iplanet/am/sdk/remote/RemoteServicesImpl.java b/openam-core/src/main/java/com/iplanet/am/sdk/remote/RemoteServicesImpl.java
index 4db4ec091f..dbb1aae508 100755
--- a/openam-core/src/main/java/com/iplanet/am/sdk/remote/RemoteServicesImpl.java
+++ b/openam-core/src/main/java/com/iplanet/am/sdk/remote/RemoteServicesImpl.java
@@ -25,6 +25,7 @@
* $Id: RemoteServicesImpl.java,v 1.10 2009/07/02 20:26:16 hengming Exp $
*
* Portions Copyrighted 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.iplanet.am.sdk.remote;
@@ -832,7 +833,7 @@ public void createEntry(SSOToken token, String entryName, int objectType,
* @param objectType
* profile type
* @param recursive
- * if true, remove all sub entries & the object
+ * if true, remove all sub entries & the object
* @param softDelete
* Used to let pre/post callback plugins know that this delete is
* either a soft delete (marked for deletion) or a purge/hard
@@ -1299,10 +1300,15 @@ public String[] getGroupFilterAndScope(SSOToken token, String entryDN,
* Sets the filter for a dynamic group in the datastore.
*
* @param token
+ * the single sign-on token used to authorize the operation
* @param entryDN
+ * the DN of the dynamic group entry
* @param filter
+ * the search filter to set on the dynamic group
* @throws AMException
+ * if an error occurs while setting the group filter
* @throws SSOException
+ * if the single sign-on token is invalid or has expired
*/
public void setGroupFilter(SSOToken token, String entryDN, String filter)
throws AMException, SSOException {
@@ -1691,7 +1697,7 @@ public String getObjectClass(int objectType) {
* Returns the set of attributes (both optional and required) needed for an
* objectclass based on the LDAP schema
*
- * @param objectclass
+ * @param objectclass the object class whose attributes are returned
* @return Set of the attributes for the object class
*/
public Set getAttributesForSchema(String objectclass) {
diff --git a/openam-core/src/main/java/com/iplanet/am/util/Misc.java b/openam-core/src/main/java/com/iplanet/am/util/Misc.java
index 25edf46f22..bf2db9ef22 100644
--- a/openam-core/src/main/java/com/iplanet/am/util/Misc.java
+++ b/openam-core/src/main/java/com/iplanet/am/util/Misc.java
@@ -25,6 +25,7 @@
* $Id: Misc.java,v 1.6 2009/01/28 05:34:48 ww203982 Exp $
*
* Portions Copyright 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.iplanet.am.util;
@@ -120,7 +121,7 @@ public static String getMapAttr(Map m, String name, String defaultValue) {
* when fails to parse the defaultValue argument as a signed
* decimal integer for return
* @deprecated As of OpenSSO version 8.0
- * {@link com.sun.identity.shared.datastruct.CollectionHelper#getIntMapAttr(Map, String, String, Debug)}
+ * {@link com.sun.identity.shared.datastruct.CollectionHelper#getIntMapAttr(Map, String, int, Debug)}
*/
public static int getIntMapAttr(Map m, String name, String defaultValue,
Debug debug) throws NumberFormatException {
diff --git a/openam-core/src/main/java/com/iplanet/am/util/QCharset.java b/openam-core/src/main/java/com/iplanet/am/util/QCharset.java
index 14d3a806e3..509f32b052 100644
--- a/openam-core/src/main/java/com/iplanet/am/util/QCharset.java
+++ b/openam-core/src/main/java/com/iplanet/am/util/QCharset.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -46,7 +47,7 @@ public class QCharset implements Comparable {
* Construct a QCharset object.
*
* @param name Name of the charset.
- * @param q Q factor to express preference. 0.0 < q < 1.0.
+ * @param q Q factor to express preference. {@code 0.0 < q < 1.0}.
* Constructs new QCharset set object with charset
* name and q value.
*/
diff --git a/openam-core/src/main/java/com/iplanet/am/util/SystemProperties.java b/openam-core/src/main/java/com/iplanet/am/util/SystemProperties.java
index c17780d002..715e473588 100644
--- a/openam-core/src/main/java/com/iplanet/am/util/SystemProperties.java
+++ b/openam-core/src/main/java/com/iplanet/am/util/SystemProperties.java
@@ -23,7 +23,7 @@
* "Portions Copyrighted [year] [name of copyright owner]"
*
* Portions Copyrighted 2010-2016 ForgeRock AS.
- * Portions Copyrighted 2017-2025 3A Systems, LLC
+ * Portions Copyrighted 2017-2026 3A Systems, LLC
*/
package com.iplanet.am.util;
@@ -84,7 +84,7 @@
* AMConfig-<serverName>.
+ * AMConfig-<serverName>.
*
*/
public class SystemProperties {
@@ -457,11 +457,11 @@ public static Properties getPlatform() {
}
/**
- * Initializes properties bundle from the file
+ * Initializes properties bundle from the file
* passed.
*
* @param file type String, file name for the resource bundle
- * @exception MissingResourceException
+ * @exception MissingResourceException if the resource bundle for the given file cannot be found
*/
public static void initializeProperties(String file) throws MissingResourceException {
Properties props = new Properties();
diff --git a/openam-core/src/main/java/com/iplanet/am/util/ThreadPool.java b/openam-core/src/main/java/com/iplanet/am/util/ThreadPool.java
index 562c6cf8d1..7614aa1223 100644
--- a/openam-core/src/main/java/com/iplanet/am/util/ThreadPool.java
+++ b/openam-core/src/main/java/com/iplanet/am/util/ThreadPool.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -141,9 +142,9 @@ private WorkerThread getAvailableThread() {
*
* @param task
* user defined task.
- * @throws ThreadPoolException
+ * @throws ThreadPoolException if the thread pool is being shut down and no more tasks can be accepted
*/
- public final void run(Runnable task) throws ThreadPoolException
+ public final void run(Runnable task) throws ThreadPoolException
{
WorkerThread t = null;
synchronized (this) {
diff --git a/openam-core/src/main/java/com/iplanet/dpro/session/ClientSdkSessionRequests.java b/openam-core/src/main/java/com/iplanet/dpro/session/ClientSdkSessionRequests.java
index 749558d123..7cfbcc670e 100644
--- a/openam-core/src/main/java/com/iplanet/dpro/session/ClientSdkSessionRequests.java
+++ b/openam-core/src/main/java/com/iplanet/dpro/session/ClientSdkSessionRequests.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2014-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.iplanet.dpro.session;
@@ -59,7 +60,7 @@ public ClientSdkSessionRequests(final Debug debug, final SessionPLLSender pllSen
*
* @param svcurl Session Service URL.
* @param sreq Session Request object.
- * @exception SessionException
+ * @exception SessionException if the session request could not be sent or the response indicates an error.
*/
public SessionResponse sendRequest(URL svcurl, SessionRequest sreq, Session session) throws SessionException {
SessionResponse sres;
diff --git a/openam-core/src/main/java/com/iplanet/dpro/session/Session.java b/openam-core/src/main/java/com/iplanet/dpro/session/Session.java
index 40b6e73cac..82ae560a9a 100644
--- a/openam-core/src/main/java/com/iplanet/dpro/session/Session.java
+++ b/openam-core/src/main/java/com/iplanet/dpro/session/Session.java
@@ -319,7 +319,7 @@ public long getMaxIdleTime() {
* Returns true if the session has timed out.
* @return true if session timed out,
* falseotherwise
- * @exception SessionException
+ * @exception SessionException if an error occurs while determining the session state.
*/
public boolean isTimedOut() throws SessionException {
/**
@@ -464,7 +464,7 @@ public String getProperty(String name) throws SessionException {
* @param session Must be an app token
* @param restrictedId The SSOTokenID of the restricted token
* @return The SSOTokenID string of the master token
- * @throws SSOException If the master token cannot be dereferenced
+ * @throws SessionException If the master token cannot be dereferenced
*/
public String dereferenceRestrictedTokenID(Session session, String restrictedId) throws SessionException {
String masterSID;
@@ -485,7 +485,7 @@ public String dereferenceRestrictedTokenID(Session session, String restrictedId)
* restricted token, false otherwise.
*
* @return true if the token is restricted
- * @throws SSOException If we are unable to determine if the session is
+ * @throws SessionException If we are unable to determine if the session is
* restricted
*/
public boolean isRestricted() throws SessionException {
diff --git a/openam-core/src/main/java/com/iplanet/dpro/session/SessionID.java b/openam-core/src/main/java/com/iplanet/dpro/session/SessionID.java
index 6f1cf6e901..7e9d8a7118 100644
--- a/openam-core/src/main/java/com/iplanet/dpro/session/SessionID.java
+++ b/openam-core/src/main/java/com/iplanet/dpro/session/SessionID.java
@@ -25,7 +25,7 @@
* $Id: SessionID.java,v 1.10 2009/10/02 23:45:42 qcheng Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.iplanet.dpro.session;
@@ -445,7 +445,7 @@ public String getTail() {
/**
* Returns the if the cookies are supported.
*
- * @return Boolean object value which is Boolean.TRUE
+ * if
+ * @return Boolean object value which is Boolean.URLTRUE if
* supported FALSE otherwise
*/
public Boolean getCookieMode() {
@@ -523,7 +523,7 @@ static String makeSessionID(String encryptedID, SessionIDExtensions extensions,
* @param encryptedID encrypted ID.
* @param prototype session ID to copy extensions and tail from
* @return encoded session id
- * @throws SessionException
+ * @throws SessionException if the prototype session id cannot be parsed
*/
public static String makeRelatedSessionID(String encryptedID,
SessionID prototype) throws SessionException {
@@ -700,7 +700,7 @@ private static String generateEncryptedID(SessionServerConfig serverConfig) {
* @param domain session domain
*
* @return newly generated session id
- * @throws SessionException
+ * @throws SessionException if the session id cannot be generated
*/
public static SessionID generateSessionID(SessionServerConfig serverConfig, String domain) throws SessionException {
diff --git a/openam-core/src/main/java/com/iplanet/dpro/session/operations/ClientSdkSessionOperationStrategy.java b/openam-core/src/main/java/com/iplanet/dpro/session/operations/ClientSdkSessionOperationStrategy.java
index 7737242113..cf41019232 100644
--- a/openam-core/src/main/java/com/iplanet/dpro/session/operations/ClientSdkSessionOperationStrategy.java
+++ b/openam-core/src/main/java/com/iplanet/dpro/session/operations/ClientSdkSessionOperationStrategy.java
@@ -1,5 +1,6 @@
/**
* Copyright 2014-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms of the Common Development and
* Distribution License (the License). You may not use this file except in compliance with the
@@ -27,7 +28,7 @@ public class ClientSdkSessionOperationStrategy implements SessionOperationStrate
/**
* Default constructor appropriate for Client SDK usage.
- * @param clientSdkOperations
+ * @param clientSdkOperations the ClientSdkOperations used to perform remote session operations
*/
public ClientSdkSessionOperationStrategy(ClientSdkOperations clientSdkOperations) {
this.clientSdkOperations = clientSdkOperations;
diff --git a/openam-core/src/main/java/com/iplanet/dpro/session/operations/strategies/ClientSdkOperations.java b/openam-core/src/main/java/com/iplanet/dpro/session/operations/strategies/ClientSdkOperations.java
index 0148d52094..86219c9ee0 100644
--- a/openam-core/src/main/java/com/iplanet/dpro/session/operations/strategies/ClientSdkOperations.java
+++ b/openam-core/src/main/java/com/iplanet/dpro/session/operations/strategies/ClientSdkOperations.java
@@ -75,8 +75,8 @@ public ClientSdkOperations(final Debug sessionDebug,
*
* @param session The Session to update.
* @param reset If true, then update the last modified timestamp of the Session.
- * @return
- * @throws SessionException
+ * @return the refreshed SessionInfo for the given session
+ * @throws SessionException if the session could not be refreshed
*/
public SessionInfo refresh(Session session, boolean reset) throws SessionException {
SessionID sessionID = session.getID();
diff --git a/openam-core/src/main/java/com/iplanet/dpro/session/operations/strategies/LocalOperations.java b/openam-core/src/main/java/com/iplanet/dpro/session/operations/strategies/LocalOperations.java
index 4a668bc5ce..2c3f078be4 100644
--- a/openam-core/src/main/java/com/iplanet/dpro/session/operations/strategies/LocalOperations.java
+++ b/openam-core/src/main/java/com/iplanet/dpro/session/operations/strategies/LocalOperations.java
@@ -298,7 +298,7 @@ private InternalSession resolveRestrictedToken(SessionID token,
* @param masterSessionId master session id
* @param restriction TokenRestriction Object
* @return restricted token id
- * @throws SessionException
+ * @throws SessionException if the master session cannot be located or the restricted token cannot be created
*/
public String getRestrictedTokenId(final SessionID masterSessionId,
final TokenRestriction restriction) throws SessionException {
@@ -352,8 +352,8 @@ public Session resolveSession(SessionID sessionID) throws SessionException {
* Gets all valid Internal Sessions, depending on the value of the user's
* preferences.
*
- * @param s
- * @throws SessionException
+ * @param s the requesting session used to authorize the search
+ * @throws SessionException if the valid sessions cannot be retrieved
*/
@Override
public SearchResults true if the session is successfully activated
* after creation , false otherwise
*/
@@ -850,7 +850,7 @@ public void setLatestAccessTime() {
/**
* Sets the {@link SessionState} of the Internal Session.
*
- * @param sessionState
+ * @param sessionState the new session state to set
*/
public void setState(SessionState sessionState) {
if (this.sessionState != sessionState) {
diff --git a/openam-core/src/main/java/com/iplanet/dpro/session/service/SessionConstraint.java b/openam-core/src/main/java/com/iplanet/dpro/session/service/SessionConstraint.java
index 54abb0fc23..4f9bfcce6f 100644
--- a/openam-core/src/main/java/com/iplanet/dpro/session/service/SessionConstraint.java
+++ b/openam-core/src/main/java/com/iplanet/dpro/session/service/SessionConstraint.java
@@ -26,6 +26,7 @@
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
* Portions Copyrighted 2016 Nomura Research Institute, Ltd.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.iplanet.dpro.session.service;
@@ -117,7 +118,7 @@ static SessionQueryManager getSessionQueryManager(){
* Check if the session quota for a given user has been exhausted and
* perform necessary actions in such as case.
*
- * @param internalSession
+ * @param internalSession the internal session whose owner's session quota is checked
* @return true if the session activation request should be rejected, false otherwise.
*/
protected boolean checkQuotaAndPerformAction(InternalSession internalSession) {
diff --git a/openam-core/src/main/java/com/iplanet/dpro/session/service/SessionMaxStats.java b/openam-core/src/main/java/com/iplanet/dpro/session/service/SessionMaxStats.java
index 61869c3414..d8c0327530 100644
--- a/openam-core/src/main/java/com/iplanet/dpro/session/service/SessionMaxStats.java
+++ b/openam-core/src/main/java/com/iplanet/dpro/session/service/SessionMaxStats.java
@@ -25,7 +25,7 @@
* $Id: SessionMaxStats.java,v 1.4 2008/06/25 05:41:31 qcheng Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.iplanet.dpro.session.service;
@@ -55,8 +55,8 @@ public class SessionMaxStats implements StatsListener {
/**
* Creates a new SessionMaxStats
* @param sessionAccessManager session accessManagement
- * @param sessionNotificationSender
- * @param stats
+ * @param sessionNotificationSender the sender used to dispatch session notifications
+ * @param stats the statistics holder used to record session metrics
*/
@Inject
public SessionMaxStats(
diff --git a/openam-core/src/main/java/com/iplanet/dpro/session/service/SessionService.java b/openam-core/src/main/java/com/iplanet/dpro/session/service/SessionService.java
index 91d38fa573..b4de904b96 100644
--- a/openam-core/src/main/java/com/iplanet/dpro/session/service/SessionService.java
+++ b/openam-core/src/main/java/com/iplanet/dpro/session/service/SessionService.java
@@ -106,7 +106,7 @@ private SessionService(
* @param masterSid master session id
* @param restriction TokenRestriction Object
* @return restricted token id
- * @throws SessionException
+ * @throws SessionException if the restricted token cannot be created
*/
public String getRestrictedTokenId(String masterSid, TokenRestriction restriction) throws SessionException {
SessionID sessionID = new SessionID(masterSid);
@@ -155,7 +155,7 @@ public void destroySession(Session requester, SessionID sessionToDestroy) throws
/**
* Destroy a Internal Session, whose session id has been specified.
*
- * @param sessionID
+ * @param sessionID the session id of the authentication session to destroy
*/
public void destroyAuthenticationSession(final SessionID sessionID) {
InternalSession authenticationSession = InjectorHolder.getInstance(AuthenticationSessionStore.class).removeSession(sessionID);
@@ -192,9 +192,9 @@ public boolean checkSessionExists(SessionID sessionId) throws SessionException {
/**
* Returns the Session information.
*
- * @param sid
- * @param reset
- * @throws SessionException
+ * @param sid the session id to retrieve information for
+ * @param reset whether to reset the idle time of the session
+ * @throws SessionException if the session information cannot be retrieved
*/
public SessionInfo getSessionInfo(SessionID sid, boolean reset) throws SessionException {
return sessionOperationStrategy.getOperation(sid).getSessionInfo(sid, reset);
@@ -204,8 +204,9 @@ public SessionInfo getSessionInfo(SessionID sid, boolean reset) throws SessionEx
* Gets all valid Internal Sessions, depending on the value of the user's
* preferences.
*
- * @param s
- * @throws SessionException
+ * @param s the requesting session
+ * @param pattern the search pattern used to match sessions
+ * @throws SessionException if the valid sessions cannot be retrieved
*/
public SearchResultsSessionEncodeURL class encodes the SessionEncodeURL class encodes the URL
* with the cookie value as a query string
* or extra path info based on the encoding scheme.
* protocol://server:port/servletpath/<cookieName>=<cookieValue>?
+ * protocol://server:port/servletpath/<cookieName>=<cookieValue>?
* queryString
* protocol://server:port/path;<cookieName=cookieValue>
+ * protocol://server:port/path;<cookieName=cookieValue>
* ?queryString
* Note that this is not supported in the servlet specification and
* some web containers do not support this.
@@ -70,8 +70,8 @@
* If the encoding scheme is QUERY then the cookie value would be
* written in the URL in the following format:
*
- * protocol://server:port/path?<cookieName>=<cookieValue>
- * protocol://server:port/path?queryString&<cookieName>=<cookieValue>
+ * protocol://server:port/path?<cookieName>=<cookieValue>
+ * protocol://server:port/path?queryString&<cookieName>=<cookieValue>
*
* SEMICOLON, encodedURL
* format will be:
* protocol://server:port/path;cookieName=cookieValue
- * SessionNotification class represents a
* SessionNotification XML document. The
* SessionNotification DTD is defined as the following:
- *
* <?xml version="1.0">
* < !DOCTYPE SessionNotification [
@@ -61,8 +61,7 @@
* < !ELEMENT Time (#PCDATA)>
* ]>
*
- *
- * SessionRequest class represents a
* SessionRequest XML document. The SessionRequest
* DTD is defined as the following:
- *
* <?xml version="1.0">
@@ -74,8 +74,6 @@
* < !ELEMENT Pattern (#PCDATA)>
* ]>
*
- *
- * SessionResponse class represents a
* SessionResponse XML document. The SessionResponse
* DTD is defined as the following:
- *
* <?xml version="1.0">
* < !DOCTYPE SessionResponse [
@@ -97,8 +97,6 @@
* < !ELEMENT Status (#PCDATA)>
* ]>
*
- *
- * PLLNotificationServlet class is used to receive
* notifications from servers and forward those notifications to the high level
* services and applications for processing.
- * PLLRequestServlet class is used to receive requests from
* applications and forward those requests to the corresponding servers for
* processing.
- * RequestHandler interface needs to be implemented by high
* level services and applications in order to be able to receive requests from
* the Platform Low Level API.
- * NotificationSet class represents a NotificationSet XML
* document. The NotificationSet DTD is defined as the following:
- *
* <?xml version="1.0">
* < !-- This DTD is used by PLL -->
@@ -49,8 +49,7 @@
* dtdid CDATA #IMPLIED>
* ]>
*
- *
- * RequestSet class represents a RequestSet XML document.
* The RequestSet DTD is defined as the following:
- *
* <?xml version="1.0">
* < !-- This DTD is used by PLL -->
@@ -56,8 +56,7 @@
* sid CDATA #IMPLIED>
* ]>
*
- *
- * ResponseSet class represents a ResponseSet XML document.
* The ResponseSet DTD is defined as the following:
- *
* <?xml version="1.0">
* < !-- This DTD is used by PLL -->
@@ -52,8 +52,7 @@
* dtdid CDATA #IMPLIED>
* ]>
*
- *
- *
*
LDAPModification.ADD (the value should be added to the attribute)
* LDAPModification.DELETE (the value should be removed from the attribute)
* LDAPModification.REPLACE (the value should replace the existing value of the attribute)
- * LDAPModification.BVALUES.
- * NamingRequest class represents a NamingRequest XML
* document. The NamingRequest DTD is defined as the following:
- *
* <?xml version="1.0">
* < !DOCTYPE NamingRequest [
@@ -47,8 +47,6 @@
* < !ELEMENT GetNamingProfile EMPTY>
* ]>
*
- *
- *
NamingResponse class represents a NamingResponse XML
* document. The NamingResponse DTD is defined as the following:
- *
- *
+ *
* * <?xml version="1.0"> * < !DOCTYPE NamingResponse [ @@ -55,8 +55,6 @@ * < !ELEMENT Exception (#PCDATA)> * ]> *- * - * */ public class NamingResponse { diff --git a/openam-core/src/main/java/com/iplanet/services/util/I18n.java b/openam-core/src/main/java/com/iplanet/services/util/I18n.java index 21929b7e9e..33cbd64977 100644 --- a/openam-core/src/main/java/com/iplanet/services/util/I18n.java +++ b/openam-core/src/main/java/com/iplanet/services/util/I18n.java @@ -2,6 +2,7 @@ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. * * Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved + * Portions Copyrighted 2026 3A Systems, LLC * * The contents of this file are subject to the terms * of the Common Development and Distribution License @@ -333,7 +334,7 @@ private static String format(MessageFormat mf, Object o) { * @param pattern * pattern for which the message to be formatted * @param j - * Object to be formatted & substituted + * Object to be formatted & substituted * @param l * locale in a string format * @return Returns the formatted message @@ -353,7 +354,7 @@ public static String format(String pattern, Long j, String l) { * @param pattern * pattern for which the message to be formatted * @param i - * Integer to be formatted & substituted + * Integer to be formatted & substituted * @param l * locale in a string format * @return Returns the formatted message diff --git a/openam-core/src/main/java/com/iplanet/services/util/ParseOutput.java b/openam-core/src/main/java/com/iplanet/services/util/ParseOutput.java index 027eb7b6b2..63a061344b 100644 --- a/openam-core/src/main/java/com/iplanet/services/util/ParseOutput.java +++ b/openam-core/src/main/java/com/iplanet/services/util/ParseOutput.java @@ -2,6 +2,7 @@ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. * * Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved + * Portions Copyrighted 2026 3A Systems, LLC * * The contents of this file are subject to the terms * of the Common Development and Distribution License @@ -34,7 +35,6 @@ /** * Application shall implement this interface and store the result in the XML * DOM tree. - * */ public interface ParseOutput { /** diff --git a/openam-core/src/main/java/com/iplanet/services/util/XMLParser.java b/openam-core/src/main/java/com/iplanet/services/util/XMLParser.java index 3543671a03..04f8222100 100644 --- a/openam-core/src/main/java/com/iplanet/services/util/XMLParser.java +++ b/openam-core/src/main/java/com/iplanet/services/util/XMLParser.java @@ -2,6 +2,7 @@ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. * * Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved + * Portions Copyrighted 2026 3A Systems, LLC * * The contents of this file are subject to the terms * of the Common Development and Distribution License @@ -137,8 +138,8 @@ public XMLParser() { *
* Use default GenericNode as node type if usegeneric is true. *
- * - * @param usegeneric + * + * @param usegeneric if true, use the default GenericNode as the node type */ public XMLParser(boolean usegeneric, Map groupContainer) { useGenericClass = usegeneric; diff --git a/openam-core/src/main/java/com/iplanet/sso/SSOTokenManager.java b/openam-core/src/main/java/com/iplanet/sso/SSOTokenManager.java index c3d023b361..f622878d91 100644 --- a/openam-core/src/main/java/com/iplanet/sso/SSOTokenManager.java +++ b/openam-core/src/main/java/com/iplanet/sso/SSOTokenManager.java @@ -25,7 +25,7 @@ * $Id: SSOTokenManager.java,v 1.7 2009/02/18 23:59:36 qcheng Exp $ * * Portions copyright 2014-2016 ForgeRock AS. - * Portions Copyrighted 2025 3A Systems LLC. + * Portions Copyrighted 2025-2026 3A Systems LLC. */ package com.iplanet.sso; @@ -361,7 +361,7 @@ public SSOToken createSSOToken(Principal user, String password) * @exception SSOException * if the single sign on token cannot be created. * @exception UnsupportedOperationException - * + * if the operation is not supported by the provider. */ public SSOToken createSSOToken(String tokenId) throws UnsupportedOperationException, SSOException { @@ -391,7 +391,7 @@ public SSOToken createSSOToken(String tokenId) * @exception SSOException * if the single sign on token cannot be created. * @exception UnsupportedOperationException - * + * if the operation is not supported by the provider. */ public SSOToken createSSOToken(String tokenId, String clientIP) throws UnsupportedOperationException, SSOException { diff --git a/openam-core/src/main/java/com/iplanet/sso/providers/dpro/SSOPrincipal.java b/openam-core/src/main/java/com/iplanet/sso/providers/dpro/SSOPrincipal.java index 7cfb258468..9cfde2f1d8 100644 --- a/openam-core/src/main/java/com/iplanet/sso/providers/dpro/SSOPrincipal.java +++ b/openam-core/src/main/java/com/iplanet/sso/providers/dpro/SSOPrincipal.java @@ -25,6 +25,7 @@ * $Id: SSOPrincipal.java,v 1.2 2008/06/25 05:41:42 qcheng Exp $ * * Portions Copyrighted 2015 ForgeRock AS. + * Portions Copyrighted 2026 3A Systems, LLC */ package com.iplanet.sso.providers.dpro; @@ -43,7 +44,7 @@ public class SSOPrincipal implements java.security.Principal { /** * Creates a SSOPrincipal object * - * @param String The name of the principal + * @param name The name of the principal */ public SSOPrincipal(String name) { @@ -53,7 +54,7 @@ public SSOPrincipal(String name) { /** * Compares this principal to the specified object. Returns true * if the object passed in matches the principal. - * @param Object The object to be compared + * @param object The object to be compared * @returntrueif the principal match.
* false
*/
diff --git a/openam-core/src/main/java/com/iplanet/sso/providers/dpro/SSOProviderImpl.java b/openam-core/src/main/java/com/iplanet/sso/providers/dpro/SSOProviderImpl.java
index 1e5af06217..bd47c06a49 100644
--- a/openam-core/src/main/java/com/iplanet/sso/providers/dpro/SSOProviderImpl.java
+++ b/openam-core/src/main/java/com/iplanet/sso/providers/dpro/SSOProviderImpl.java
@@ -28,7 +28,7 @@
/**
* Portions copyright 2013-2016 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.iplanet.sso.providers.dpro;
@@ -86,8 +86,8 @@ public final class SSOProviderImpl implements SSOProvider {
/**
* Constructs a instance of SSOProviderImpl
*
- * @throws SSOException
- *
+ * @throws SSOException if the provider cannot be initialized
+ *
*/
public SSOProviderImpl() throws SSOException {
this(SessionCache.getInstance());
@@ -229,7 +229,7 @@ public SSOToken createSSOToken(String tokenId, boolean invokedByAuth, boolean po
* @param tokenId single sign on token ID.
* @return single sign on token.
* @throws SSOException if the single sign on token cannot be created.
- * @throws UnsupportedOperationException
+ * @throws UnsupportedOperationException if this operation is not supported
* @deprecated Use #createSSOToken(String, String)
*/
public SSOToken createSSOToken(String tokenId)
diff --git a/openam-core/src/main/java/com/iplanet/sso/providers/dpro/SSOTokenIDImpl.java b/openam-core/src/main/java/com/iplanet/sso/providers/dpro/SSOTokenIDImpl.java
index 51f021eb64..93ca9bdc4e 100644
--- a/openam-core/src/main/java/com/iplanet/sso/providers/dpro/SSOTokenIDImpl.java
+++ b/openam-core/src/main/java/com/iplanet/sso/providers/dpro/SSOTokenIDImpl.java
@@ -25,6 +25,7 @@
* $Id: SSOTokenIDImpl.java,v 1.2 2008/06/25 05:41:43 qcheng Exp $
*
* Portions Copyrighted 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.iplanet.sso.providers.dpro;
@@ -73,7 +74,7 @@ public String toString() {
* and only if the argument is not null and the random string and server
* name are the same in both objects.
*
- * @param an
+ * @param object
* Object - the object to compare this SessionID against.
* @return true if the SessionID are equal; false otherwise.
*/
diff --git a/openam-core/src/main/java/com/iplanet/ums/ConfigManagerUMS.java b/openam-core/src/main/java/com/iplanet/ums/ConfigManagerUMS.java
index 3d90587d45..1db65cb48d 100644
--- a/openam-core/src/main/java/com/iplanet/ums/ConfigManagerUMS.java
+++ b/openam-core/src/main/java/com/iplanet/ums/ConfigManagerUMS.java
@@ -25,6 +25,7 @@
* $Id: ConfigManagerUMS.java,v 1.6 2009/01/28 05:34:50 ww203982 Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.iplanet.ums;
@@ -69,7 +70,6 @@
* Configuration Manager is responsible for getting configuration parameters for
* UMS. ConfigManager is implemented as a singleton and the configurations can
* be accessed as follows:
- * * *
* ConfigManager cm = ConfigManager.getConfigManager();
@@ -87,8 +87,7 @@
* speeds up the retrieval in caching the configurations at start up time once
* as a singleton and share it among the ums package. ConfigManager uses the
* default PROXY as AuthPrincipal for this instance of the server.
- *
- *
+ *
*/
public class ConfigManagerUMS implements java.io.Serializable {
@@ -657,7 +656,7 @@ public Set getConfigTemplateNames(Guid guid, String template, int lookup)
* applies.
* @return Collection of attrSets pertaining to the structure
* templates in the DIT.
- * @throws ConfigManagerException.
+ * @throws ConfigManagerException if the entity information cannot be retrieved
*/
public Set getEntity(Guid guid, String name) throws ConfigManagerException {
Set ret = (Set) getConfigData(guid, name, ENTITY,
@@ -680,7 +679,7 @@ public Set getEntity(Guid guid, String name) throws ConfigManagerException {
* ConfigManager to begin searching for DIT
* information (for structural entities).
* @param templateName Template name.
- * @param lookup
+ * @param lookup the lookup scope used when searching for the template
* @return AttrSet value pertaining to the structural template
* in the DIT. Usage:
*
@@ -692,7 +691,7 @@ public Set getEntity(Guid guid, String name) throws ConfigManagerException {
* matching BasicUserSearch and returns the first one
* matched. If found in cache, it returns that. Else it looks it up
* in the Directory through SMS (traverses the tree if need be).
- * @throws ConfigManagerException.
+ * @throws ConfigManagerException if the search template cannot be retrieved
*/
public AttrSet getSearchTemplate(Guid guid, String templateName, int lookup)
throws ConfigManagerException {
@@ -711,7 +710,7 @@ public AttrSet getSearchTemplate(Guid guid, String templateName, int lookup)
* ConfigManager to begin searching for DIT information
* (for structural entities).
* @param templateName Template name.
- * @param lookup
+ * @param lookup the lookup scope used when searching for the template
* @return AttrSet value pertaining to the structural template
* in the DIT. Usage:
*
@@ -723,7 +722,7 @@ public AttrSet getSearchTemplate(Guid guid, String templateName, int lookup)
* matching BasicUser and returns the first one
* matched. If found in cache, it returns that. Else it looks it
* up in the Directory through SMS (traverses the tree if need be)
- * @throws ConfigManagerException.
+ * @throws ConfigManagerException if the creation template cannot be retrieved
*/
public AttrSet getCreationTemplate(
Guid guid,
@@ -747,7 +746,7 @@ public AttrSet getCreationTemplate(
*
* @param guid Organization DN.
* @param className Name of javaclass Attribute to be matched.
- * @param lookup
+ * @param lookup the lookup scope used when searching for the template
* @return Attribute key-value pair of Creation templates. Usage:
*
* AttrSet a = CM.getCreationTemplateForClass(
@@ -795,7 +794,7 @@ public Set getCreationTemplateNames(Guid guid)
*
* @param guid Organization to look under.
* @return Set of template name.
- * @throws ConfigManagerException.
+ * @throws ConfigManagerException if the search template names cannot be retrieved
*/
public Set getSearchTemplateNames(Guid guid) throws ConfigManagerException {
return getConfigTemplateNames(guid, SEARCH, TemplateManager.SCOPE_ORG);
@@ -811,8 +810,8 @@ public Set getSearchTemplateNames(Guid guid) throws ConfigManagerException {
* exist under any other organization except the root.
*
* @return an array of Objectclass/Javaclass pairs.
- * @exception ConfigManagerException.
- *
+ * @exception ConfigManagerException if the class resolver cannot be retrieved
+ *
* Usage: String[][] a = CM.getClassResolver() Looks up the attributes at
* the top level /ObjectResolver/templates/iDA Caches it first.
*/
@@ -831,7 +830,7 @@ public String[][] getClassResolver() throws ConfigManagerException {
* @param guid the GUID it is looking under.
* @param templateName Name of the template.
* @param attrSet attribute-values pair to be replaced.
- * @exception ConfigManagerException.
+ * @exception ConfigManagerException if the creation template cannot be replaced
*/
public void replaceCreationTemplate(Guid guid, String templateName,
AttrSet attrSet) throws ConfigManagerException {
diff --git a/openam-core/src/main/java/com/iplanet/ums/DataLayer.java b/openam-core/src/main/java/com/iplanet/ums/DataLayer.java
index 0940430257..5ee97effa1 100644
--- a/openam-core/src/main/java/com/iplanet/ums/DataLayer.java
+++ b/openam-core/src/main/java/com/iplanet/ums/DataLayer.java
@@ -25,6 +25,7 @@
* $Id: DataLayer.java,v 1.19 2009/11/20 23:52:52 ww203982 Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.iplanet.ums;
@@ -418,7 +419,7 @@ public Collection getAttributes(Principal principal, Guid guid, Collection
* @param principal Authenticated Principal.
* @param guid Distinguished name.
* @param attrSet attribute set containing name/value pairs.
- * @exception AccessRightsException if insufficient access>
+ * @exception AccessRightsException if insufficient access
* @exception EntryAlreadyExistsException if the entry already exists.
* @exception UMSException if fail to add entry.
*
@@ -991,10 +992,8 @@ public SearchResults searchIDs(
* insufficient access
* @exception UMSException
* Fail to fetch the schema.
- * @exception LdapException
- * Error with LDAP connection.
*
- *
+ *
*/
public Schema getSchema(java.security.Principal principal) throws UMSException {
ResultCode errorCode;
diff --git a/openam-core/src/main/java/com/iplanet/ums/ISearch.java b/openam-core/src/main/java/com/iplanet/ums/ISearch.java
index cf881b4056..debef07dca 100644
--- a/openam-core/src/main/java/com/iplanet/ums/ISearch.java
+++ b/openam-core/src/main/java/com/iplanet/ums/ISearch.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -40,7 +41,6 @@
* Examples:
*
* To modify a user's telphone number
- *
*
*
* SearchResults searchResults =
@@ -55,7 +55,6 @@
*
*
* To read data using VLV
- *
*
*
* SearchControl searchControl = new SearchControl();
@@ -141,7 +140,7 @@ public SearchResults getChildren(SearchTemplate template,
* search filter
* @param searchControl
* search control, use default setting if searchControl == null
- * @exception com.iplanet.ums.UMSException
+ * @exception com.iplanet.ums.UMSException if the search operation cannot be performed.
* @return An search result class for reading IDs.
* @exception InvalidSearchFilterException
* if search filter is invalid.
@@ -161,8 +160,8 @@ public SearchResults search(String filter, SearchControl searchControl)
* @param searchControl Search control, use default setting if
* searchControl is null.
* @return An search result class for reading entries.
- * @exception InvalidSearchFilterException
- * @exception UMSException
+ * @exception InvalidSearchFilterException if the search filter is invalid.
+ * @exception UMSException if no result matches.
*/
public SearchResults search(
String filter,
@@ -179,7 +178,7 @@ public SearchResults search(
* search template
* @param searchControl
* search control, use default setting if searchControl == null
- * @exception com.iplanet.ums.UMSException
+ * @exception com.iplanet.ums.UMSException if the search operation cannot be performed.
*/
public SearchResults search(SearchTemplate template,
SearchControl searchControl) throws UMSException;
diff --git a/openam-core/src/main/java/com/iplanet/ums/Organization.java b/openam-core/src/main/java/com/iplanet/ums/Organization.java
index 17d8a9dc71..45b68c8beb 100644
--- a/openam-core/src/main/java/com/iplanet/ums/Organization.java
+++ b/openam-core/src/main/java/com/iplanet/ums/Organization.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -184,7 +185,7 @@ public String getName() throws UMSException {
/**
* Get roles associated with the organization
- *
+ *
* TODO: Not yet implemented
*
* @return guid identifying roles object under the organization
@@ -196,7 +197,7 @@ public String getName() throws UMSException {
/**
* Get groups of which the organization is a member.
- *
+ *
* TODO: Not yet implemented
*
* @return guids identifying groups that the organization is a member of
@@ -245,13 +246,12 @@ private String getPeopleContainer(User user) throws UMSException {
* @param filter
* filter representation of the rule. Accepts filter string with
* the following format:
- *
- *
+ *
*
*
- * <filter> ::= <and> | <item> <and> ::= '(' '&'
- * <itemlist> ')' <itemlist> ::= <item> | <item>
- * <itemlist> <item> ::= '(' <attr> '=' <value>
+ * <filter> ::= <and> | <item> <and> ::= '(' '&'
+ * <itemlist> ')' <itemlist> ::= <item> | <item>
+ * <itemlist> <item> ::= '(' <attr> '=' <value>
* ')'
*
*
diff --git a/openam-core/src/main/java/com/iplanet/ums/PCMappingTable.java b/openam-core/src/main/java/com/iplanet/ums/PCMappingTable.java
index 411b8c2de2..d753b0d32f 100644
--- a/openam-core/src/main/java/com/iplanet/ums/PCMappingTable.java
+++ b/openam-core/src/main/java/com/iplanet/ums/PCMappingTable.java
@@ -25,6 +25,7 @@
* $Id: PCMappingTable.java,v 1.3 2009/01/28 05:34:50 ww203982 Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.iplanet.ums;
@@ -203,9 +204,9 @@ private String getDefault(AttrSet attrSet) {
*
*
*
- * <filter> ::= <and> | <item> <and> ::= '(' '&'
- * <itemlist> ')' <itemlist> ::= <item> | <item>
- * <itemlist> <item> ::= '(' <attr> '=' <value> ')'
+ * <filter> ::= <and> | <item> <and> ::= '(' '&'
+ * <itemlist> ')' <itemlist> ::= <item> | <item>
+ * <itemlist> <item> ::= '(' <attr> '=' <value> ')'
*
*
*
diff --git a/openam-core/src/main/java/com/iplanet/ums/PeopleContainer.java b/openam-core/src/main/java/com/iplanet/ums/PeopleContainer.java
index 7bef4a9d83..8f765bc1f1 100644
--- a/openam-core/src/main/java/com/iplanet/ums/PeopleContainer.java
+++ b/openam-core/src/main/java/com/iplanet/ums/PeopleContainer.java
@@ -25,6 +25,7 @@
* $Id: PeopleContainer.java,v 1.4 2009/01/28 05:34:50 ww203982 Exp $
*
* Portions Copyright 2015-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.iplanet.ums;
@@ -101,7 +102,7 @@ public PeopleContainer(CreationTemplate template, AttrSet attrSet)
*
* @param user
* User object to be added to the container
- * @exception AccessRightsEsception
+ * @exception AccessRightsException
* if an access rights exception occurs
* @exception EntryAlreadyExistsException
* if the entry already exists
@@ -119,7 +120,7 @@ public void addUser(User user) throws AccessRightsException,
*
* @param pc
* People Container object to be added to the container
- * @exception AccessRightsEsception
+ * @exception AccessRightsException
* if an access rights exception occurs
* @exception EntryAlreadyExistsException
* if the entry already exists
@@ -138,7 +139,7 @@ public void addChildPeopleContainer(PeopleContainer pc)
*
* @param user
* User object to be removed to the container
- * @exception AccessRightsEsception
+ * @exception AccessRightsException
* if an access rights exception occurs
* @exception UMSException
* fails to remove the object
@@ -154,7 +155,7 @@ public void removeUser(User user) throws AccessRightsException,
*
* @param pc
* People Container object to be removed to the container
- * @exception AccessRightsEsception
+ * @exception AccessRightsException
* if an access rights exception occurs
* @exception EntryNotFoundException
* if the entry is not found
diff --git a/openam-core/src/main/java/com/iplanet/ums/PersistentObject.java b/openam-core/src/main/java/com/iplanet/ums/PersistentObject.java
index bb31ede0b7..87e1269b73 100644
--- a/openam-core/src/main/java/com/iplanet/ums/PersistentObject.java
+++ b/openam-core/src/main/java/com/iplanet/ums/PersistentObject.java
@@ -25,6 +25,7 @@
* $Id: PersistentObject.java,v 1.8 2009/07/02 20:27:01 hengming Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.iplanet.ums;
@@ -124,13 +125,12 @@ protected PersistentObject() {
/**
* Constructor for in memory object to be added to the system. You can make
* the object persistent two ways:
- *
+ *
*
* 1) call add on parent object (recommended)
- *
+ *
* 2) call save(...) method after all attributes for in memory object are
* set up properly.
- *
*
* @param template
* Object creation template. The template holds all the default
@@ -158,13 +158,12 @@ public PersistentObject(CreationTemplate template, AttrSet attrSet)
/**
* Constructor for in memory object to be added to the system. You can make
* the object persistent two ways:
- *
+ *
*
* 1) call add on parent object (recommended)
- *
+ *
* 2) call save(...) method after all attributes for in memory object are
* set up properly.
- *
*
* @param template
* Object creation template. The template holds all the default
@@ -318,10 +317,9 @@ public AttrSet getAttributes(String attrNames[], Locale locale)
/**
* Set an attribute value for the entity.
- *
+ *
* IMPORTANT: To make the changes persistent, you need to call the save
* method to save the changes.
- *
*
* @param attr
* Attribute and value
@@ -349,10 +347,9 @@ public void setAttribute(Attr attr) {
/**
* Sets an attribute value with a given locale for the entity.
- *
+ *
* IMPORTANT: To make the changes persistent, you need to call the save
* method to save the changes.
- *
*
* @param attr
* Attribute and value
@@ -384,8 +381,7 @@ public void setAttribute(Attr attr, Locale locale) {
* @param attrName password attribute name
* @param oldPassword old password
* @param newPassword new password
- * @throws AMException if an error occurs when changing user password
- * @throws SSOException If user's single sign on token is invalid.
+ * @throws UMSException if an error occurs when changing the user password.
*/
public void changePassword(String entryDN, String attrName,
String oldPassword, String newPassword) throws UMSException {
@@ -396,10 +392,9 @@ public void changePassword(String entryDN, String attrName,
/**
* Removes attribute value for the entity.
- *
+ *
* IMPORTANT: To make the changes persistent, you need to call the save
* method to save the changes.
- *
*
* @param attr
* Attribute to be removed
@@ -444,10 +439,9 @@ public String[] getAttributeNames() {
/**
* Modifies attribute values for the entity.
- *
+ *
* IMPORTANT: To make the changes persistent, you need to call the save
* method to save the changes.
- *
*
* @param modSet
* Set of modification of attributes
@@ -493,10 +487,9 @@ public void modify(Collection modSet) {
/**
* Modifies the values of a single attribute for the entity.
- *
+ *
* IMPORTANT: To make the changes persistent, you need to call the save
* method to save the changes.
- *
*
* @param attr
* Attribute value to be modified
@@ -521,10 +514,9 @@ public void modify(Attr attr, ModificationType modificationType) {
/**
* Modify a single attribute for the entity.
- *
+ *
* IMPORTANT: To make the changes persistent, you need to call the save
* method to save the changes.
- *
*
* @param attrName
* Attribute name of the attribute to be modified
@@ -611,7 +603,7 @@ public void rename(String newRDN, boolean deleteOldName)
* Save the modification(s) to the object. Save the changes made so far for
* the persistent object. In other words, make the changes persistent for
* the object.
- *
+ *
* This save method takes no parameter. You use this save method when the
* object is already instantiated. For example,
*
@@ -622,7 +614,6 @@ public void rename(String newRDN, boolean deleteOldName)
* user.save();
*
*
- *
*
* @throws AccessRightsException
* if an access rights exception occurs.
@@ -670,7 +661,6 @@ public void save() throws AccessRightsException, EntryNotFoundException,
* ldap) component in an object. Subclasses may choose to override this
* function. For instance, User takes either "uid" or "cn" for its
* identification
- *
*
* @return Attribute name for identification
*
@@ -871,7 +861,7 @@ public void removeChild(PersistentObject object)
* child ID is a descendant (something being contained) in "this" object
*
* @param childGuid Unique entry identification for the child to be removed.
- * @throws AccessRights if an access rights exception occurs.
+ * @throws AccessRightsException if an access rights exception occurs.
* @throws EntryNotFoundException if the entry is not found.
* @throws UMSException if failure to remove the entry from the persistent
* store. Possible causes include AccessRights violation,
@@ -898,10 +888,9 @@ public void removeChild(Guid childGuid) throws AccessRightsException,
* at hand from the persistent storage but keeps its internal data so that
* the ums client can save it to somewhere else or make reference to its
* internal data
- *
*
- * @throws AccessRights
- * Exception if an access rights exception occurs.
+ * @throws AccessRightsException
+ * if an access rights exception occurs.
* @throws EntryNotFoundException
* if the entry is not found
* @throws UMSException
@@ -975,7 +964,6 @@ public Guid getParentGuid() {
/**
* Gets the immediate children, subject to search filter constraints. Only
* the IDs and object classes of each child are returned.
- *
*
* @param filter
* Search filter
@@ -1044,10 +1032,9 @@ public SearchResults getChildren(String filter,
* Gets all immediate children under current node based on search criteria
* specified in template, and returns attributes specified there. Search
* behavior is controlled by searchControl.
- *
+ *
*
* Returning attributes are determined by the search template
- *
*
* @param template
* Search template
@@ -1136,7 +1123,6 @@ public SearchResults search(String filter, String[] resultAttributeNames,
* Gets the attributes specified in the template for all objects at the
* current level and below which match the search filter in the template.
* Search behavior is controlled by searchControl.
- *
*
* @param template
* Search template
@@ -1275,9 +1261,8 @@ static public String idToDN(
/**
* Maps a dn to guid
- *
+ *
* TODO: Not yet implemented
- *
*/
static String dnToGuid(String dn) {
// TODO: Need to fill in base 64 encoding
@@ -1287,9 +1272,8 @@ static String dnToGuid(String dn) {
/**
* Maps a guid to dn
- *
+ *
* TODO: Not yet implemented
- *
*/
static String guidToDN(String guid) {
// TODO: Need to fill in base 64 encoding
diff --git a/openam-core/src/main/java/com/iplanet/ums/SchemaManager.java b/openam-core/src/main/java/com/iplanet/ums/SchemaManager.java
index 1b2dc180dc..0b37739f0f 100644
--- a/openam-core/src/main/java/com/iplanet/ums/SchemaManager.java
+++ b/openam-core/src/main/java/com/iplanet/ums/SchemaManager.java
@@ -25,6 +25,7 @@
* $Id: SchemaManager.java,v 1.4 2009/01/28 05:34:50 ww203982 Exp $
*
* Portions Copyright 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.iplanet.ums;
@@ -48,7 +49,6 @@
* Examples:
*
* To add/delete schema definitions
- *
*
*
* // Gets the schema manager associated with the login Context
diff --git a/openam-core/src/main/java/com/iplanet/ums/SearchTemplate.java b/openam-core/src/main/java/com/iplanet/ums/SearchTemplate.java
index 8d41c071ef..5ba0ee9233 100644
--- a/openam-core/src/main/java/com/iplanet/ums/SearchTemplate.java
+++ b/openam-core/src/main/java/com/iplanet/ums/SearchTemplate.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -36,7 +37,6 @@
* purpose of defining guidelines in a search. It defines the search filter and
* attributes to be returned in a search query. Reusability and flexibility are
* serving goals in SearchTemplate.
- *
*
* @see Template
* @see CreationTemplate
@@ -95,7 +95,7 @@ public SearchTemplate(String name, String[] attributeNames, String filter) {
/**
* Sets the filter expression used to search for objects of this type, for
* example, "objectclass=inetorgperson" or
- * "(&(objectclass=inetorgperson)(ou=accounting))"
+ * "(&(objectclass=inetorgperson)(ou=accounting))"
*
* @param filter
* A UMS search expression (LDAP syntax)
diff --git a/openam-core/src/main/java/com/iplanet/ums/StaticGroup.java b/openam-core/src/main/java/com/iplanet/ums/StaticGroup.java
index 5e724d7b7a..e05223e743 100644
--- a/openam-core/src/main/java/com/iplanet/ums/StaticGroup.java
+++ b/openam-core/src/main/java/com/iplanet/ums/StaticGroup.java
@@ -25,6 +25,7 @@
* $Id: StaticGroup.java,v 1.4 2009/01/28 05:34:51 ww203982 Exp $
*
* Portions Copyright 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.iplanet.ums;
@@ -203,9 +204,8 @@ public void addMembers(Guid[] guids) throws UMSException {
* Gets the members of the group.
*
* @return SearchResults for members of the group
- * @exception Not
- * thrown by this class
- *
+ * @exception UMSException
+ * if an error occurs while retrieving the member identifiers
*/
public SearchResults getMemberIDs() throws UMSException {
return getMembers(LEVEL_DIRECT);
@@ -223,10 +223,8 @@ static int getMaxNestingLevel() {
* @param level
* Nesting level
* @return SearchResults for members of the group
- * @exception Not
- * thrown by this class
- *
- *
+ * @exception UMSException
+ * if an error occurs while retrieving the members
*/
public SearchResults getMembers(int level) throws UMSException {
Attr attr = getAttribute(MEMBER_ATTR_NAME);
@@ -282,9 +280,8 @@ public SearchResults getMembers(int level) throws UMSException {
* Gets the member count.
*
* @return Number of members of the group
- * @exception Not
- * thrown by this class
- *
+ * @exception UMSException
+ * if an error occurs while counting the members
*/
public int getMemberCount() throws UMSException {
return getMemberCount(LEVEL_DIRECT);
@@ -296,9 +293,8 @@ public int getMemberCount() throws UMSException {
* @param level
* Nesting level
* @return Number of members of the group
- * @exception Not
- * thrown by this class
- *
+ * @exception UMSException
+ * if an error occurs while counting the members
*/
public int getMemberCount(int level) throws UMSException {
@@ -329,9 +325,8 @@ public int getMemberCount(int level) throws UMSException {
* @param index
* Zero-based index into the group container
* @return The unique identifier for a member
- * @exception Not
- * thrown by this class
- *
+ * @exception UMSException
+ * if an error occurs while retrieving the member
*/
public Guid getMemberIDAt(int index) throws UMSException {
Attr attr = getAttribute(MEMBER_ATTR_NAME);
@@ -347,9 +342,8 @@ public Guid getMemberIDAt(int index) throws UMSException {
* @param level
* Nesting level
* @return The unique identifier for a member
- * @exception Not
- * thrown by this class
- *
+ * @exception UMSException
+ * if an error occurs while retrieving the member
*/
public Guid getMemberIDAt(int index, int level) throws UMSException {
SearchResults allMembers = getMembers(level);
@@ -421,9 +415,9 @@ public void removeAllMembers() throws UMSException {
*
* @param guid
* Identity of member to be checked for membership
- * @return true if it is a member
- * @exception Not thrown by this class
- *
+ * @return true if it is a member
+ * @exception UMSException
+ * if an error occurs while checking membership
*/
public boolean hasMember(Guid guid) throws UMSException {
return isMemberAtLevel(guid.getDn(), LEVEL_DIRECT);
@@ -457,9 +451,8 @@ private boolean isMemberAtLevel(String normalizedID, int level)
* @param level
* Nesting level
* @return true if it is a member
- * @exception Not
- * thrown by this class
- *
+ * @exception UMSException
+ * if an error occurs while checking membership
*/
public boolean hasMember(Guid guid, int level) throws UMSException {
diff --git a/openam-core/src/main/java/com/iplanet/ums/Template.java b/openam-core/src/main/java/com/iplanet/ums/Template.java
index 3a0d982e83..4d95882708 100644
--- a/openam-core/src/main/java/com/iplanet/ums/Template.java
+++ b/openam-core/src/main/java/com/iplanet/ums/Template.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -34,7 +35,6 @@
* Represents Template objects in UMS. This is the abstract class for
* CreationTemplate for object creation and SearchTemplate for defining
* guidelines for searching functionality.
- *
*
* @see CreationTemplate
* @see SearchTemplate
diff --git a/openam-core/src/main/java/com/iplanet/ums/TemplateManager.java b/openam-core/src/main/java/com/iplanet/ums/TemplateManager.java
index af975c998b..4aaa6dc4bb 100644
--- a/openam-core/src/main/java/com/iplanet/ums/TemplateManager.java
+++ b/openam-core/src/main/java/com/iplanet/ums/TemplateManager.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -45,7 +46,6 @@
*
*
* Example:
- *
*
*
* TemplateManager mgr = TemplateManager.getTemplateManager();
diff --git a/openam-core/src/main/java/com/iplanet/ums/UMSException.java b/openam-core/src/main/java/com/iplanet/ums/UMSException.java
index ddacd6df96..aa3f8957c0 100644
--- a/openam-core/src/main/java/com/iplanet/ums/UMSException.java
+++ b/openam-core/src/main/java/com/iplanet/ums/UMSException.java
@@ -25,6 +25,7 @@
* $Id: UMSException.java,v 1.5 2009/01/28 05:34:51 ww203982 Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.iplanet.ums;
@@ -141,7 +142,7 @@
* ....... ....... } catch (UMSException ux) {
*
* if (ux.getRootCause() instanceof LDAPException) { PrintWriter pw = new
- * PrintWriter(); ux.log(pw); } else {
+ * PrintWriter(<some file stream>); ux.log(pw); } else {
* System.out.println(ux.getMessage()); }
* }
*
@@ -297,9 +298,9 @@ public String toString() {
}
/**
- * Prints this exception's stack trace to System.err. If this
+ * Prints this exception's stack trace to System.err. If this
* exception has a root exception; the stack trace of the root exception is
- * printed to System.err instead.
+ * printed to System.err instead.
*
*/
public void printStackTrace() {
diff --git a/openam-core/src/main/java/com/iplanet/ums/UMSObject.java b/openam-core/src/main/java/com/iplanet/ums/UMSObject.java
index 0553305d4a..3f0f936390 100644
--- a/openam-core/src/main/java/com/iplanet/ums/UMSObject.java
+++ b/openam-core/src/main/java/com/iplanet/ums/UMSObject.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -41,7 +42,6 @@
* UMSObject class exposes public methods that serve as the entry points to the
* UMS SDK. This class is used to replace the public static methods that are
* previously available in Session class.
- *
*
*
* // Previous access class with authenticated context
diff --git a/openam-core/src/main/java/com/iplanet/ums/dctree/DomainComponentTree.java b/openam-core/src/main/java/com/iplanet/ums/dctree/DomainComponentTree.java
index baff56d14b..e83b813e2b 100644
--- a/openam-core/src/main/java/com/iplanet/ums/dctree/DomainComponentTree.java
+++ b/openam-core/src/main/java/com/iplanet/ums/dctree/DomainComponentTree.java
@@ -25,6 +25,7 @@
* $Id: DomainComponentTree.java,v 1.5 2009/01/28 05:34:51 ww203982 Exp $
*
* Portions Copyright 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.iplanet.ums.dctree;
@@ -55,7 +56,6 @@
* associate with a organizational DIT (convergence tree as noted in nortel
* spec). Sample of a dctree that starts at dcroot of "o=internet" will look
* like this
- *
*
*
* o=internet
@@ -529,7 +529,6 @@ public String mapDCToDomainName(DomainComponent dc) {
* This function can be used as a cache function for the complete DCTree.
* The returning hastable provides all the virtual domain name as keys that
* maps to organization mapping linked in the domain component dc nodes
- *
*
* @return Hashtable of domain names and associated organizations. Each
* domain name is associated with one organization but muliple
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/AuthContext.java b/openam-core/src/main/java/com/sun/identity/authentication/AuthContext.java
index 4e5701bfaf..1ba712495f 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/AuthContext.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/AuthContext.java
@@ -25,7 +25,7 @@
* $Id: AuthContext.java,v 1.25 2009/11/21 01:12:59 qcheng Exp $
*
* Portions Copyrighted 2010-2016 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.authentication;
@@ -1108,7 +1108,7 @@ public boolean hasMoreRequirements() {
* Returns true if the login process requires more information
* from the user to complete the authentication.
*
- * NOTE: This method has to be called as a condition of a while
+ * NOTE: This method has to be called as a condition of a while
* loop in order to complete the authentication process and get the correct
* Status after submitting the requirements.
*
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/UI/LoginLogoutMapping.java b/openam-core/src/main/java/com/sun/identity/authentication/UI/LoginLogoutMapping.java
index 3cf832d066..35a3346244 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/UI/LoginLogoutMapping.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/UI/LoginLogoutMapping.java
@@ -25,7 +25,7 @@
* $Id: LoginLogoutMapping.java,v 1.11 2009/06/03 20:46:50 veiming Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.authentication.UI;
@@ -126,8 +126,8 @@ public void destroy() {
*
* @param request servlet request
* @param response servlet response
- * @throws ServletException
- * @throws java.io.IOException
+ * @throws ServletException if a servlet-specific error occurs
+ * @throws java.io.IOException if an I/O error occurs
*/
protected void processRequest(
HttpServletRequest request,
@@ -166,8 +166,8 @@ protected void processRequest(
*
* @param request servlet request.
* @param response servlet response.
- * @throws ServletException
- * @throws java.io.IOException
+ * @throws ServletException if a servlet-specific error occurs
+ * @throws java.io.IOException if an I/O error occurs
*/
protected void doGet(
HttpServletRequest request,
@@ -180,8 +180,8 @@ protected void doGet(
* Handles the HTTP POST method.
* @param request servlet request
* @param response servlet response
- * @throws ServletException
- * @throws java.io.IOException
+ * @throws ServletException if a servlet-specific error occurs
+ * @throws java.io.IOException if an I/O error occurs
*/
protected void doPost(
HttpServletRequest request,
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/audit/AbstractAuthenticationEventAuditor.java b/openam-core/src/main/java/com/sun/identity/authentication/audit/AbstractAuthenticationEventAuditor.java
index 6e726c2360..16a4cf3c48 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/audit/AbstractAuthenticationEventAuditor.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/audit/AbstractAuthenticationEventAuditor.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2015-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.authentication.audit;
@@ -106,9 +107,9 @@ protected String getRealmFromState(LoginState loginState) {
}
/**
- * Get the realm from the {@Link SSOToken} of the event.
+ * Get the realm from the {@link SSOToken} of the event.
*
- * @param token The {@Link SSOToken} of the event.
+ * @param token The {@link SSOToken} of the event.
* @return The realm or null if it could not be found.
*/
protected String getRealmFromToken(SSOToken token) {
@@ -121,7 +122,7 @@ protected String getRealmFromToken(SSOToken token) {
}
/**
- * Get the failed username from the {@Link LoginState} of the event.
+ * Get the failed username from the {@link LoginState} of the event.
*
* @param loginState The login state of the event.
* @return The username or null if it could not be found.
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/audit/AuthenticationProcessEventAuditor.java b/openam-core/src/main/java/com/sun/identity/authentication/audit/AuthenticationProcessEventAuditor.java
index 03043afe9e..6243732daa 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/audit/AuthenticationProcessEventAuditor.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/audit/AuthenticationProcessEventAuditor.java
@@ -12,7 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2015-2016 ForgeRock AS.
- * Portions Copyrighted 2023-2025 3A Systems LLC
+ * Portions Copyrighted 2023-2026 3A Systems LLC
*/
package com.sun.identity.authentication.audit;
@@ -141,7 +141,7 @@ public void auditLoginFailure(LoginState loginState, AuthenticationFailureReason
/**
* Log a logout event.
*
- * @param token The {@Link SSOToken} of the event.
+ * @param token The {@link SSOToken} of the event.
*/
public void auditLogout(SSOToken token) {
String realm = getRealmFromToken(token);
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/client/AuthClientUtils.java b/openam-core/src/main/java/com/sun/identity/authentication/client/AuthClientUtils.java
index bec53e2b6a..48a0be60e7 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/client/AuthClientUtils.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/client/AuthClientUtils.java
@@ -26,7 +26,7 @@
*
* Portions Copyrighted 2010-2016 ForgeRock AS.
* Portions Copyrighted 2019 Open Source Solution Technology Corporation
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.authentication.client;
@@ -1947,7 +1947,7 @@ public static Cookie createlbCookie(String cookieDomain) throws AuthException {
/**
* Returns the Cookie object created based on the cookieName,
* Session ID and cookieDomain.
- * If AuthContext,/code> status is not SUCCESS then
+ * If AuthContext status is not SUCCESS then
* cookie is created with authentication cookie Name, else AM Cookie Name
* will be used to create cookie.
*
@@ -2289,7 +2289,7 @@ public static String getAuthCookieValue(HttpServletRequest request) {
/**
* @deprecated use {@link #getDomainNameByRequest(
- * jakarta.servlet.http.HttpServletRequest, java.util.Map)} instead.
+ * jakarta.servlet.http.HttpServletRequest, java.util.Map)} instead.
*/
public static String getDomainNameByRequest(Map requestHash) {
String realm = getRealmFromPolicyAdvice(requestHash);
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/config/AMAuthConfigUtils.java b/openam-core/src/main/java/com/sun/identity/authentication/config/AMAuthConfigUtils.java
index 0411e2c8b6..6a596b8490 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/config/AMAuthConfigUtils.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/config/AMAuthConfigUtils.java
@@ -25,6 +25,7 @@
* $Id: AMAuthConfigUtils.java,v 1.5 2008/06/25 05:41:51 qcheng Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.authentication.config;
@@ -248,9 +249,9 @@ public static String getAuthConfigName(
* the configName for getAppConfigurationEntry().
* function in AMConfiguration.
*
- * @param organizationDN DN for the login organization.
- * @param clientType
- * @return Corresponding authentication configuration name.
+ * @param organizationDN DN for the login organization.
+ * @param clientType the client type for which the configuration name is generated
+ * @return Corresponding authentication configuration name.
*/
public static String getAuthConfigName(
String organizationDN,
@@ -521,12 +522,12 @@ public static Set getAllNamedConfig(String orgName, SSOToken token)
*
* Here is a sample XML string for an authentication configuration
*
- * <AttributeValuePair>
- * <Value>com.sun.identity.authentication.modules.LDAP required
- * debug=true</Value>
- * <Value>com.sun.identity.authentication.modules.RADIUS
- * optional</Value>
- * </AttributeValuePair>
+ * <AttributeValuePair>
+ * <Value>com.sun.identity.authentication.modules.LDAP required
+ * debug=true</Value>
+ * <Value>com.sun.identity.authentication.modules.RADIUS
+ * optional</Value>
+ * </AttributeValuePair>
*
* This means user need to pass a required LDAP Login module, then an
* optional RADIUS Login module.
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/config/AMAuthLevelManager.java b/openam-core/src/main/java/com/sun/identity/authentication/config/AMAuthLevelManager.java
index f2ab05d50f..d6bf9a6c31 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/config/AMAuthLevelManager.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/config/AMAuthLevelManager.java
@@ -25,6 +25,7 @@
* $Id: AMAuthLevelManager.java,v 1.3 2008/06/25 05:41:51 qcheng Exp $
*
* Portions Copyrighted 2012-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.authentication.config;
@@ -351,11 +352,11 @@ private Set getModuleForLevel(int level, Map map) {
/**
* Implements methods in com.sun.identity.sm.ServiceListener
*
- * @param serviceName
- * @param version
- * @param groupName
- * @param serviceComponent
- * @param type
+ * @param serviceName the name of the service whose configuration changed
+ * @param version the version of the service
+ * @param groupName the name of the configuration group that changed
+ * @param serviceComponent the service component that changed
+ * @param type the type of configuration change
*/
public void globalConfigChanged(
String serviceName,
@@ -377,12 +378,12 @@ public void globalConfigChanged(
/**
* Implements methods in com.sun.identity.sm.ServiceListener.
*
- * @param serviceName
- * @param version
- * @param orgName
- * @param groupName
- * @param serviceComponent
- * @param type
+ * @param serviceName the name of the service whose configuration changed
+ * @param version the version of the service
+ * @param orgName the name of the organization whose configuration changed
+ * @param groupName the name of the configuration group that changed
+ * @param serviceComponent the service component that changed
+ * @param type the type of configuration change
*/
public void organizationConfigChanged(
String serviceName,
@@ -412,8 +413,8 @@ public void organizationConfigChanged(
/**
* Implements methods in com.sun.identity.sm.ServiceListener.
*
- * @param serviceName
- * @param version
+ * @param serviceName the name of the service whose schema changed
+ * @param version the version of the service
*/
public void schemaChanged(String serviceName, String version) {
if (debug.messageEnabled()) {
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/config/AMAuthenticationSchema.java b/openam-core/src/main/java/com/sun/identity/authentication/config/AMAuthenticationSchema.java
index 0e6f3e589d..eb2b7e45d8 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/config/AMAuthenticationSchema.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/config/AMAuthenticationSchema.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -152,7 +153,7 @@ public Map getAttributeValues(Set names) {
* @param values A map of the names of AttributeSchema to
* modify, and a Set of Values which should replace the default
* values of the current schema.
- * @throws SchemaException
+ * @throws SchemaException if the supplied attribute values are invalid for the schema
* @throws SMSException if an error occurred while performing the operation
* @throws SSOException if the single sign on token is invalid or expired
*/
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/config/AMSDKEventListener.java b/openam-core/src/main/java/com/sun/identity/authentication/config/AMSDKEventListener.java
index e203cee4c6..c93bd503e1 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/config/AMSDKEventListener.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/config/AMSDKEventListener.java
@@ -25,6 +25,7 @@
* $Id: AMSDKEventListener.java,v 1.6 2008/08/19 19:08:51 veiming Exp $
*
* Portions Copyrighted 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.authentication.config;
@@ -66,7 +67,7 @@ public String getConfigName() {
/**
* Implements com.iplanet.am.sdk.AMEventListener.
*
- * @param event
+ * @param event the identity repository event that was fired
* @see com.iplanet.am.sdk.AMEventListener#objectChanged
*/
public void objectChanged(AMEvent event) {
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/config/AuthConfigurationEntry.java b/openam-core/src/main/java/com/sun/identity/authentication/config/AuthConfigurationEntry.java
index d8c87faa2f..c15485134d 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/config/AuthConfigurationEntry.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/config/AuthConfigurationEntry.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -164,7 +165,7 @@ public String getOptions() {
/**
* Sets options.
- * @param options
+ * @param options the authentication options to set
*/
public void setOptions(String options) {
this.options = options;
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/internal/AuthContext.java b/openam-core/src/main/java/com/sun/identity/authentication/internal/AuthContext.java
index 53ab3d5b76..d8404e89fb 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/internal/AuthContext.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/internal/AuthContext.java
@@ -25,6 +25,7 @@
* $Id: AuthContext.java,v 1.10 2009/01/28 05:34:52 ww203982 Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.authentication.internal;
@@ -173,7 +174,7 @@ public final class AuthContext extends Object {
* getRequirements() and submitRequirements()
* to pass the credentials needed for authentication by the plugin modules.
*
- * @throws LoginException
+ * @throws LoginException if the authentication process fails
*
*
*/
@@ -192,7 +193,7 @@ public AuthContext() throws LoginException {
* name of the user to be authenticated
* @param password
* password for the user
- * @throws LoginException
+ * @throws LoginException if the authentication process fails
*
*
*/
@@ -224,7 +225,7 @@ public AuthContext(Principal principal, char[] password, String hostname,
* name of the user to be authenticated
* @param password
* password for the user
- * @throws LoginException
+ * @throws LoginException if the authentication process fails
*
*
*/
@@ -434,7 +435,7 @@ protected AuthContext(String orgName, AuthSubject subject)
* would then query for the user name and related information.
*
* @param orgName organization name.
- * @throws LoginException
+ * @throws LoginException if the authentication process fails
*
*
*/
@@ -517,7 +518,7 @@ protected AuthSubject getSubject() {
* Method to start the login process. This method will
* read the plug-ins configured for the application and initialize them.
*
- * @throws LoginException
+ * @throws LoginException if the login process cannot be started
*
*
*/
@@ -647,7 +648,7 @@ public void submitRequiredInformation(Callback[] info) {
/**
* Logs the user out.
*
- * @throws LoginException
+ * @throws LoginException if an error occurs while logging out
*
*
*/
@@ -773,7 +774,7 @@ protected String getApplicationName() {
* token can be used as the authenticated token.
*
* @return single-sign-on token.
- * @throws InvalidAuthContextException
+ * @throws InvalidAuthContextException if the authentication context is invalid or authentication has not completed
*
*
*/
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/internal/server/AuthSPrincipal.java b/openam-core/src/main/java/com/sun/identity/authentication/internal/server/AuthSPrincipal.java
index 190d150eae..de23914ba7 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/internal/server/AuthSPrincipal.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/internal/server/AuthSPrincipal.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -72,7 +73,6 @@ public class AuthSPrincipal implements Principal, java.io.Serializable {
/**
* Create an AuthSPrincipal with a username.
*
- *
*
* @param name
* the username for this user.
@@ -93,7 +93,6 @@ public AuthSPrincipal(String name) {
/**
* Return the username for this AuthPrincipal.
*
- *
*
* @return the username for this AuthPrincipal
*/
@@ -104,7 +103,6 @@ public String getName() {
/**
* Return the AuthMethod for this AuthPrincipal.
*
- *
*
* @return the AuthMethod for this AuthPrincipal
*/
@@ -115,7 +113,6 @@ public String getAuthMethod() {
/**
* Return the AuthLevel for this AuthPrincipal.
*
- *
*
* @return the AuthLevel for this AuthPrincipal
*/
@@ -126,7 +123,6 @@ public String getAuthLevel() {
/**
* Set the AuthMethod for this AuthPrincipal.
*
- *
*
* @param auth_method
* AuthMethod for this AuthPrincipal
@@ -138,7 +134,6 @@ protected void setAuthMethod(String auth_method) {
/**
* Set the AuthLevel for this AuthPrincipal.
*
- *
*
* @param auth_level
* AuthLevel for this AuthPrincipal
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/jaas/LoginContext.java b/openam-core/src/main/java/com/sun/identity/authentication/jaas/LoginContext.java
index 75ffc00a1b..99c22eee07 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/jaas/LoginContext.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/jaas/LoginContext.java
@@ -26,6 +26,7 @@
*
* Portions Copyrighted 2010-2016 ForgeRock AS.
* Portions Copyrighted 2021 Open Identity Platform Community.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.authentication.jaas;
@@ -172,11 +173,10 @@ public Subject getSubject() {
/**
* Sets next module by module name, allows to modify auth chain during auth
- *
- * @param moduleName
- *
+ *
+ * @param moduleName the name of the module to set as the next module
*/
-
+
public void setNextModule(String moduleName) {
boolean found = false;
moduleStackQueue.clear();
@@ -199,11 +199,10 @@ public void setNextModule(String moduleName) {
/**
* Sets next module by module index in chain, allows to modify auth chain during auth
- *
- * @param moduleName
- *
+ *
+ * @param moduleIndex the index in the chain of the module to set as the next module
*/
-
+
public void setNextModule(int moduleIndex) {
moduleStackQueue.clear();
for(int i = 0; i < moduleStack.length; i++ ) {
@@ -243,7 +242,7 @@ public List getModuleInstanceNames() {
* Resets auth chain to particular module, auth chain starts with this module
*
* @param moduleIndex index of module
- * @throws ResetAuthChainException
+ * @throws ResetAuthChainException if resetting the auth chain to the module is denied
*/
public void resetAuthChainToModule(int moduleIndex) throws ResetAuthChainException {
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/server/AuthXMLRequest.java b/openam-core/src/main/java/com/sun/identity/authentication/server/AuthXMLRequest.java
index f752d94e49..76b0b9e7ee 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/server/AuthXMLRequest.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/server/AuthXMLRequest.java
@@ -24,7 +24,7 @@
*
* $Id: AuthXMLRequest.java,v 1.10 2009/08/17 21:17:50 mrudul_uchil Exp $
*
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
/*
@@ -169,7 +169,7 @@ public void setRequestVersion(String version) {
/**
* Sets the authIdentifier - session ID
*
- * @param authIdentifier
+ * @param authIdentifier the authentication identifier (session ID) to set
*/
public void setAuthIdentifier(String authIdentifier) {
this.authIdentifier = authIdentifier;
@@ -235,7 +235,7 @@ public void setRequestInformation(String requestInfo) {
/**
* Sets the index Type.
*
- * @param strIndexType
+ * @param strIndexType the index type name to set
*/
public void setIndexType(String strIndexType) {
if (strIndexType.equalsIgnoreCase("service")) {
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/service/AuthD.java b/openam-core/src/main/java/com/sun/identity/authentication/service/AuthD.java
index 31a61bc660..140e7d8b8d 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/service/AuthD.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/service/AuthD.java
@@ -26,7 +26,7 @@
*
* Portions Copyrighted 2010-2016 ForgeRock AS.
* Portions Copyrighted 2016 Nomura Research Institute, Ltd.
- * Portions Copyrighted 2023-2025 3A Systems LLC
+ * Portions Copyrighted 2023-2026 3A Systems LLC
*/
package com.sun.identity.authentication.service;
@@ -979,9 +979,9 @@ public String getOrgDN(String userOrg) {
* Returns the dynamic replacement of the URL from the Success or Failure
* URLs.
*
- * @param URL
- * @param servletRequest
- * @return the dynamic replacement of the URL from the Success or Failure
+ * @param URL the URL to process for dynamic replacement
+ * @param servletRequest the servlet request providing the dynamic variable values
+ * @return the dynamic replacement of the URL from the Success or Failure
* URLs.
*/
public String processURL(String URL, HttpServletRequest servletRequest) {
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/service/AuthLevel.java b/openam-core/src/main/java/com/sun/identity/authentication/service/AuthLevel.java
index 489f07810b..23ad3421c2 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/service/AuthLevel.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/service/AuthLevel.java
@@ -25,6 +25,7 @@
* $Id: AuthLevel.java,v 1.3 2008/06/25 05:42:04 qcheng Exp $
*
* Portions Copyrighted 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.authentication.service;
@@ -184,7 +185,7 @@ public String getModuleName() {
* generates choice callback.
*
* @return choice callback.
- * @throws AuthException
+ * @throws AuthException if the choice callback cannot be created
*/
public Callback[] createChoiceCallback() throws AuthException {
debug.message("In createChoiceCallback");
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/service/AuthThreadManager.java b/openam-core/src/main/java/com/sun/identity/authentication/service/AuthThreadManager.java
index 070d82df33..72e4c4bf40 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/service/AuthThreadManager.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/service/AuthThreadManager.java
@@ -25,6 +25,7 @@
* $Id: AuthThreadManager.java,v 1.4 2008/06/25 05:42:04 qcheng Exp $
*
* Portions Copyrighted 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -121,7 +122,7 @@ public boolean isLoginTimeout(long lastCallbackSent, long timeout) {
}
/**
- * Stores the thread as key and the time out value &
+ * Stores the thread as key and the time out value &
* last callback sent in a Hashtable
* @param currentThread will be stored
* @param pageTimeOut configured timeout value
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/service/AuthUtils.java b/openam-core/src/main/java/com/sun/identity/authentication/service/AuthUtils.java
index 38dd1caa88..5102c0a9f3 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/service/AuthUtils.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/service/AuthUtils.java
@@ -25,7 +25,7 @@
* $Id: AuthUtils.java,v 1.33 2009/12/15 16:39:47 qcheng Exp $
*
* Portions Copyrighted 2010-2016 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.authentication.service;
@@ -1209,8 +1209,8 @@ public static void setCallbacksPerState(AuthContextLocal authContext,
/**
* Get the module service name in either
- * iplanet-am-auth formatService(old) or
- * sunAMAuthService format(new).
+ * iplanet-am-auth format{@code }Service(old) or
+ * sunAMAuth{@code }Service format(new).
*/
public static String getModuleServiceName(String moduleName) {
String serviceName = (String) moduleService.get(moduleName);
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/service/CompositeAdvices.java b/openam-core/src/main/java/com/sun/identity/authentication/service/CompositeAdvices.java
index 508cd277bf..e5c2637b77 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/service/CompositeAdvices.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/service/CompositeAdvices.java
@@ -25,6 +25,7 @@
* $Id: CompositeAdvices.java,v 1.6 2008/08/19 19:08:53 veiming Exp $
*
* Portions Copyrighted 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.authentication.service;
@@ -178,7 +179,7 @@ public String getModuleName() {
* Returns array of choice callback.
* Get module matching the level and generate choice callback.
* @return array of choice callback.
- * @throws AuthException
+ * @throws AuthException if the choice callback cannot be created
*/
public Callback[] createChoiceCallback() throws AuthException {
debug.message("In createChoiceCallback");
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/service/LoginState.java b/openam-core/src/main/java/com/sun/identity/authentication/service/LoginState.java
index d3192ab268..3b442a0e71 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/service/LoginState.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/service/LoginState.java
@@ -26,7 +26,7 @@
*
* Portions Copyrighted 2010-2016 ForgeRock AS.
* Portions Copyrighted 2016 Nomura Research Institute, Ltd.
- * Portions Copyrighted 2017-2025 3A Systems LLC
+ * Portions Copyrighted 2017-2026 3A Systems LLC
*/
package com.sun.identity.authentication.service;
@@ -504,7 +504,7 @@ void setReceivedCallback(
* Sets the callbacks recieved and notify waiting thread.
* Used in non-jaas thread mode only.
*
- * @param callback
+ * @param callback the callbacks received from the authentication module
*/
public void setReceivedCallback_NoThread(Callback[] callback) {
submittedCallbackInfo = null;
@@ -1084,11 +1084,11 @@ public String getClientType() {
/**
* Activates session on successful authentication.
- *
+ *
* Unless the noSession query parameter was set on the request and then in that case no new permanent session is
* activated and true.
*
- * @param subject
+ * @param subject the authenticated subject whose session is being activated
* @return true if user session is activated successfully, false if failed to activated
* or true if the noSession parameter is set to true.
*/
@@ -1812,7 +1812,7 @@ private void createSession(
* Returns the single sign on token associated with the session.
*
* @return the single sign on token associated with the session.
- * @throws SSOException
+ * @throws SSOException if the single sign on token cannot be retrieved
*/
public SSOToken getSSOToken() throws SSOException {
if (null == sessionReference || isNoSession()) {
@@ -1981,8 +1981,8 @@ private InternalSession getReferencedOldSession() {
* default/Login.jsp
*
* In case of non-HTML client, it will try to find
- * Login_<charset>.jsp.
- * If not found, it then try Login.jsp.
+ * Login_<charset>.jsp.
+ * If not found, it then try Login.jsp.
*
* @return configured jsp file name
*/
@@ -2459,18 +2459,18 @@ public void populateDefaultUserAttributes() throws AMException {
* token is superAdmin then return. If more then 1 tokens
* are found then make sure the user tokens are in
* iplanet-am-useralias-list
- *
+ *
* If IndexType is LEVEL, MODULE
* then there is only 1 user token retrieve the profile for the
* authenticated user and create profile if dynamic profile creation
* enabled.
- *
+ *
* If IndexType is ORG, SERVICE,
* ROLE then retrieve the user profile for first token, if the
* profile is found and user-alias-list contains other
* tokens then continue, else try to retrieve remaining tokens till a match
* is found.
- *
+ *
* Checks all the users in the tokenSet are active else error
* For ROLE based authentication checks if all user belong to the same Role.
*
@@ -5344,9 +5344,9 @@ public void setCallbacksPerState(String pageState, Callback[] callbacks) {
}
/**
- * Returns true if cookie detected.
+ * Returns true if cookie detected.
*
- * @return true if cookie detected.
+ * @return true if cookie detected.
*/
public boolean isCookieDetect() {
return cookieDetect;
@@ -5561,7 +5561,7 @@ boolean isSessionInvalid() {
*
* @param roleName role name.
* @return AMIdentity object.
- * @throws AuthException
+ * @throws AuthException if the identity for the role cannot be retrieved
*/
public AMIdentity getRole(String roleName) throws AuthException {
try {
@@ -6146,7 +6146,7 @@ public boolean is2faMandatory() {
/**
* Sets a shared state map from the {@link AMLoginModule}.
- * @param sharedState
+ * @param sharedState the shared state map from the login module
*/
public void setSharedState(Map sharedState) {
this.sharedState = sharedState;
@@ -6185,7 +6185,7 @@ void saveSubjectState() {
* are successful or not. This differs from the principalList which is generated by the logincontext as that is only
* generated when all modules have been completed successfully.
*
- * @param principalName
+ * @param principalName the name of the authenticated principal to save
*/
public void saveAuthenticatedPrincipal(String principalName) {
authenticatedPrincipals.add(principalName);
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/service/PagePropertiesCallback.java b/openam-core/src/main/java/com/sun/identity/authentication/service/PagePropertiesCallback.java
index 37d6b19d47..bd6a858816 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/service/PagePropertiesCallback.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/service/PagePropertiesCallback.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -60,13 +61,13 @@ public class PagePropertiesCallback implements Callback {
/**
* Creates PagePropertiesCallback object.
*
- * @param name
- * @param header
- * @param image
- * @param timeOut
- * @param templateName
- * @param error
- * @param page_state
+ * @param name the module name
+ * @param header the header text to display
+ * @param image the image to display
+ * @param timeOut the page timeout in seconds
+ * @param templateName the name of the page template
+ * @param error true if the page represents an error
+ * @param page_state the page state identifier
*/
public PagePropertiesCallback(
String name,
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/service/StreamSubstituter.java b/openam-core/src/main/java/com/sun/identity/authentication/service/StreamSubstituter.java
index 26f46559d9..e40b6efcff 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/service/StreamSubstituter.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/service/StreamSubstituter.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -56,13 +57,13 @@ public class StreamSubstituter {
* Define a string to substitute.
* In the content being filtered, all occurrences of ...
*
- * <subst data="key">otherwise</subst>
+ * <subst data="key">otherwise</subst>
*
* will be replaced with the value defined for "key".
* If the key has not been defined,
* then "otherwise" will be copied to the output stream.
* More than one date="key" may be specified in the same
- * <subst> tag in which case they are substituted in order, and
+ * <subst> tag in which case they are substituted in order, and
* "otherwise" is only copied if none of the keys were found.
* @param key file name used as key for cache
* @param val string value for representation of the file
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/share/AuthXMLUtils.java b/openam-core/src/main/java/com/sun/identity/authentication/share/AuthXMLUtils.java
index 303f194ae8..f5d015c6c7 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/share/AuthXMLUtils.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/share/AuthXMLUtils.java
@@ -25,7 +25,7 @@
* $Id: AuthXMLUtils.java,v 1.10 2009/06/19 20:39:09 qcheng Exp $
*
* Portions Copyrighted 2010-2015 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.authentication.share;
@@ -1764,7 +1764,7 @@ public static String getSerializedSubject(Subject subject) {
* Deserializes Subject.
*
* @param subjectSerialized Serialized Subject.
- * @throws Exception
+ * @throws Exception if the serialized subject cannot be decoded and deserialized.
*/
public static Subject getDeSerializedSubject(String subjectSerialized)
throws Exception {
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/spi/AMAuthCallBack.java b/openam-core/src/main/java/com/sun/identity/authentication/spi/AMAuthCallBack.java
index 1f7e42346b..7febc9ae2b 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/spi/AMAuthCallBack.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/spi/AMAuthCallBack.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -50,7 +51,6 @@
* eventParams.get(TIME_KEY);
* eventParams.get(USER_KEY);
* etc.
- *
*
*
*/
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/spi/AMLoginModule.java b/openam-core/src/main/java/com/sun/identity/authentication/spi/AMLoginModule.java
index b6e8d2fe55..7fef0d8e4a 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/spi/AMLoginModule.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/spi/AMLoginModule.java
@@ -25,7 +25,7 @@
* $Id: AMLoginModule.java,v 1.22 2009/11/21 01:11:56 222713 Exp $
*
* Portions Copyrighted 2010-2016 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.authentication.spi;
@@ -1321,9 +1321,8 @@ public int getCurrentState() {
/**
* Resets the current state in the authentication process
- * @param state
*/
-
+
public void resetCurrentState() {
this.currentState = ISAuthConstants.LOGIN_START;
}
@@ -1802,7 +1801,7 @@ public void setLoginSuccessURL(String url) throws AuthLoginException {
* module to decide in which domain the user profile should be created.
*
* @param orgDN The organization DN.
- * @throws AuthLoginException
+ * @throws AuthLoginException if the user organization cannot be set
*/
public void setOrg(String orgDN) throws AuthLoginException {
/* TODO
@@ -2432,8 +2431,8 @@ public AMIdentityRepository getAMIdentityRepository(String orgDN) {
* @param userName name of user to be created.
* @param userAttributes Map of default attributes.
* @param userRoles Set of default roles.
- * @throws IdRepoException
- * @throws SSOException
+ * @throws IdRepoException if the identity cannot be created in the repository
+ * @throws SSOException if the single sign on token is invalid or expired
*/
public void createIdentity(
String userName,
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/spi/AMPostAuthProcessInterface.java b/openam-core/src/main/java/com/sun/identity/authentication/spi/AMPostAuthProcessInterface.java
index 01c7bf9187..ed9c7f4666 100755
--- a/openam-core/src/main/java/com/sun/identity/authentication/spi/AMPostAuthProcessInterface.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/spi/AMPostAuthProcessInterface.java
@@ -25,7 +25,7 @@
* $Id: AMPostAuthProcessInterface.java,v 1.5 2009/01/16 23:31:34 higapa Exp $
*
* Portions Copyrighted 2015 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.authentication.spi;
@@ -137,7 +137,7 @@ public void onLoginSuccess(
/**
* Post processing on failed authentication.
*
- * @param requestParamsMap map containing HttpServletRequest
+ * @param requestParamsMap map containing HttpServletRequest
* parameters.
* @param request HttpServletRequest object.
* @param response HttpServletResponse object.
@@ -155,7 +155,7 @@ public void onLoginFailure(
* @param request HttpServletRequest object.
* @param response HttpServletResponse object.
* @param ssoToken authenticated user's single sign on token.
- * @throws AuthenticationException
+ * @throws AuthenticationException if an error occurs during logout post processing
*/
public void onLogout(
HttpServletRequest request,
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/spi/AuthLoginException.java b/openam-core/src/main/java/com/sun/identity/authentication/spi/AuthLoginException.java
index 3a53fa006b..668356685d 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/spi/AuthLoginException.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/spi/AuthLoginException.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -201,9 +202,7 @@ public String getL10NMessage(Locale locale) {
* Returns the resource bundle name.
*
* @return Resource Bundle Name associated with this error message.
- * @see #getL10NMessage(java.util.Locale).
- *
- *
+ * @see #getL10NMessage(java.util.Locale)
*/
public String getResourceBundleName() {
return _bundleName;
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/spi/HttpCallback.java b/openam-core/src/main/java/com/sun/identity/authentication/spi/HttpCallback.java
index 15b0cb7bff..64a60bf349 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/spi/HttpCallback.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/spi/HttpCallback.java
@@ -24,7 +24,7 @@
*
* $Id: HttpCallback.java,v 1.4 2009/07/28 19:40:45 beomsuk Exp $
*
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
@@ -142,14 +142,14 @@ public String getAuthorization() {
/**
* Set the authorization string to a HttpCallback object.
- * @param authorization
+ * @param authorization the authorization string to set
*/
public void setAuthorization(String authorization) {
this.authToken = authorization;
}
/**
- * Returns true if the callback is for HTTPBasic.
+ * Returns true if the callback is for HTTPBasic.
*/
public boolean isForHTTPBasic() {
return (negoValue != null)
@@ -157,7 +157,7 @@ public boolean isForHTTPBasic() {
}
/**
- * Returns true if the callback is for WindowsDesktopSSO.
+ * Returns true if the callback is for WindowsDesktopSSO.
*/
public boolean isForWindowsDesktopSSO() {
return (negoValue != null)
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/spi/SetNextModuleException.java b/openam-core/src/main/java/com/sun/identity/authentication/spi/SetNextModuleException.java
index 047656da70..53736aa308 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/spi/SetNextModuleException.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/spi/SetNextModuleException.java
@@ -12,12 +12,13 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2019 Open Identity Platform Community.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.authentication.spi;
/**
- * This exception throws form Authentication Module and process by {@link com.sun.identity.authentication.jaas.LoginContext#invoke()}
+ * This exception throws form Authentication Module and process by {@link com.sun.identity.authentication.jaas.LoginContext}
* if there's a need to go back in authentcation chain on
* @author maximthomas
*
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/util/AMAuthUtils.java b/openam-core/src/main/java/com/sun/identity/authentication/util/AMAuthUtils.java
index a6aaf4a9c5..f3a619028f 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/util/AMAuthUtils.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/util/AMAuthUtils.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -333,7 +334,7 @@ private static Set parseRealmData(String data, String orgDN) {
}
/**
- * Returns a Map with all Auth Module instance names as key
+ * Returns a Map with all Auth Module instance names as key
* and the time the module was authenticated as value.
*
* @param ssoToken valid user's single sign on token.
diff --git a/openam-core/src/main/java/com/sun/identity/authentication/util/ISValidation.java b/openam-core/src/main/java/com/sun/identity/authentication/util/ISValidation.java
index 4edf224871..2432138735 100644
--- a/openam-core/src/main/java/com/sun/identity/authentication/util/ISValidation.java
+++ b/openam-core/src/main/java/com/sun/identity/authentication/util/ISValidation.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -84,9 +85,9 @@ public static boolean validate(String str, String regEx, Debug tmpDebug) {
/**
* Returns the index within this string of the first occurrence of the
* specified substring, starting at the specified index. The integer
- * returned is the smallest value k for which:
+ * returned is the smallest value k for which:
*
- * k >= Math.min(fromIndex, str.length()) &&
+ * k >= Math.min(fromIndex, str.length()) &&
* this.toString().startsWith(str, k)
*
* If no such value of k exists, then -1 is returned.
diff --git a/openam-core/src/main/java/com/sun/identity/common/AMUserPasswordValidationPlugin.java b/openam-core/src/main/java/com/sun/identity/common/AMUserPasswordValidationPlugin.java
index 3f06fee753..22bdd0ff8f 100644
--- a/openam-core/src/main/java/com/sun/identity/common/AMUserPasswordValidationPlugin.java
+++ b/openam-core/src/main/java/com/sun/identity/common/AMUserPasswordValidationPlugin.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -68,8 +69,8 @@ public AMUserPasswordValidationPlugin() {
* source string which should be validated
* @param envParams
* parameters for which the userID validation is enforced.
- * @throws throws
- * AMException when it detects specified pattern within source
+ * @throws AMException
+ * when it detects specified pattern within source
* string which need to be validated OR if source string is null
*/
diff --git a/openam-core/src/main/java/com/sun/identity/common/ISLocaleContext.java b/openam-core/src/main/java/com/sun/identity/common/ISLocaleContext.java
index 2882fb0491..59a602f640 100644
--- a/openam-core/src/main/java/com/sun/identity/common/ISLocaleContext.java
+++ b/openam-core/src/main/java/com/sun/identity/common/ISLocaleContext.java
@@ -25,7 +25,7 @@
* $Id: ISLocaleContext.java,v 1.14 2008/08/19 19:09:00 veiming Exp $
*
* Portions Copyright 2015 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.common;
@@ -223,7 +223,7 @@ public ISLocaleContext(String orgDN) {
* AUTH_LOCALE, ACCEPT_LOCALE,
* USER_PREFERRED_LOCALE, URL_LOCALE.
* @param loc Locale value in string example en,
- * ja_JP. Warning: This method overrides priority
+ * ja_JP. Warning: This method overrides priority
* lookup mechanism.
*
*/
@@ -257,7 +257,6 @@ public void setLocale(int level, java.util.Locale loc) {
* Returns the locale based on the Http Context supplied.
*
* @param context The {@link HttpContext} of the request
- * @return The locale determined by the request
*/
public void setLocale(HttpContext context) {
final String superLocale = context.getParameterAsString("locale");
diff --git a/openam-core/src/main/java/com/sun/identity/common/ISResourceBundle.java b/openam-core/src/main/java/com/sun/identity/common/ISResourceBundle.java
index 8a4717a3f2..7da88d9b83 100644
--- a/openam-core/src/main/java/com/sun/identity/common/ISResourceBundle.java
+++ b/openam-core/src/main/java/com/sun/identity/common/ISResourceBundle.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -128,7 +129,7 @@ protected ISResourceBundle(Map keyValues) {
* @param locale
* Specific locale of ResourceBundle
* @return ResourceBundle with the key-value pairs.
- * @throws SSOException
+ * @throws SSOException if the single sign-on token is invalid or expired
*/
public static ResourceBundle getResourceBundle(SSOToken token,
String rbName, Locale locale) throws SSOException {
diff --git a/openam-core/src/main/java/com/sun/identity/common/L10NMessageImpl.java b/openam-core/src/main/java/com/sun/identity/common/L10NMessageImpl.java
index 24a8f0f8e7..bae4b57786 100644
--- a/openam-core/src/main/java/com/sun/identity/common/L10NMessageImpl.java
+++ b/openam-core/src/main/java/com/sun/identity/common/L10NMessageImpl.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -94,7 +95,7 @@ public L10NMessageImpl(Throwable ex) {
/**
* Returns localized error message.
*
- * @param locale
+ * @param locale the locale in which to render the message.
* @return localized error message.
* @see #L10NMessageImpl(String, String, Object[])
*/
diff --git a/openam-core/src/main/java/com/sun/identity/common/ResourceLookup.java b/openam-core/src/main/java/com/sun/identity/common/ResourceLookup.java
index bb9175cd88..66dd57ef35 100644
--- a/openam-core/src/main/java/com/sun/identity/common/ResourceLookup.java
+++ b/openam-core/src/main/java/com/sun/identity/common/ResourceLookup.java
@@ -25,7 +25,7 @@
* $Id: ResourceLookup.java,v 1.7 2009/05/02 22:12:04 kevinserwin Exp $
*
* Portions Copyrighted 2014 ForgeRock AS
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.common;
@@ -57,11 +57,11 @@ public class ResourceLookup {
* Returns the first existing resource in the ordered search paths.
*
* @param context Servlet Context Reference.
- * @param fileRoot
- * @param locale
- * @param orgFilePath
- * @param clientPath
- * @param filename
+ * @param fileRoot the root directory under which the resource is searched
+ * @param locale the locale used to build locale-specific search paths
+ * @param orgFilePath the organization-specific path segment
+ * @param clientPath the client-specific path segment
+ * @param filename the name of the file to locate
* @param resourceDir absolute path of template base directory
* @return String first existing resource in the ordered
* search paths.
diff --git a/openam-core/src/main/java/com/sun/identity/common/configuration/AgentConfiguration.java b/openam-core/src/main/java/com/sun/identity/common/configuration/AgentConfiguration.java
index c83ee480bd..918f21fdd7 100644
--- a/openam-core/src/main/java/com/sun/identity/common/configuration/AgentConfiguration.java
+++ b/openam-core/src/main/java/com/sun/identity/common/configuration/AgentConfiguration.java
@@ -26,6 +26,7 @@
*
* Portions Copyrighted 2012-2016 ForgeRock AS.
* Portions Copyrighted 2012 Open Source Solution Technology Corporation
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.common.configuration;
@@ -1300,7 +1301,6 @@ private static Set getAttributesSchemaNames(AMIdentity amid)
* @param type AttributeSchema type
* @return a set of attribute schema names whose schema match a given
* type.
- * @throws IdRepoException if there are Id Repository related errors.
* @throws SSOException if the Single Sign On token is invalid or has
* expired.
* @throws SMSException if there are errors in service management layers.
diff --git a/openam-core/src/main/java/com/sun/identity/common/configuration/ListValueValidator.java b/openam-core/src/main/java/com/sun/identity/common/configuration/ListValueValidator.java
index 55a64eca8e..84da3e5b3e 100644
--- a/openam-core/src/main/java/com/sun/identity/common/configuration/ListValueValidator.java
+++ b/openam-core/src/main/java/com/sun/identity/common/configuration/ListValueValidator.java
@@ -1,149 +1,150 @@
-/**
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
- *
- * Copyright (c) 2007 Sun Microsystems Inc. All Rights Reserved
- *
- * The contents of this file are subject to the terms
- * of the Common Development and Distribution License
- * (the License). You may not use this file except in
- * compliance with the License.
- *
- * You can obtain a copy of the License at
- * https://opensso.dev.java.net/public/CDDLv1.0.html or
- * opensso/legal/CDDLv1.0.txt
- * See the License for the specific language governing
- * permission and limitations under the License.
- *
- * When distributing Covered Code, include this CDDL
- * Header Notice in each file and include the License file
- * at opensso/legal/CDDLv1.0.txt.
- * If applicable, add the following below the CDDL Header,
- * with the fields enclosed by brackets [] replaced by
- * your own identifying information:
- * "Portions Copyrighted [year] [name of copyright owner]"
- *
- * $Id: ListValueValidator.java,v 1.5 2008/06/25 05:42:28 qcheng Exp $
- *
- */
-
-/**
- * Portions Copyrighted 2016 ForgeRock AS.
- */
-package com.sun.identity.common.configuration;
-
-import com.sun.identity.sm.ServiceAttributeValidator;
-import java.util.HashSet;
-import java.util.Set;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-import org.forgerock.openam.utils.CollectionUtils;
-
-/**
- * Validates list value in Agent Properties. e.g.
- * com.sun.identity.agents.config.login.form[0]=
- * List values should be Strings of the form:
- * [0] = some value
- * [1] = some value
- * [some sequential index] = some value
- * etc
- * l.h.s is index value surrounded by brackets
- * separator is mandatory "=" equals sign
- * r.h.s is some string value, anything since this is not so fined
- * grained to test values of any one specific property's value set.
- * index value should be an integer >= 0
- * index values can not be duplicates
- * index values collectively can contain missing mubers
- * white space is allowed everywhere (except between digits of index value)
- * blank or empty values are allowed as some props dont have any value
- * to be specified
- *
- * Some examples that would be acceptable values:
- * blank or empty set
- * [0] = (note no value on r.h.s)
- *
- *
- */
-public class ListValueValidator implements ServiceAttributeValidator {
-
- private static final Pattern pattern = Pattern.compile("(\\s*\\[\\s*\\d++\\s*\\]\\s*=.*)");
-
- /**
- * Returns true if values are of list typed.
- *
- * @param values the set of values to be validated
- * @return true if values are of list format type.
- */
- public boolean validate(Set values) {
- boolean valid = true; //blank or empty values set are valid
-
- if (!CollectionUtils.isEmpty(values)) {
- for (String value : values) {
-
- if (!valid) {
- break;
- }
-
- if (value.length() > 0) {
- Matcher m = pattern.matcher(value);
- valid = m.matches();
- }
- }
-
- }
- if (valid) {
- valid = checkForValidIntegerKeyInValue(values);
- }
-
- return valid;
- }
-
- /**
- * Values in set are of the form [integerindex]=somevalue and this integer
- * index is later used in code which will create a list array with the
- * integer index as the lookup key. So we need to check for the case of
- * duplicate integers, integers must be >= 0
- * Note, the integers do not have to be sequential and can skip numbers etc.
- *
- * So need to parse values and get the integer index keys and see if valid.
- *
- * @param values must be a valid set of inputs. Must be valid in the sense
- * that each of its values are like [0]=somevalue
- *
- * @return true if set is good and contains no duplicate keys
- */
- private boolean checkForValidIntegerKeyInValue(Set values) {
- boolean valid = true;
- HashSet keySet = new HashSet<>();
- int indexNumber = -1;
-
- if (!CollectionUtils.isEmpty(values)) {
-
- for (String val : values) {
-
- if (!valid) {
- break;
- }
-
- if (val.length() > 0) {
- //extract key from whole value
- int startIndex = val.indexOf("[");
- int endIndex = val.indexOf("]");
- val = val.substring(startIndex+1, endIndex).trim();
- try {
- indexNumber = Integer.parseInt(val);
- } catch (NumberFormatException nfe) {
- valid = false;
- }
- if (indexNumber <0 ) {
- valid = false;
- }
-
- if (!keySet.add(val)) {
- valid = false;
- }
- }
- }
- }
- return valid;
- }
-}
+/**
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+ *
+ * Copyright (c) 2007 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
+ *
+ * The contents of this file are subject to the terms
+ * of the Common Development and Distribution License
+ * (the License). You may not use this file except in
+ * compliance with the License.
+ *
+ * You can obtain a copy of the License at
+ * https://opensso.dev.java.net/public/CDDLv1.0.html or
+ * opensso/legal/CDDLv1.0.txt
+ * See the License for the specific language governing
+ * permission and limitations under the License.
+ *
+ * When distributing Covered Code, include this CDDL
+ * Header Notice in each file and include the License file
+ * at opensso/legal/CDDLv1.0.txt.
+ * If applicable, add the following below the CDDL Header,
+ * with the fields enclosed by brackets [] replaced by
+ * your own identifying information:
+ * "Portions Copyrighted [year] [name of copyright owner]"
+ *
+ * $Id: ListValueValidator.java,v 1.5 2008/06/25 05:42:28 qcheng Exp $
+ *
+ */
+
+/**
+ * Portions Copyrighted 2016 ForgeRock AS.
+ */
+package com.sun.identity.common.configuration;
+
+import com.sun.identity.sm.ServiceAttributeValidator;
+import java.util.HashSet;
+import java.util.Set;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+import org.forgerock.openam.utils.CollectionUtils;
+
+/**
+ * Validates list value in Agent Properties. e.g.
+ * com.sun.identity.agents.config.login.form[0]=
+ * List values should be Strings of the form:
+ * [0] = some value
+ * [1] = some value
+ * [some sequential index] = some value
+ * etc
+ * l.h.s is index value surrounded by brackets
+ * separator is mandatory "=" equals sign
+ * r.h.s is some string value, anything since this is not so fined
+ * grained to test values of any one specific property's value set.
+ * index value should be an integer >= 0
+ * index values can not be duplicates
+ * index values collectively can contain missing mubers
+ * white space is allowed everywhere (except between digits of index value)
+ * blank or empty values are allowed as some props dont have any value
+ * to be specified
+ *
+ * Some examples that would be acceptable values:
+ * blank or empty set
+ * [0] = (note no value on r.h.s)
+ *
+ *
+ */
+public class ListValueValidator implements ServiceAttributeValidator {
+
+ private static final Pattern pattern = Pattern.compile("(\\s*\\[\\s*\\d++\\s*\\]\\s*=.*)");
+
+ /**
+ * Returns true if values are of list typed.
+ *
+ * @param values the set of values to be validated
+ * @return true if values are of list format type.
+ */
+ public boolean validate(Set values) {
+ boolean valid = true; //blank or empty values set are valid
+
+ if (!CollectionUtils.isEmpty(values)) {
+ for (String value : values) {
+
+ if (!valid) {
+ break;
+ }
+
+ if (value.length() > 0) {
+ Matcher m = pattern.matcher(value);
+ valid = m.matches();
+ }
+ }
+
+ }
+ if (valid) {
+ valid = checkForValidIntegerKeyInValue(values);
+ }
+
+ return valid;
+ }
+
+ /**
+ * Values in set are of the form [integerindex]=somevalue and this integer
+ * index is later used in code which will create a list array with the
+ * integer index as the lookup key. So we need to check for the case of
+ * duplicate integers, integers must be >= 0
+ * Note, the integers do not have to be sequential and can skip numbers etc.
+ *
+ * So need to parse values and get the integer index keys and see if valid.
+ *
+ * @param values must be a valid set of inputs. Must be valid in the sense
+ * that each of its values are like [0]=somevalue
+ *
+ * @return true if set is good and contains no duplicate keys
+ */
+ private boolean checkForValidIntegerKeyInValue(Set values) {
+ boolean valid = true;
+ HashSet keySet = new HashSet<>();
+ int indexNumber = -1;
+
+ if (!CollectionUtils.isEmpty(values)) {
+
+ for (String val : values) {
+
+ if (!valid) {
+ break;
+ }
+
+ if (val.length() > 0) {
+ //extract key from whole value
+ int startIndex = val.indexOf("[");
+ int endIndex = val.indexOf("]");
+ val = val.substring(startIndex+1, endIndex).trim();
+ try {
+ indexNumber = Integer.parseInt(val);
+ } catch (NumberFormatException nfe) {
+ valid = false;
+ }
+ if (indexNumber <0 ) {
+ valid = false;
+ }
+
+ if (!keySet.add(val)) {
+ valid = false;
+ }
+ }
+ }
+ }
+ return valid;
+ }
+}
diff --git a/openam-core/src/main/java/com/sun/identity/common/configuration/MapValueValidator.java b/openam-core/src/main/java/com/sun/identity/common/configuration/MapValueValidator.java
index 9286142ca1..ec46892bc9 100755
--- a/openam-core/src/main/java/com/sun/identity/common/configuration/MapValueValidator.java
+++ b/openam-core/src/main/java/com/sun/identity/common/configuration/MapValueValidator.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2008 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -69,13 +70,13 @@
public class MapValueValidator implements ServiceAttributeValidator {
/**
- * 1) [[\\S]&&[^\\[]&&[^\\]]]+ means at least one non-whitespace
+ * 1) [[\\S]&&[^\\[]&&[^\\]]]+ means at least one non-whitespace
* character except not a [ or ]
*
- * 2) [[^\\[]&&[^\\]]]* means zero or more of anything
+ * 2) [[^\\[]&&[^\\]]]* means zero or more of anything
* except not a [ or ]
*
- * 1 & 2 are combined to match values that have a key
+ * 1 & 2 are combined to match values that have a key
*
* 3) \\s*\\[\\s*\\]\\s*=\\s* means the case of []= which is used for
* many default map values
diff --git a/openam-core/src/main/java/com/sun/identity/common/configuration/ServerConfiguration.java b/openam-core/src/main/java/com/sun/identity/common/configuration/ServerConfiguration.java
index 7eb02cca37..63b5b05b1e 100644
--- a/openam-core/src/main/java/com/sun/identity/common/configuration/ServerConfiguration.java
+++ b/openam-core/src/main/java/com/sun/identity/common/configuration/ServerConfiguration.java
@@ -26,6 +26,7 @@
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
* Portions Copyrighted 2019 Open Source Solution Technology Corporation.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.common.configuration;
@@ -678,7 +679,6 @@ public static boolean createServerInstance(
* @throws SMSException if errors access in the service management
* datastore.
* @throws SSOException if the ssoToken is not valid.
- * @throws UnknownPropertyNameException if property names are unknown.
* @throws ConfigurationException if the property name and values are not
* valid.
*/
diff --git a/openam-core/src/main/java/com/sun/identity/config/Options.java b/openam-core/src/main/java/com/sun/identity/config/Options.java
index 8c4a3e63d8..6d8438a7b8 100644
--- a/openam-core/src/main/java/com/sun/identity/config/Options.java
+++ b/openam-core/src/main/java/com/sun/identity/config/Options.java
@@ -25,6 +25,7 @@
* $Id: Options.java,v 1.7 2009/01/05 23:17:09 veiming Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.config;
@@ -77,7 +78,7 @@ public void doInit() {
}
/**
- * @return boolean If true, the options.htm page will be customized for a new installation,
+ * @return boolean If true, the options.htm page will be customized for a new installation,
* otherwise it will be customized for an upgrade.
*
* Automatic upgrades from 9.5 onwards are supported.
diff --git a/openam-core/src/main/java/com/sun/identity/config/wizard/Step3.java b/openam-core/src/main/java/com/sun/identity/config/wizard/Step3.java
index e2efd62131..b321a8312f 100644
--- a/openam-core/src/main/java/com/sun/identity/config/wizard/Step3.java
+++ b/openam-core/src/main/java/com/sun/identity/config/wizard/Step3.java
@@ -588,7 +588,7 @@ private void setupDSParams(Map data) {
/**
* Validate an Existing SM Host for Configuration Backend.
- * @return
+ * @return true if the SM host is valid
*/
public boolean validateSMHost() {
Context ctx = getContext();
diff --git a/openam-core/src/main/java/com/sun/identity/coretoken/spi/OpenSSOCoreTokenStore.java b/openam-core/src/main/java/com/sun/identity/coretoken/spi/OpenSSOCoreTokenStore.java
index c574239ee5..6304281c4f 100644
--- a/openam-core/src/main/java/com/sun/identity/coretoken/spi/OpenSSOCoreTokenStore.java
+++ b/openam-core/src/main/java/com/sun/identity/coretoken/spi/OpenSSOCoreTokenStore.java
@@ -25,6 +25,7 @@
* $Id: OpenSSOCoreTokenStore.java,v 1.1 2009/11/19 00:07:41 qcheng Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.coretoken.spi;
@@ -97,11 +98,11 @@ public class OpenSSOCoreTokenStore implements CoreTokenStore {
/**
*
- * @param subject
- * @param attributes
+ * @param subject the subject containing the admin token requesting token creation
+ * @param attributes the token attributes in JSON format
* @return the created token in JSON format
- * @throws CoreTokenException
- * @throws JSONException
+ * @throws CoreTokenException if the token cannot be created
+ * @throws JSONException if the JSON attributes cannot be processed
*/
public String createToken(Subject subject,
JSONObject attributes)
@@ -145,10 +146,10 @@ public String createToken(Subject subject,
/**
*
- * @param adminSubject
- * @param tokenId
+ * @param adminSubject the admin subject requesting the read
+ * @param tokenId the ID of the token to read
* @return token value from SM with the given tokenId
- * @throws CoreTokenException
+ * @throws CoreTokenException if the token cannot be read
*/
public String readToken(Subject adminSubject, String tokenId)
throws CoreTokenException {
@@ -177,10 +178,9 @@ public String readToken(Subject adminSubject, String tokenId)
/**
*
- * @param subject
- * @param tokenId
- * @throws CoreTokenException
- * @throws JSONException
+ * @param subject the subject containing the admin token requesting deletion
+ * @param tokenId the ID of the token to delete
+ * @throws CoreTokenException if the token cannot be deleted
*/
public void deleteToken(Subject subject, String tokenId)
throws CoreTokenException {
@@ -209,10 +209,10 @@ public void deleteToken(Subject subject, String tokenId)
/**
*
- * @param subject
- * @param queryString
+ * @param subject the subject containing the admin token requesting the search
+ * @param queryString the query string used to match tokens
* @return JSON array of tokens matching the queryString
- * @throws CoreTokenException
+ * @throws CoreTokenException if the search cannot be performed
*/
public JSONArray searchTokens (Subject subject,
String queryString) throws CoreTokenException {
@@ -246,10 +246,10 @@ public JSONArray searchTokens (Subject subject,
* Updates a token.
* @param subject caller subject.
* @param tokenId token.id of the token to be updated.
- * @param eTag
- * @param newVals
- * @throws CoreTokenException
- * @throws JSONException
+ * @param eTag the entity tag of the token used for optimistic concurrency
+ * @param newVals the new values to apply to the token in JSON format
+ * @throws CoreTokenException if the token cannot be updated
+ * @throws JSONException if the JSON values cannot be processed
*/
public void updateToken(Subject subject, String tokenId,
String eTag, JSONObject newVals)
diff --git a/openam-core/src/main/java/com/sun/identity/delegation/DelegationManager.java b/openam-core/src/main/java/com/sun/identity/delegation/DelegationManager.java
index dc87b6d74c..70df03cd1a 100644
--- a/openam-core/src/main/java/com/sun/identity/delegation/DelegationManager.java
+++ b/openam-core/src/main/java/com/sun/identity/delegation/DelegationManager.java
@@ -25,6 +25,7 @@
* $Id: DelegationManager.java,v 1.10 2008/06/25 05:43:24 qcheng Exp $
*
* Portions Copyrighted 2013-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.delegation;
@@ -95,7 +96,7 @@ public final class DelegationManager {
* the specified realm, or DelegationException will be
* thrown.
*
- * @param token of the user delegating privileges.
+ * @param token SSOToken of the user delegating privileges.
* @param orgName The name of the realm for which the user delegates
* privileges.
*
diff --git a/openam-core/src/main/java/com/sun/identity/delegation/DelegationUtils.java b/openam-core/src/main/java/com/sun/identity/delegation/DelegationUtils.java
index d50a4a8b5a..35ead7ec33 100644
--- a/openam-core/src/main/java/com/sun/identity/delegation/DelegationUtils.java
+++ b/openam-core/src/main/java/com/sun/identity/delegation/DelegationUtils.java
@@ -25,6 +25,7 @@
* $Id: DelegationUtils.java,v 1.7 2008/07/06 05:48:31 arviranga Exp $
*
* Copyright 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.delegation;
@@ -131,7 +132,7 @@ public static void createRealmPrivileges(SSOToken token, String realmName)
* @param parent parent realm's OrganizationConfigManager
where default privileges are picked from.
* @param child realm where default privileges are copied from the
- * parent
.
+ * parent.
*/
public static void copyRealmPrivilegesFromParent(SSOToken token,
OrganizationConfigManager parent, OrganizationConfigManager child)
diff --git a/openam-core/src/main/java/com/sun/identity/delegation/plugins/DelegationPolicyImpl.java b/openam-core/src/main/java/com/sun/identity/delegation/plugins/DelegationPolicyImpl.java
index 43d813990d..c3b118b9e5 100644
--- a/openam-core/src/main/java/com/sun/identity/delegation/plugins/DelegationPolicyImpl.java
+++ b/openam-core/src/main/java/com/sun/identity/delegation/plugins/DelegationPolicyImpl.java
@@ -394,11 +394,6 @@ public void removePrivilege(SSOToken token, String orgName,
* @param types a set of subject types. e.g. ROLE, GROUP.
* @param pattern a filter used to select the subjects.
*
- * @return a set of subjects associated with the realm.
- *
- * @throws SSOException invalid or expired single-sign-on token
- * @throws DelegationException for any abnormal condition
- *
* @return Set of universal Ids of the subjects associated
* with the realm.
*
diff --git a/openam-core/src/main/java/com/sun/identity/entitlement/ConditionDecision.java b/openam-core/src/main/java/com/sun/identity/entitlement/ConditionDecision.java
index 34208bff3f..b3c064f3a2 100644
--- a/openam-core/src/main/java/com/sun/identity/entitlement/ConditionDecision.java
+++ b/openam-core/src/main/java/com/sun/identity/entitlement/ConditionDecision.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2008 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -50,7 +51,7 @@ public class ConditionDecision {
/**
* Constructs an instance of ConditionDecision.
- *
+ *
* Deprecated, favour the factory methods.
*
* @param satisfied
@@ -65,7 +66,7 @@ public ConditionDecision(boolean satisfied, Map> advices) {
/**
* Constructs an instance of ConditionDecision.
- *
+ *
* Deprecated, favour the factory methods.
*
* @param satisfied
@@ -128,7 +129,7 @@ public long getTimeToLive() {
/**
* Clears the current advice associated with this ConditionDecision.
- *
+ *
* Deprecated method as a given instance should be immutable.
*/
@Deprecated
@@ -138,7 +139,7 @@ public void clearAdvices() {
/**
* Adds an advice (from another ConditionDecision) to this ConditionDecision.
- *
+ *
* Deprecated method as a given instance should be immutable.
*
* @param decision
diff --git a/openam-core/src/main/java/com/sun/identity/entitlement/Entitlement.java b/openam-core/src/main/java/com/sun/identity/entitlement/Entitlement.java
index 2b2f9c6f71..907ab3e3af 100644
--- a/openam-core/src/main/java/com/sun/identity/entitlement/Entitlement.java
+++ b/openam-core/src/main/java/com/sun/identity/entitlement/Entitlement.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2008 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -63,7 +64,7 @@
* Or do a sub tree search like this.
*
* Evaluator evaluator = new Evaluator(adminToken);
- * List<Entitlement> entitlements = evaluator.getEntitlements(
+ * List<Entitlement> entitlements = evaluator.getEntitlements(
* subject, "http://www.sun.com", Collections.EMPTY_MAP, true);
* for (Entitlement e : entitlements) {
* String resource = e.getResourceNames();
diff --git a/openam-core/src/main/java/com/sun/identity/entitlement/EntitlementCombiner.java b/openam-core/src/main/java/com/sun/identity/entitlement/EntitlementCombiner.java
index 90b93e1693..e18739ed27 100644
--- a/openam-core/src/main/java/com/sun/identity/entitlement/EntitlementCombiner.java
+++ b/openam-core/src/main/java/com/sun/identity/entitlement/EntitlementCombiner.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2009 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -73,7 +74,7 @@ public abstract class EntitlementCombiner {
* @param normalisedResourceName The normalised resource name.
* @param requestedResourceName The requested resource name.
* @param actions Action names to be evaluated.
- * @param isRecursive true< for subtree evaluation.
+ * @param isRecursive true for subtree evaluation.
*/
public void init(String realm, String applicationName, String normalisedResourceName, String requestedResourceName,
Set actions, boolean isRecursive) throws EntitlementException {
@@ -87,7 +88,7 @@ public void init(String realm, String applicationName, String normalisedResource
* @param normalisedResourceName The normalised resource name.
* @param requestedResourceName The requested resource name.
* @param actions Action names to be evaluated.
- * @param isRecursive true< for subtree evaluation.
+ * @param isRecursive true for subtree evaluation.
* @param application The defining application.
*/
public void init(String normalisedResourceName, String requestedResourceName, Set actions,
diff --git a/openam-core/src/main/java/com/sun/identity/entitlement/EntitlementSubject.java b/openam-core/src/main/java/com/sun/identity/entitlement/EntitlementSubject.java
index 4ae15027aa..7cdfc80ddd 100644
--- a/openam-core/src/main/java/com/sun/identity/entitlement/EntitlementSubject.java
+++ b/openam-core/src/main/java/com/sun/identity/entitlement/EntitlementSubject.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2009 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -60,20 +61,20 @@ public interface EntitlementSubject {
/**
* Returns attribute names and values that could be used for indexing.
* These values will be used by the authorization engine to obtain the
- * applicable policies for a given Subject .
+ * applicable policies for a given Subject.
*
* @return a map of key-value pairs that will be used for indexing the
- * entitlements that contain this EntitlementSubject .
+ * entitlements that contain this EntitlementSubject.
*/
Map> getSearchIndexAttributes();
/**
* Returns a set of attribute names that are used for evaluation.
- * During evaluation, the Evaluator would try to populate
- * these attributes in the Subject for the
- * EntitlementSubject 's consumption.
+ * During evaluation, the Evaluator would try to populate
+ * these attributes in the Subject for the
+ * EntitlementSubject's consumption.
*
- * @return a set of attributes that would be required by the EntitlementSubject 's implementation.
+ * @return a set of attributes that would be required by the EntitlementSubject's implementation.
*/
Set getRequiredAttributeNames();
diff --git a/openam-core/src/main/java/com/sun/identity/entitlement/OrCondition.java b/openam-core/src/main/java/com/sun/identity/entitlement/OrCondition.java
index 3f1759a435..334be1b236 100644
--- a/openam-core/src/main/java/com/sun/identity/entitlement/OrCondition.java
+++ b/openam-core/src/main/java/com/sun/identity/entitlement/OrCondition.java
@@ -25,6 +25,7 @@
* $Id: OrCondition.java,v 1.2 2009/09/05 00:24:04 veiming Exp $
*
* Portions Copyrighted 2014-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.entitlement;
@@ -70,7 +71,7 @@ public OrCondition(Set eConditions) {
* @param resourceName Resource name.
* @param environment Environment parameters.
* @return the {@link ConditionDecision} having performed the {@link EntitlementCondition}(s) evaluation.
- * @throws {@link EntitlementException} in case of any error.
+ * @throws EntitlementException in case of any error.
*/
public ConditionDecision evaluate(String realm, Subject subject, String resourceName,
Map> environment) throws EntitlementException {
diff --git a/openam-core/src/main/java/com/sun/identity/entitlement/ReferralPrivilege.java b/openam-core/src/main/java/com/sun/identity/entitlement/ReferralPrivilege.java
index 7b482abb77..9e058aaec6 100644
--- a/openam-core/src/main/java/com/sun/identity/entitlement/ReferralPrivilege.java
+++ b/openam-core/src/main/java/com/sun/identity/entitlement/ReferralPrivilege.java
@@ -25,6 +25,7 @@
* $Id: ReferralPrivilege.java,v 1.7 2010/01/08 23:59:31 veiming Exp $
*
* Portions Copyrighted 2010-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.entitlement;
@@ -252,7 +253,7 @@ public String getName() {
/**
* Sets description.
*
- * @param description
+ * @param description the description to set.
*/
public void setDescription(String description) {
this.description = description;
diff --git a/openam-core/src/main/java/com/sun/identity/entitlement/ResourceSearchIndexes.java b/openam-core/src/main/java/com/sun/identity/entitlement/ResourceSearchIndexes.java
index 02e91613d4..76092a0044 100644
--- a/openam-core/src/main/java/com/sun/identity/entitlement/ResourceSearchIndexes.java
+++ b/openam-core/src/main/java/com/sun/identity/entitlement/ResourceSearchIndexes.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2009 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -44,7 +45,7 @@ public class ResourceSearchIndexes {
*
* @param hostIndexes Set of host indexes.
* @param pathIndexes Set of path indexes.
- * @param parentPathIndexes
+ * @param parentPathIndexes Set of parent path indexes.
*/
public ResourceSearchIndexes(
Set hostIndexes,
diff --git a/openam-core/src/main/java/com/sun/identity/entitlement/SubjectAttributesCollector.java b/openam-core/src/main/java/com/sun/identity/entitlement/SubjectAttributesCollector.java
index 5421e2790c..4e6a17882a 100644
--- a/openam-core/src/main/java/com/sun/identity/entitlement/SubjectAttributesCollector.java
+++ b/openam-core/src/main/java/com/sun/identity/entitlement/SubjectAttributesCollector.java
@@ -25,6 +25,7 @@
* $Id: SubjectAttributesCollector.java,v 1.1 2009/08/19 05:40:33 veiming Exp $
*
* Portions Copyrighted 2015-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.entitlement;
@@ -64,7 +65,7 @@ public interface SubjectAttributesCollector {
/**
* Returns the attribute values of the given user represented by
- * Subject object.
+ * Subject object.
*
* @param subject identity of the user
* @param attrNames requested attribute names
@@ -96,7 +97,7 @@ public Set getAvailableSubjectAttributeNames()
/**
* Returns the attribute values of the given user represented by
- * Subject object.
+ * Subject object.
*
* @param subject identity of the user.
* @param attrNames requested attribute names.
diff --git a/openam-core/src/main/java/com/sun/identity/entitlement/SubjectAttributesManager.java b/openam-core/src/main/java/com/sun/identity/entitlement/SubjectAttributesManager.java
index c32a9f33e5..172075fd27 100644
--- a/openam-core/src/main/java/com/sun/identity/entitlement/SubjectAttributesManager.java
+++ b/openam-core/src/main/java/com/sun/identity/entitlement/SubjectAttributesManager.java
@@ -25,6 +25,7 @@
* $Id: SubjectAttributesManager.java,v 1.3 2009/09/24 22:37:43 hengming Exp $
*
* Portions Copyrighted 2014-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.entitlement;
@@ -46,9 +47,9 @@
import java.util.concurrent.locks.ReentrantReadWriteLock;
/**
- * Manages multiple instances of SubjectAttributesCollector ,
- * and to be called by Evaluator and
- * EntitlementSubject implementations to obtain users' attributes and
+ * Manages multiple instances of SubjectAttributesCollector,
+ * and to be called by Evaluator and
+ * EntitlementSubject implementations to obtain users' attributes and
* memberships.
*/
public class SubjectAttributesManager {
@@ -270,7 +271,7 @@ public Set getSubjectSearchFilter(Subject subject, String applicationNam
/**
* Returns the attribute values of the given user represented by
- * Subject object.
+ * Subject object.
* @param subject identity of the user.
* @param attrNames requested attribute names.
* @return a map of attribute names and their values.
@@ -325,7 +326,7 @@ public boolean isGroupMembershipSearchIndexEnabled() {
/**
* Returns the attribute values of the given user represented by
- * Subject object.
+ * Subject object.
* @param subject identity of the user.
* @param attrNames requested attribute names.
* @return a map of attribute names and their values.
diff --git a/openam-core/src/main/java/com/sun/identity/entitlement/ThreadPool.java b/openam-core/src/main/java/com/sun/identity/entitlement/ThreadPool.java
index f432edbf60..6d2c6995a4 100644
--- a/openam-core/src/main/java/com/sun/identity/entitlement/ThreadPool.java
+++ b/openam-core/src/main/java/com/sun/identity/entitlement/ThreadPool.java
@@ -25,6 +25,7 @@
* $Id: ThreadPool.java,v 1.1 2009/08/19 05:40:34 veiming Exp $
*
* Portions Copyrighted 2013-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.entitlement;
@@ -95,7 +96,7 @@ private synchronized void createThreads() {
* Runs a user defined task.
*
* @param task user defined task.
- * @throws ThreadPoolException
+ * @throws ThreadPoolException if the task cannot be accepted by the thread pool.
*/
public final void run(Runnable task)
throws ThreadPoolException {
diff --git a/openam-core/src/main/java/com/sun/identity/entitlement/interfaces/IDebugProvider.java b/openam-core/src/main/java/com/sun/identity/entitlement/interfaces/IDebugProvider.java
index cc0e6a1697..1970064cc7 100644
--- a/openam-core/src/main/java/com/sun/identity/entitlement/interfaces/IDebugProvider.java
+++ b/openam-core/src/main/java/com/sun/identity/entitlement/interfaces/IDebugProvider.java
@@ -25,6 +25,7 @@
* $Id: IDebugProvider.java,v 1.1 2009/08/19 05:40:34 veiming Exp $
*
* Portions Copyrighted 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.entitlement.interfaces;
@@ -37,7 +38,6 @@
* com.sun.identity.entitlement.interface.IDebug interface
* together provide the necessary functionality to replace or enhance the
* Debug service.
- *
*/
public interface IDebugProvider {
/**
diff --git a/openam-core/src/main/java/com/sun/identity/entitlement/opensso/Cache.java b/openam-core/src/main/java/com/sun/identity/entitlement/opensso/Cache.java
index c3e3b9c572..aaf736f428 100644
--- a/openam-core/src/main/java/com/sun/identity/entitlement/opensso/Cache.java
+++ b/openam-core/src/main/java/com/sun/identity/entitlement/opensso/Cache.java
@@ -25,6 +25,7 @@
* $Id: Cache.java,v 1.4 2009/12/12 00:03:13 veiming Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.entitlement.opensso;
@@ -88,13 +89,13 @@
* Generally, the default load factor (.75) offers a good tradeoff between
* time and space costs. Higher values decrease the space overhead but
* increase the time cost to look up an entry (which is reflected in most
- * Cache operations, including get and put).
+ * Cache operations, including get and put).
*
* The capacity controls a tradeoff between wasted space and the
* need for rehash operations, which are time-consuming.
* No rehash operations will ever occur if the
* capacity is greater than the maximum number of entries the
- * Cache will contain divided by its load factor. However,
+ * Cache will contain divided by its load factor. However,
* setting the capacity too high can waste space.
*
* If many entries are to be made into a Cache,
@@ -217,7 +218,7 @@ public Cache(String name, int initCapacity, int maxSize, float loadFactor) {
/**
* Constructs a new, empty Cache with the specified capacity and default
- * load factor, which is 0.75.
+ * load factor, which is 0.75.
*
* @param name Name of cache.
* @param initCapacity
@@ -302,7 +303,7 @@ public synchronized Enumeration elements() {
* a value to search for.
* @return true if and only if some key maps to the
* value argument in this Cache as determined by the
- * equals method; false otherwise.
+ * equals method; false otherwise.
* @exception NullPointerException
* if the value is null.
* @see #containsKey(Object)
@@ -352,7 +353,7 @@ public boolean containsValue(Object value) {
* @param key
* possible key.
* @return true if and only if the specified object is a key
- * in this Cache, as determined by the equals method;
+ * in this Cache, as determined by the equals method;
* false otherwise.
* @see #contains(Object)
*/
@@ -624,14 +625,14 @@ public void clear() {
}
/**
- * Returns a string representation of this Cache object in the
+ * Returns a string representation of this Cache object in the
* form of a set of entries, enclosed in braces and separated by the ASCII
- * characters ", " (comma and space). Each entry is
- * rendered as the key, an equals sign =, and the associated
- * element, where the toString method is used to convert the key
+ * characters ", " (comma and space). Each entry is
+ * rendered as the key, an equals sign =, and the associated
+ * element, where the toString method is used to convert the key
* and element to strings.
*
- * Overrides to toString method of Object.
+ * Overrides to toString method of Object.
*
* @return a string representation of this Cache.
*/
diff --git a/openam-core/src/main/java/com/sun/identity/entitlement/opensso/PolicyResponseProvider.java b/openam-core/src/main/java/com/sun/identity/entitlement/opensso/PolicyResponseProvider.java
index e956dd727e..f6a64f7607 100644
--- a/openam-core/src/main/java/com/sun/identity/entitlement/opensso/PolicyResponseProvider.java
+++ b/openam-core/src/main/java/com/sun/identity/entitlement/opensso/PolicyResponseProvider.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2011-2015 ForgeRock AS. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -138,7 +139,7 @@ public void setPropertyValues(Set propertyValues) {
* @param resourceName The resource name of the policy eval
* @param environment environment map from the policy eval client
* @return The attributes (only one since resource attributes are singled)
- * @throws EntitlementException
+ * @throws EntitlementException if the response provider fails to evaluate the attributes
*/
public Map> evaluate(Subject adminSubject, String realm, Subject subject, String resourceName, Map> environment) throws EntitlementException {
try {
@@ -213,7 +214,7 @@ public String getState() {
/**
* Given a JSON state representation, updates the class appropriately
- * @param state
+ * @param state the JSON representation of the provider state to restore
*/
public void setState(String state) {
try {
diff --git a/openam-core/src/main/java/com/sun/identity/entitlement/opensso/PrivilegeUtils.java b/openam-core/src/main/java/com/sun/identity/entitlement/opensso/PrivilegeUtils.java
index 1df81b34d4..99248516d7 100644
--- a/openam-core/src/main/java/com/sun/identity/entitlement/opensso/PrivilegeUtils.java
+++ b/openam-core/src/main/java/com/sun/identity/entitlement/opensso/PrivilegeUtils.java
@@ -25,6 +25,7 @@
* $Id: PrivilegeUtils.java,v 1.4 2010/01/07 00:19:11 veiming Exp $
*
* Portions Copyrighted 2014-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.entitlement.opensso;
@@ -84,7 +85,7 @@
* Class with utility methods to map from
* com.sun.identity.entity.Privilege
* to
- *
com.sun.identity.policy.Policy
+ * com.sun.identity.policy.Policy
*/
public class PrivilegeUtils {
diff --git a/openam-core/src/main/java/com/sun/identity/entity/EntityObject.java b/openam-core/src/main/java/com/sun/identity/entity/EntityObject.java
index 209644d06d..abbce6cb6b 100644
--- a/openam-core/src/main/java/com/sun/identity/entity/EntityObject.java
+++ b/openam-core/src/main/java/com/sun/identity/entity/EntityObject.java
@@ -25,6 +25,7 @@
* $Id: EntityObject.java,v 1.5 2008/06/25 05:43:26 qcheng Exp $
*
* Portions Copyrighted 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.entity;
@@ -173,7 +174,7 @@ public Map getEntity(String entityName, String entityType)
* @param entityType Type of entity being created. eg. Agent The types
* supported by SDK are configured in the list of Managed Objects
* in the DAI service.
- * @param entityFilter
+ * @param entityFilter filter used to constrain the entity search
* @return Set of Entity Names.
* @throws EntityException if there is an internal error in the AM Store.
* @throws SSOException if the sign on is no longer valid.
@@ -209,7 +210,7 @@ public Set getEntityNames(
* @param entityType Type of entity being created. eg. Agent The types
* supported by SDK are configured in the list of Managed Objects
* in the DAI service.
- * @param attributes
+ * @param attributes the attribute values to set or replace
* @throws EntityException if there is an internal error in the AM Store.
* @throws SSOException if the sign on is no longer valid.
*/
diff --git a/openam-core/src/main/java/com/sun/identity/entity/EntityObjectIF.java b/openam-core/src/main/java/com/sun/identity/entity/EntityObjectIF.java
index fe74cb2d45..7e77da9cb3 100644
--- a/openam-core/src/main/java/com/sun/identity/entity/EntityObjectIF.java
+++ b/openam-core/src/main/java/com/sun/identity/entity/EntityObjectIF.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -142,7 +143,7 @@ public Map getEntity(String ssoToken, String entityName, String entityType,
* DAI service.
* @param entityLocation
* Location of the entity creation.eg.www.abc.com
- * @param entityFilter
+ * @param entityFilter filter used to constrain the entity search
* @return Set of Entity Names.
* @throws EntityException if there is an internal error in the AM Store.
* @throws SSOException if the sign on is no longer valid.
diff --git a/openam-core/src/main/java/com/sun/identity/entity/EntityObjectImpl.java b/openam-core/src/main/java/com/sun/identity/entity/EntityObjectImpl.java
index 7ddd976afb..27ff72f3a7 100644
--- a/openam-core/src/main/java/com/sun/identity/entity/EntityObjectImpl.java
+++ b/openam-core/src/main/java/com/sun/identity/entity/EntityObjectImpl.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -171,7 +172,7 @@ public void deleteEntity(
* @return Set of Entity objects.
* @throws EntityException if there is an internal error in the AM Store.
* @throws SSOException if the sign on is no longer valid.
- * @throws RemoteException
+ * @throws RemoteException if a remote communication error occurs.
*/
public Map getEntity(
String ssoToken,
@@ -194,11 +195,11 @@ public Map getEntity(
* in the DAI service.
* @param entityLocation Location of the entity creation. example
* www.abc.com.
- * @param entityFilter
+ * @param entityFilter the filter used to narrow the returned entity names.
* @return Set of Entity Names.
* @throws EntityException if there is an internal error in the AM Store.
* @throws SSOException if the sign on is no longer valid.
- * @throws RemoteException
+ * @throws RemoteException if a remote communication error occurs.
*/
public Set getEntityNames(
String ssoToken,
@@ -225,7 +226,7 @@ public Set getEntityNames(
* www.abc.com.
* @throws EntityException if there is an internal error in the AM Store.
* @throws SSOException if the sign on is no longer valid.
- * @throws RemoteException
+ * @throws RemoteException if a remote communication error occurs.
*/
public void modifyEntity(
String ssoToken,
diff --git a/openam-core/src/main/java/com/sun/identity/idm/AMIdentity.java b/openam-core/src/main/java/com/sun/identity/idm/AMIdentity.java
index 5606b19fb7..74a13df189 100644
--- a/openam-core/src/main/java/com/sun/identity/idm/AMIdentity.java
+++ b/openam-core/src/main/java/com/sun/identity/idm/AMIdentity.java
@@ -25,7 +25,7 @@
* $Id: AMIdentity.java,v 1.37 2009/11/20 23:52:54 ww203982 Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
- * Portions Copyrighted 2019-2023 3A Systems LLC.
+ * Portions Copyrighted 2019-2026 3A Systems LLC.
*/
package com.sun.identity.idm;
@@ -71,7 +71,6 @@
* constructing AMIdentity objects by using
* AMIdentityRepository
* interfaces. For example:
- *
*
*
*
@@ -84,7 +83,6 @@
* single sign-on token passed above. The results obtained from search performed
* using AMIdentityRepository also return AMIdentity objects. The type of an
* object can be determined by doing the following:
- *
*
*
*
@@ -93,7 +91,6 @@
*
*
* The name of an object can be determined by:
- *
*
*
*
@@ -445,7 +442,7 @@ public Set getAttribute(String attrName) throws IdRepoException,
* (String)
* to a Set of attribute values (String).
* It is arranged as:
- * Map::attrMap -->
+ * Map::attrMap -->
* Key: String::AttributeName
* Value: Set::AttributeValues (Set of String)
* @throws IdRepoException
@@ -992,7 +989,7 @@ public void modifyService(String serviceName, Map attrMap)
* the identity. The attributes for the service are validated
* against the service schema.
*
- * This method is only valid for object of type User.
+ * This method is only valid for AMIdentity object of type User.
*
* @param serviceName Name of the service.
* @param attrNames Set of attributes name.
diff --git a/openam-core/src/main/java/com/sun/identity/idm/AMIdentityRepository.java b/openam-core/src/main/java/com/sun/identity/idm/AMIdentityRepository.java
index 6604c3c2c5..79c61707f1 100644
--- a/openam-core/src/main/java/com/sun/identity/idm/AMIdentityRepository.java
+++ b/openam-core/src/main/java/com/sun/identity/idm/AMIdentityRepository.java
@@ -25,7 +25,7 @@
* $Id: AMIdentityRepository.java,v 1.21 2010/01/06 01:58:26 veiming Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.idm;
@@ -64,7 +64,6 @@
* configured. This class provides access to methods which will search, create
* and delete identities. An instance of this class can be obtained in the
* following manner:
- *
*
*
*
diff --git a/openam-core/src/main/java/com/sun/identity/idm/IdRepo.java b/openam-core/src/main/java/com/sun/identity/idm/IdRepo.java
index 7abb5ab740..971d0fdb63 100644
--- a/openam-core/src/main/java/com/sun/identity/idm/IdRepo.java
+++ b/openam-core/src/main/java/com/sun/identity/idm/IdRepo.java
@@ -25,6 +25,7 @@
* $Id: IdRepo.java,v 1.8 2009/07/02 20:33:30 hengming Exp $
*
* Portions Copyrighted 2013-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.idm;
@@ -68,7 +69,9 @@ public abstract class IdRepo {
* Initialization paramters as configred for a given plugin.
*
* @param configParams
+ * the initialization parameters configured for this plugin
* @throws IdRepoException
+ * if the plugin cannot be initialized
*/
public void initialize(Map> configParams) throws IdRepoException {
configMap = Collections.unmodifiableMap(configParams);
@@ -99,7 +102,6 @@ public Set getSupportedOperations(IdType type) {
}
/**
- * @return Returns a Set of IdTypes supported by this plugin.
* Returns the supported types of identities for this
* plugin. If a plugin does not override this method, it
* returns an empty set.
@@ -452,6 +454,7 @@ public abstract Set getMemberships(SSOToken token, IdType type,
* @param serviceName
* service to assign
* @param stype
+ * the schema type of the service attributes
* @param attrMap
* Map of attribute-values.
* @throws IdRepoException If there are repository related error conditions.
@@ -474,6 +477,7 @@ public abstract void assignService(SSOToken token, IdType type,
* @param name
* Name of the object of interest.
* @param mapOfServicesAndOCs
+ * the map of service names to their object classes
* @return
* Set of name of services assigned to name
* @throws IdRepoException If there are repository related error conditions.
@@ -562,6 +566,7 @@ public abstract Map getBinaryServiceAttributes(SSOToken token,
* @param serviceName
* Name of service.
* @param sType
+ * the schema type of the service attributes
* @param attrMap
* map of attribute-values.
* @throws IdRepoException If there are repository related error conditions.
@@ -577,6 +582,7 @@ public abstract void modifyService(SSOToken token, IdType type,
* @param token
* Single sign on token of identity performing the task.
* @param listener
+ * the listener to notify of repository changes
* @return status code
* @throws IdRepoException If there are repository related error conditions.
* @throws SSOException If identity's single sign on token is invalid.
diff --git a/openam-core/src/main/java/com/sun/identity/idm/IdRepoListener.java b/openam-core/src/main/java/com/sun/identity/idm/IdRepoListener.java
index d11f467c15..5e4b6f1436 100644
--- a/openam-core/src/main/java/com/sun/identity/idm/IdRepoListener.java
+++ b/openam-core/src/main/java/com/sun/identity/idm/IdRepoListener.java
@@ -25,6 +25,7 @@
* $Id: IdRepoListener.java,v 1.16 2009/01/28 05:34:59 ww203982 Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.idm;
@@ -221,7 +222,7 @@ public void setConfigMap(Map cMap) {
*
* @param sName service name for which attributes are being set
* @param attrs service synamic attributes
- * @throws com.sun.identity.idm.IdRepoException
+ * @throws com.sun.identity.idm.IdRepoException if the service attributes cannot be stored
*/
public void setServiceAttributes(String sName, Map attrs)
throws IdRepoException {
diff --git a/openam-core/src/main/java/com/sun/identity/idm/IdUtils.java b/openam-core/src/main/java/com/sun/identity/idm/IdUtils.java
index 4f8681f4d2..4e1a341158 100644
--- a/openam-core/src/main/java/com/sun/identity/idm/IdUtils.java
+++ b/openam-core/src/main/java/com/sun/identity/idm/IdUtils.java
@@ -26,6 +26,7 @@
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
* Portions Copyrighted 2014 Nomura Research Institute, Ltd
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.idm;
@@ -539,7 +540,7 @@ private static void initializeSpecialUsers() {
/**
* Returns an IdRepoException based on an AMException
*
- * @param ame
+ * @param ame the AMException to convert
* @return IdRepoException based on ame.
*/
public static IdRepoException convertAMException(AMException ame) {
@@ -601,7 +602,7 @@ private static Set getMemberSet(Set members) {
* @param uuid uuid of the user
* @param orgName the org user is trying to login to
* @return user name
- * @throws IdRepoException
+ * @throws IdRepoException if the org name does not match the realm in the uuid
*/
public static String getIdentityName(String uuid, String orgName)
throws IdRepoException {
diff --git a/openam-core/src/main/java/com/sun/identity/idm/plugins/database/JdbcSimpleUserDao.java b/openam-core/src/main/java/com/sun/identity/idm/plugins/database/JdbcSimpleUserDao.java
index e95dcf11eb..cf0b869b63 100755
--- a/openam-core/src/main/java/com/sun/identity/idm/plugins/database/JdbcSimpleUserDao.java
+++ b/openam-core/src/main/java/com/sun/identity/idm/plugins/database/JdbcSimpleUserDao.java
@@ -26,6 +26,7 @@
*
* Portions Copyrighted 2012-2015 ForgeRock AS.
* Portions Copyrighted 2012 Open Source Solution Technology Corporation
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.idm.plugins.database;
@@ -767,7 +768,7 @@ public Map> getAttributes(String userID,
* Callers should be sure to specify which attributes to fetch.
* @param limit is maximum number of results to return. This is added to the
* END of the WHERE clause using mysql LIMIT on a query.
- * Default if no limit(if limit<0) is specified is LIMIT=1
+ * Default if no limit(if limit<0) is specified is LIMIT=1
* Limit is ignored in this implementation since it is not
* portable SQL
* @param filterOperand is a string of AND, or OR and is used to add
@@ -1047,7 +1048,7 @@ public Map>> search(
* @param userIDAttributeName the name of the attribute which uniquely identifies users, e.g. "uid".
* @param limit is maximum number of results to return. This is added to the
* END of the WHERE clause using mysql LIMIT on a query.
- * Default if no limit(if limit<0) is specified is LIMIT=1
+ * Default if no limit(if limit<0) is specified is LIMIT=1
* Limit is ignored in this implementation since it is not
* portable SQL
* @param queryFilter the query filter sent, more or less directly, from a CREST endpoint _queryFilter value.
diff --git a/openam-core/src/main/java/com/sun/identity/idm/remote/IdRemoteEventListener.java b/openam-core/src/main/java/com/sun/identity/idm/remote/IdRemoteEventListener.java
index b5421f6da3..5545af57d1 100644
--- a/openam-core/src/main/java/com/sun/identity/idm/remote/IdRemoteEventListener.java
+++ b/openam-core/src/main/java/com/sun/identity/idm/remote/IdRemoteEventListener.java
@@ -25,6 +25,7 @@
* $Id: IdRemoteEventListener.java,v 1.7 2009/01/28 05:35:00 ww203982 Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.idm.remote;
@@ -91,7 +92,7 @@ public synchronized static IdRemoteEventListener getInstance() {
}
/**
- * Constructor for EventListener . Should be instantiated
+ * Constructor for EventListener. Should be instantiated
* once by RemoteServicesImpl
*
*/
@@ -223,7 +224,6 @@ private static void startPollingThreadIfEnabled(int cachePollingInterval) {
* Sends notifications to listeners added via addListener.
* The parameter nItem is an XML document having a single
* notification event, using the following DTD.
- *
*
*
* <!-- EventNotification element specifes the change notification
diff --git a/openam-core/src/main/java/com/sun/identity/idm/server/IdRepoJAXRPCObjectImpl.java b/openam-core/src/main/java/com/sun/identity/idm/server/IdRepoJAXRPCObjectImpl.java
index d26f73e4d1..7f73585b9f 100644
--- a/openam-core/src/main/java/com/sun/identity/idm/server/IdRepoJAXRPCObjectImpl.java
+++ b/openam-core/src/main/java/com/sun/identity/idm/server/IdRepoJAXRPCObjectImpl.java
@@ -25,6 +25,7 @@
* $Id: IdRepoJAXRPCObjectImpl.java,v 1.13 2010/01/06 01:58:27 veiming Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.idm.server;
@@ -81,7 +82,7 @@
/**
* Provides service side implementation of IdRepo for JAX-RPC interface
- * DirectoryManagerIF . Does not provide implementation for
+ * DirectoryManagerIF. Does not provide implementation for
* deprecated AMSDK interfaces.
* Remote clients using openssoclientsdk.jar would be calling these
* methods using SOAP.
diff --git a/openam-core/src/main/java/com/sun/identity/idsvcs/opensso/IdentityServicesImpl.java b/openam-core/src/main/java/com/sun/identity/idsvcs/opensso/IdentityServicesImpl.java
index 02b73f6727..4155b692b0 100644
--- a/openam-core/src/main/java/com/sun/identity/idsvcs/opensso/IdentityServicesImpl.java
+++ b/openam-core/src/main/java/com/sun/identity/idsvcs/opensso/IdentityServicesImpl.java
@@ -25,6 +25,7 @@
* $Id: IdentityServicesImpl.java,v 1.20 2010/01/06 19:11:17 veiming Exp $
*
* Portions Copyrighted 2010-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.idsvcs.opensso;
@@ -435,7 +436,7 @@ public void delete(IdentityDetails identity, SSOToken admin) throws ResourceExce
* @param searchModifiers The search modifiers
* @param admin Your SSO token.
* @return a list of matching identifiers.
- * @throws ResourceException
+ * @throws ResourceException if the identity repository search fails.
*/
public List search(CrestQuery crestQuery, Map> searchModifiers, SSOToken admin)
throws ResourceException {
@@ -490,7 +491,7 @@ public List search(CrestQuery crestQuery, Map> searc
* @param searchModifiers The search modifiers
* @param admin Your SSO token.
* @return a list of matching identities.
- * @throws ResourceException
+ * @throws ResourceException if the identity repository search fails.
*/
public List searchIdentityDetails(CrestQuery crestQuery,
Map> searchModifiers,
diff --git a/openam-core/src/main/java/com/sun/identity/jaxrpc/SOAPClient.java b/openam-core/src/main/java/com/sun/identity/jaxrpc/SOAPClient.java
index a851e77f1a..6ce5ed6606 100644
--- a/openam-core/src/main/java/com/sun/identity/jaxrpc/SOAPClient.java
+++ b/openam-core/src/main/java/com/sun/identity/jaxrpc/SOAPClient.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -125,10 +126,9 @@ public class SOAPClient {
/**
* Constructor for applications that would like to dynamically set the SOAP
- * endponts using
+ * endponts using
* setUrls(String[] urls) before
- * invoking either send() or
- * call().
+ * invoking either send() or call().
*/
public SOAPClient() throws IOException {
// do nothing
diff --git a/openam-core/src/main/java/com/sun/identity/log/LogConstants.java b/openam-core/src/main/java/com/sun/identity/log/LogConstants.java
index 0eb0c87d44..bc618f3bf0 100755
--- a/openam-core/src/main/java/com/sun/identity/log/LogConstants.java
+++ b/openam-core/src/main/java/com/sun/identity/log/LogConstants.java
@@ -27,6 +27,7 @@
* Portions Copyrighted 2011-2015 ForgeRock AS.
* Portions Copyrighted 2013 Cybernetica AS.
* Portions Copyrighted 2014 Nomura Research Institute, Ltd
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.log;
@@ -34,7 +35,7 @@
import java.util.logging.Level;
/**
- * Defines constants used in the Logging service. LogConstants
+ * Defines constants used in the Logging service. LogConstants
* helps in maintaining a central repository of all the constants used in the
* package.
*
diff --git a/openam-core/src/main/java/com/sun/identity/log/LogManager.java b/openam-core/src/main/java/com/sun/identity/log/LogManager.java
index 8e6774ecb8..9508938082 100644
--- a/openam-core/src/main/java/com/sun/identity/log/LogManager.java
+++ b/openam-core/src/main/java/com/sun/identity/log/LogManager.java
@@ -26,6 +26,7 @@
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
* Portions Copyrighted 2013 Cybernetica AS
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.log;
@@ -542,9 +543,9 @@ public final void readConfiguration()
* specific attribute changes that would mean logging has
* changed to a new location or has re-started. these are:
* 1. logging location
- * 2. new Status == ACTIVE && old Level == OFF &&
+ * 2. new Status == ACTIVE && old Level == OFF &&
* new Level != OFF
- * 3. old Status == INACTIVE && new Status == ACTIVE &&
+ * 3. old Status == INACTIVE && new Status == ACTIVE &&
* new Level != OFF
* 4. old Backend != new Backend (File <-> DB)
* 5. old Security Status != new Security Status
diff --git a/openam-core/src/main/java/com/sun/identity/log/cli/ISArchiveVerify.java b/openam-core/src/main/java/com/sun/identity/log/cli/ISArchiveVerify.java
index 0bdf7ed157..95bec15b19 100644
--- a/openam-core/src/main/java/com/sun/identity/log/cli/ISArchiveVerify.java
+++ b/openam-core/src/main/java/com/sun/identity/log/cli/ISArchiveVerify.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -99,7 +100,7 @@ static int getToken(String arg) {
/**
* Main method for the class. It drives verify procedure by invoking
* runCommand method.
- * @param args
+ * @param args the command line arguments
* @throws Exception if it fails to processing verification.
*/
public static void main(String[] args) throws Exception {
diff --git a/openam-core/src/main/java/com/sun/identity/log/handlers/DBFormatter.java b/openam-core/src/main/java/com/sun/identity/log/handlers/DBFormatter.java
index ff3bba8ad7..006b2553f0 100644
--- a/openam-core/src/main/java/com/sun/identity/log/handlers/DBFormatter.java
+++ b/openam-core/src/main/java/com/sun/identity/log/handlers/DBFormatter.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -46,7 +47,7 @@
* Database Logging.
*
* Typically this Formatter will be associated with a DBHandler (a handler meant
- * to handle Database logging). DBFormatter takes a LogRecord and
+ * to handle Database logging). DBFormatter takes a LogRecord and
* converts it to a Formatted string which DBHandler can understand.
*
*/
diff --git a/openam-core/src/main/java/com/sun/identity/log/handlers/ELFFormatter.java b/openam-core/src/main/java/com/sun/identity/log/handlers/ELFFormatter.java
index cec8a5b56c..22ae44dc79 100644
--- a/openam-core/src/main/java/com/sun/identity/log/handlers/ELFFormatter.java
+++ b/openam-core/src/main/java/com/sun/identity/log/handlers/ELFFormatter.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -81,9 +82,10 @@ public ELFFormatter() {
}
/**
- * Format the given record as per ELF and return a formatted string.
- * For ELF Specifications refer
www.w3.org/TR/WD-logfile.html
- *
+ * Format the given record as per ELF and return a formatted string.
+ *
+ * For ELF Specifications refer to www.w3.org/TR/WD-logfile.html
+ *
* @param logRecord the log record to be formatted.
* @return formatted string.
*/
@@ -174,8 +176,8 @@ public String format(java.util.logging.LogRecord logRecord) {
* specifies the ELF version used followed by a #Fields line which specifies
* all the fields that are being logged.
*
- * ELFFormatter uses this method to return back the header
- * containing these two lines. FileHandler checks if the header
+ * ELFFormatter uses this method to return back the header
+ * containing these two lines. FileHandler checks if the header
* is already written, if not uses this method to get the header and puts it
* at the beginning of the file.
* @param handler The target handler (can be null)
diff --git a/openam-core/src/main/java/com/sun/identity/log/handlers/FileHandler.java b/openam-core/src/main/java/com/sun/identity/log/handlers/FileHandler.java
index d796b68395..06dd203b49 100644
--- a/openam-core/src/main/java/com/sun/identity/log/handlers/FileHandler.java
+++ b/openam-core/src/main/java/com/sun/identity/log/handlers/FileHandler.java
@@ -26,7 +26,7 @@
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
* Portions Copyrighted 2014 Nomura Research Institute, Ltd
- * Portions Copyrighted 2020-2025 3A Systems, LLC.
+ * Portions Copyrighted 2020-2026 3A Systems, LLC.
*/
package com.sun.identity.log.handlers;
@@ -70,10 +70,10 @@
import java.util.Calendar;
/**
- * This FileHandler is very much similar to the
- * java.util.logging.FileHandler . The FileHandler
+ * This FileHandler is very much similar to the
+ * java.util.logging.FileHandler .
The FileHandler
* can either write to a specified file, or it can write to a rotating set
- * of files.
+ * of files.
* For a rotating set of files, as each file reaches the limit
* ( LogConstants.MAX_FILE_SIZE), it is closed, rotated out, and a
* new file opened. Successively older files and named by adding "-1", "-2",
@@ -200,15 +200,15 @@ private void setOutputStream(OutputStream out) throws SecurityException,
}
/**
- * Set (or change) the character encoding used by this Handler.
- * The encoding should be set before any LogRecords are written
- * to the Handler.
+ * Set (or change) the character encoding used by this Handler.
+ * The encoding should be set before any LogRecords are written
+ * to the Handler.
*
* @param encoding The name of a supported character encoding.
* May be null, to indicate the default platform encoding.
* @exception SecurityException if a security manager exists and if
* the caller does not have
- * LoggingPermission("control").
+ * LoggingPermission("control").
* @exception UnsupportedEncodingException if the named encoding is
* not supported.
*/
diff --git a/openam-core/src/main/java/com/sun/identity/log/handlers/RemoteFormatter.java b/openam-core/src/main/java/com/sun/identity/log/handlers/RemoteFormatter.java
index a7f2d282db..264c8f615b 100644
--- a/openam-core/src/main/java/com/sun/identity/log/handlers/RemoteFormatter.java
+++ b/openam-core/src/main/java/com/sun/identity/log/handlers/RemoteFormatter.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -44,6 +45,7 @@
* service. This xml string conforms to the logDTD.xml file which is given
* below.
*
+ *
{@code
*
*
*
@@ -68,6 +70,7 @@
*
*
* ]
+ * }
*/
public class RemoteFormatter extends Formatter {
diff --git a/openam-core/src/main/java/com/sun/identity/log/handlers/SecureELFFormatter.java b/openam-core/src/main/java/com/sun/identity/log/handlers/SecureELFFormatter.java
index 3a33b687cc..0e19f67871 100644
--- a/openam-core/src/main/java/com/sun/identity/log/handlers/SecureELFFormatter.java
+++ b/openam-core/src/main/java/com/sun/identity/log/handlers/SecureELFFormatter.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -84,7 +85,7 @@ public SecureELFFormatter() {
/**
* Format the given record as per ELF and return a formatted string.
*
- * For ELF Specifications refer
www.w3.org/TR/WD-logfile.html
+ * For ELF Specifications refer to www.w3.org/TR/WD-logfile.html
* @param logRecord The logRecord to be formatted
* @return The string formed by formatting the logRecord
*/
@@ -186,8 +187,8 @@ public String format(java.util.logging.LogRecord logRecord) {
* specifies the ELF version used followed by a #Fields line which specifies
* all the fields that are being logged.
*
- * SecureELFFormatter uses this method to return back the header
- * containing these two lines. FileHandler checks if the header
+ * SecureELFFormatter uses this method to return back the header
+ * containing these two lines. FileHandler checks if the header
* is already written, if not uses this method to get the header and puts it
* at the beginning of the file.
* @param handler The target handler (can be null)
diff --git a/openam-core/src/main/java/com/sun/identity/log/handlers/SecureFileHandler.java b/openam-core/src/main/java/com/sun/identity/log/handlers/SecureFileHandler.java
index 3a297fdaf3..2d7c900c04 100644
--- a/openam-core/src/main/java/com/sun/identity/log/handlers/SecureFileHandler.java
+++ b/openam-core/src/main/java/com/sun/identity/log/handlers/SecureFileHandler.java
@@ -25,6 +25,7 @@
* $Id: SecureFileHandler.java,v 1.12 2009/07/27 22:29:42 hvijay Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.log.handlers;
@@ -76,10 +77,10 @@
import com.sun.identity.security.AdminPasswordAction;
import com.sun.identity.security.keystore.AMPassword;
/**
- * This SecureFileHandler is very much similar to the
- * java.util.logging.FileHandler . The FileHandler
+ * This SecureFileHandler is very much similar to the
+ * java.util.logging.FileHandler .
The FileHandler
* can either write to a specified file, or it can write to a rotating set
- * of files.
+ * of files.
* For a archiving set of files, as each file reaches the limit
* ( LogConstants.MAX_FILE_SIZE), it is closed, archived, and a
* new file opened. Successively older files and named by adding
@@ -215,15 +216,15 @@ private void setOutputStream(OutputStream out) throws SecurityException,
}
/**
- * Set (or change) the character encoding used by this Handler.
- * The encoding should be set before any LogRecords are written
- * to the Handler.
+ * Set (or change) the character encoding used by this Handler.
+ * The encoding should be set before any LogRecords are written
+ * to the Handler.
*
* @param encoding The name of a supported character encoding.
* May be null, to indicate the default platform encoding.
* @exception SecurityException if a security manager exists and if
- * the caller does not have LoggingPermission("control")
- * .
+ * the caller does not have LoggingPermission("control")
+ * .
* @exception UnsupportedEncodingException if the named encoding is
* not supported.
*/
diff --git a/openam-core/src/main/java/com/sun/identity/log/s1is/LogConfigReader.java b/openam-core/src/main/java/com/sun/identity/log/s1is/LogConfigReader.java
index ea278729df..f6a067757b 100644
--- a/openam-core/src/main/java/com/sun/identity/log/s1is/LogConfigReader.java
+++ b/openam-core/src/main/java/com/sun/identity/log/s1is/LogConfigReader.java
@@ -27,6 +27,7 @@
* Portions Copyrighted 2010-2014 ForgeRock AS.
* Portions Copyrighted 2014 Nomura Research Institute, Ltd
* Portions Copyrighted 2013 Cybernetica AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.log.s1is;
@@ -56,10 +57,10 @@
import java.util.TreeSet;
/**
- * LogConfigReader is used to load the configuration from the
+ * LogConfigReader is used to load the configuration from the
* Directory Server and store the configuration as Properties of
- * LogManager.
- * LogConfigReader is very Speicific to DSAME.
+ * LogManager.
+ * LogConfigReader is very Speicific to DSAME.
* java.util.logging.config.class System property should point to this class,
* since LogManager uses this property instantiates this class to load
* the configuration.
@@ -98,7 +99,7 @@ public class LogConfigReader implements ServiceListener{
* HOSTNAME, DATA, LEVEL, LOGINID \r\n
*
The input stream hence constructed is converted into a
* ByteArrayInputStream and is loaded into LogManager.
- * @throws IOException
+ * @throws IOException if the logging configuration cannot be read
*/
public LogConfigReader() throws IOException {
debug = Debug.getInstance("amLog");
diff --git a/openam-core/src/main/java/com/sun/identity/log/service/LogService.java b/openam-core/src/main/java/com/sun/identity/log/service/LogService.java
index 90254987b4..7dd1e88cf5 100644
--- a/openam-core/src/main/java/com/sun/identity/log/service/LogService.java
+++ b/openam-core/src/main/java/com/sun/identity/log/service/LogService.java
@@ -25,7 +25,7 @@
* $Id: LogService.java,v 1.5 2009/12/15 18:00:14 bigfatrat Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.log.service;
@@ -86,7 +86,7 @@ public class LogService implements RequestHandler {
/**
* Registers the classes with the SAX parser
- * @throws Exception
+ * @throws Exception if the SAX parser cannot be initialized.
*/
@Inject
public LogService(AuditEventPublisher auditEventPublisher, AuditEventFactory auditEventFactory) throws Exception {
@@ -113,9 +113,9 @@ public LogService(AuditEventPublisher auditEventPublisher, AuditEventFactory aud
/**
* The method which accepts the request set, parses the xml request and
* executes the appropriate log operation.
- * @param requests
- * @param servletRequest
- * @param servletResponse
+ * @param requests the list of log requests to process.
+ * @param servletRequest the HTTP servlet request associated with the operation.
+ * @param servletResponse the HTTP servlet response associated with the operation.
* @return The response set which contains the result of the log operation.
*/
public ResponseSet process(PLLAuditor auditor, List requests,
diff --git a/openam-core/src/main/java/com/sun/identity/monitoring/Agent.java b/openam-core/src/main/java/com/sun/identity/monitoring/Agent.java
index 4fc9ded84b..a77dcf70f0 100644
--- a/openam-core/src/main/java/com/sun/identity/monitoring/Agent.java
+++ b/openam-core/src/main/java/com/sun/identity/monitoring/Agent.java
@@ -25,6 +25,7 @@
* $Id: Agent.java,v 1.9 2009/11/10 01:33:22 bigfatrat Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.monitoring;
@@ -1213,8 +1214,8 @@ public static String getSiteId() {
/**
* receive Set of site names
- * @param sNames site name -> primary URL
- * @param urlSites is opposite... primary URL -> site name
+ * @param sNames site name -> primary URL
+ * @param urlSites is opposite... primary URL -> site name
*/
public static void siteNames (Map sNames, Map urlSites) {
String classMethod = "Agent.siteNames:";
diff --git a/openam-core/src/main/java/com/sun/identity/monitoring/MonitoringUtil.java b/openam-core/src/main/java/com/sun/identity/monitoring/MonitoringUtil.java
index 0f5c4925ae..6275843384 100644
--- a/openam-core/src/main/java/com/sun/identity/monitoring/MonitoringUtil.java
+++ b/openam-core/src/main/java/com/sun/identity/monitoring/MonitoringUtil.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2009 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -214,7 +215,7 @@ protected static Map getMonAuthList(String authFilePath) {
* byte 6: seconds
* byte 7: deci-seconds (will be 0)
*
- * @param date
+ * @param date the date/time string in "YYYY-MM-DD HH:MM:SS" format to convert
* @return the converted date
*/
public static Byte[] convertDate(String date) {
diff --git a/openam-core/src/main/java/com/sun/identity/password/ui/PWResetServlet.java b/openam-core/src/main/java/com/sun/identity/password/ui/PWResetServlet.java
index 4ad462b723..a3c1c44342 100644
--- a/openam-core/src/main/java/com/sun/identity/password/ui/PWResetServlet.java
+++ b/openam-core/src/main/java/com/sun/identity/password/ui/PWResetServlet.java
@@ -26,7 +26,7 @@
*
* Portions Copyrighted 2012-2015 ForgeRock AS.
* Portions Copyrighted 2012 Open Source Solution Technology Corporation
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.password.ui;
@@ -89,7 +89,7 @@ public PWResetServlet() {
* Using this callback the character set to be used for
* decoding POST/GET data will be set.
* @param requestContext - request context
- * @throws ServletException
+ * @throws ServletException if the request cannot be processed.
*/
protected void onBeforeRequest(RequestContext requestContext)
throws ServletException
@@ -149,7 +149,7 @@ protected void initializeRequestContext(RequestContext requestContext){
*
* @param requestContext request context
* @param handlerName name of handler
- * @throws ServletException
+ * @throws ServletException if the request cannot be forwarded.
*/
protected void onRequestHandlerNotFound(
RequestContext requestContext,
@@ -167,7 +167,7 @@ protected void onRequestHandlerNotFound(
* Forwards to invalid URL view bean, in case of no handler specified
*
* @param requestContext request context
- * @throws ServletException
+ * @throws ServletException if the request cannot be forwarded.
*/
protected void onRequestHandlerNotSpecified(RequestContext requestContext)
throws ServletException
@@ -185,8 +185,8 @@ protected void onRequestHandlerNotSpecified(RequestContext requestContext)
*
* @param requestContext request context
* @param e Exception that was not handled by the application.
- * @throws ServletException
- * @throws IOException
+ * @throws ServletException if the request cannot be processed.
+ * @throws IOException if an I/O error occurs while responding.
*/
protected void onUncaughtException(
RequestContext requestContext,
diff --git a/openam-core/src/main/java/com/sun/identity/password/ui/model/PWResetModel.java b/openam-core/src/main/java/com/sun/identity/password/ui/model/PWResetModel.java
index 545974f6ea..aa1004556d 100644
--- a/openam-core/src/main/java/com/sun/identity/password/ui/model/PWResetModel.java
+++ b/openam-core/src/main/java/com/sun/identity/password/ui/model/PWResetModel.java
@@ -26,6 +26,7 @@
*
* Portions Copyrighted 2012-2015 ForgeRock AS.
* Portions Copyrighted 2012 Open Source Solution Technology Corporation
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.password.ui.model;
@@ -174,7 +175,6 @@ public interface PWResetModel {
/**
* Returns true if message debugging is enabled.
*
- * @see com.iplanet.am.util.Debug#messageEnabled
* @return true if message debugging is enabled
* false if message debugging is disabled
*/
diff --git a/openam-core/src/main/java/com/sun/identity/policy/ActionDecision.java b/openam-core/src/main/java/com/sun/identity/policy/ActionDecision.java
index 1cf3b91023..3512517182 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/ActionDecision.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/ActionDecision.java
@@ -25,6 +25,7 @@
* $Id: ActionDecision.java,v 1.5 2008/06/25 05:43:43 qcheng Exp $
*
* Portions Copyrighted 2011-2014 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.policy;
@@ -83,7 +84,7 @@ public ActionDecision() {
/**
* Constructor
* @param actionName name of the action.
- * @param values a Set> of String values for the
+ * @param values a Set of String values for the
* action
*
*/
@@ -139,7 +140,7 @@ public void setValues(Set values) {
/**
* Gets the action values for the action.
*
- * @return a Set>/code> of String values
+ * @return a Set of String values
*
*/
public Set getValues() {
diff --git a/openam-core/src/main/java/com/sun/identity/policy/Conditions.java b/openam-core/src/main/java/com/sun/identity/policy/Conditions.java
index c3a746a5a5..f7c2173265 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/Conditions.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/Conditions.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -188,7 +189,7 @@ public String getDescription() {
/**
* Sets the name for this instance of the
- * Conditions which contains a collection
+ * Conditions which contains a collection
* of conditions respresented as Condition.
*
* @param name for the collection of conditions
diff --git a/openam-core/src/main/java/com/sun/identity/policy/Policy.java b/openam-core/src/main/java/com/sun/identity/policy/Policy.java
index ab8be59b04..be1542aee4 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/Policy.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/Policy.java
@@ -25,6 +25,7 @@
* $Id: Policy.java,v 1.9 2010/01/10 01:19:35 veiming Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.policy;
@@ -237,8 +238,10 @@ public Policy(String policyName, String description,
*
* @param policyNode XML node in W3C DOM format representing
* the policy object which needs to be created.
- * @exception InvalidFormatException, InvalidNameException,
- * NameNotFoundException, PolicyException
+ * @exception InvalidFormatException if the policy XML format is invalid
+ * @exception InvalidNameException if the policy name is invalid
+ * @exception NameNotFoundException if a referenced name is not found
+ * @exception PolicyException if the policy cannot be constructed
*/
public Policy(PolicyManager pm, Node policyNode)
throws InvalidFormatException, InvalidNameException,
@@ -740,7 +743,7 @@ public void addRealmSubject(SSOToken token, String subjectName,
*
*
* @param subjectName name of the Subject as defined at the realm
- * @param stm SubjectTypeManager of the realm.
+ * @param stm SubjectTypeManager of the realm.
* You have to pass the SubjectTypeManager of realm in which
* you would save the policy. Trying to save the policy at
* a different realm would throw PolicyException.
@@ -1221,14 +1224,11 @@ public ResponseProvider getResponseProvider(String respProvider)
* @param respProvider ResponseProvider object to be added to
* the policy
*
- * @exception NameAlreadyExistsException if a ResponseProvider with the
+ * @exception NameAlreadyExistsException if a ResponseProvider with the
* given name already exists
- * @exception InvalidNameException if the respProvider
- * name is invalid
- *
*
*/
- public void addResponseProvider(String name, ResponseProvider respProvider)
+ public void addResponseProvider(String name, ResponseProvider respProvider)
throws NameAlreadyExistsException {
respProviders.addResponseProvider(name, respProvider);
}
diff --git a/openam-core/src/main/java/com/sun/identity/policy/PolicyCache.java b/openam-core/src/main/java/com/sun/identity/policy/PolicyCache.java
index c91afc2943..a89ab8d247 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/PolicyCache.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/PolicyCache.java
@@ -25,6 +25,7 @@
* $Id: PolicyCache.java,v 1.9 2010/01/10 01:19:35 veiming Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.policy;
@@ -334,7 +335,7 @@ public void globalConfigChanged(String serviceName, String version,
*
* @param serviceName name of the service
* @param version version of the service
- * @param groupName
+ * @param groupName configuration grouping name
* @param orgName organization name as DN
* @param serviceComponent the name of the service components that
* changed
diff --git a/openam-core/src/main/java/com/sun/identity/policy/PolicyConfig.java b/openam-core/src/main/java/com/sun/identity/policy/PolicyConfig.java
index 6e1f84d646..81b24ea5c3 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/PolicyConfig.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/PolicyConfig.java
@@ -25,6 +25,7 @@
* $Id: PolicyConfig.java,v 1.10 2009/01/28 05:35:01 ww203982 Exp $
*
* Portions Copyright 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.policy;
@@ -64,11 +65,13 @@
* following keys. This map is passed to the ResourceComparator class while
* instantiating a ResourceComparator class.
* The map contains the following keys:
+ *
* RESOURCE_COMPARATOR_CLASS
* RESOURCE_COMPARATOR_WILDCARD
* RESOURCE_COMPARATOR_ONE_LEVEL_WILDCARD
* RESOURCE_COMPARATOR_DELIMITER
* RESOURCE_COMPARATOR_CASE_SENSITIVE
+ *
*/
public class PolicyConfig implements com.sun.identity.sm.ServiceListener {
@@ -373,7 +376,7 @@ public void globalConfigChanged(String serviceName, String version,
*
* @param serviceName name of the service
* @param version version of the service
- * @param groupName
+ * @param groupName the configuration grouping name that changed
* @param orgName organization name as DN
* @param serviceComponent the name of the service components that
* changed
diff --git a/openam-core/src/main/java/com/sun/identity/policy/PolicyDecision.java b/openam-core/src/main/java/com/sun/identity/policy/PolicyDecision.java
index 3e25abd596..dcec7a19bf 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/PolicyDecision.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/PolicyDecision.java
@@ -25,6 +25,7 @@
* $Id: PolicyDecision.java,v 1.3 2008/06/25 05:43:44 qcheng Exp $
*
* Portions Copyrighted 2011-2014 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.policy;
@@ -139,10 +140,10 @@ void addActionDecision(ActionDecision newActionDecision, ServiceType
* action.
*
* @param newActionDecision an ActionDecision to be added.
- * @param trueValue String representing the true
+ * @param trueValue String representing the true
* value in the action schema.
- * @param falseValue String representing the
- * false value in the action schema.
+ * @param falseValue String representing the
+ * false value in the action schema.
*
*/
public void addActionDecision(ActionDecision newActionDecision,
@@ -441,8 +442,8 @@ public long getTimeToLive() {
/**
* Sets the timeToLive value of the policy decision to the
- * smallest of timeToLive(s) of contained
- * ActionDecision(s). Also sets value of
+ * smallest of timeToLive(s) of contained
+ * ActionDecision(s). Also sets value of
* advicesAreSet. This is set to true
* if any of the contained action decision(s) has advice defined.
*/
diff --git a/openam-core/src/main/java/com/sun/identity/policy/PolicyEvaluator.java b/openam-core/src/main/java/com/sun/identity/policy/PolicyEvaluator.java
index 3a93b97482..2ec4ec44be 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/PolicyEvaluator.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/PolicyEvaluator.java
@@ -25,6 +25,7 @@
* $Id: PolicyEvaluator.java,v 1.19 2010/01/14 23:18:35 dillidorai Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.policy;
@@ -1286,7 +1287,7 @@ private Set getProtectingPolicies(
* ResourceResult.SUBTREE_SCOPE
* ResourceResult.STRICT_SUBTREE_SCOPE
* ResourceResult.SELF_SCOPE
- *
+ *
* If the scope is ResourceResult.SUBTREE_SCOPE,
* the method will return a set of ResourceResult
* objects, one of them for the resourceName and
diff --git a/openam-core/src/main/java/com/sun/identity/policy/PolicyLockFactory.java b/openam-core/src/main/java/com/sun/identity/policy/PolicyLockFactory.java
index 5ff476be79..4af1c3d5c8 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/PolicyLockFactory.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/PolicyLockFactory.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2014 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.policy;
@@ -19,7 +20,7 @@
/**
* Maintains a singleton instance to the shared lock factory.
- *
+ *
* This factory is intended to be used when concurrent policy changes are not atomic. The retrieved lock
* can be used to protect the non-atomic logic, blocking other threads until all operations are completed.
*/
diff --git a/openam-core/src/main/java/com/sun/identity/policy/PolicyManager.java b/openam-core/src/main/java/com/sun/identity/policy/PolicyManager.java
index 2b48c0138a..9be8573f1e 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/PolicyManager.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/PolicyManager.java
@@ -25,6 +25,7 @@
* $Id: PolicyManager.java,v 1.19 2010/01/25 23:48:15 veiming Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.policy;
@@ -227,8 +228,8 @@ public PolicyManager(SSOToken token) throws SSOException, PolicyException {
* The names of the organization, sub organization or the
* container object could be either "/" separated (as per SMS)
* or could be the complete DN of the object.
- * For example: /isp/coke, /isp/pepsi/tacobell,
- * etc., or "ou=tacobell, o=pepsi, o=isp",
+ * For example: /isp/coke, /isp/pepsi/tacobell,
+ * etc., or "ou=tacobell, o=pepsi, o=isp",
* "o=coke, o=isp", etc.
* The constructor also requires a single sign on token.
* which will be used to perform all data store
diff --git a/openam-core/src/main/java/com/sun/identity/policy/PolicySSOTokenListener.java b/openam-core/src/main/java/com/sun/identity/policy/PolicySSOTokenListener.java
index 84d00e9fd6..69989d7c67 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/PolicySSOTokenListener.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/PolicySSOTokenListener.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -44,7 +45,7 @@
* SSOTokenListener interface and is used for maintaining the
* policy decision cache , subject evaluation cache, User
* Role cache maintained by LDAPRoles subject,
- * as well as the user nsRole attribute values cache.
+ * as well as the user nsRole attribute values cache.
*/
public class PolicySSOTokenListener
diff --git a/openam-core/src/main/java/com/sun/identity/policy/PolicyUtils.java b/openam-core/src/main/java/com/sun/identity/policy/PolicyUtils.java
index 637e406333..8396cfb51e 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/PolicyUtils.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/PolicyUtils.java
@@ -26,6 +26,7 @@
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
* Portions Copyrighted 2014 Nomura Research Institute, Ltd
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.policy;
@@ -952,6 +953,7 @@ public static String getDNDisplayString(String strDN) {
* to the following DTD. The input string may not be validated against the
* dtd for performance reasons.
+ * {@code
-
+ * }
*
* @return the map of policy advices parsed from the passed in advicesXML
* If the passed in advicesXML is null, null would be returned
@@ -1125,7 +1127,7 @@ public static void createOrReplacePolicies(PolicyManager pm, InputStream xmlPoli
}
/**
- * Returns deep copy of a Map
+ * Returns deep copy of a Map
* The passed in Map should have String
* object as keys and Set of String
* objects as values
diff --git a/openam-core/src/main/java/com/sun/identity/policy/Referrals.java b/openam-core/src/main/java/com/sun/identity/policy/Referrals.java
index acd0f3510c..84e704f29b 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/Referrals.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/Referrals.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -75,8 +76,8 @@ protected Referrals() {
* @throws InvalidFormatException if the node passed in does not
* conform to expected format
*
- * @throws InvalidNameException if the name specified in the
- * Node for Referrals is invalid
+ * @throws InvalidNameException if the name specified in the
+ * Node for Referrals is invalid
*
* @throws NameNotFoundException need to add the situations that would
* cause this
@@ -193,7 +194,7 @@ public String getDescription() {
/**
* Sets the name for this instance of the
- * Referrals which contains a collection
+ * Referrals which contains a collection
* of referrals respresented as Referral.
*
* @param name for the collection of referrals
@@ -205,7 +206,7 @@ public void setName(String name) {
/**
* Sets the description for this instance of the
- * Referrals which contains a collection
+ * Referrals which contains a collection
* of referrals respresented as Referral.
*
* @param description description for the collection referrals
diff --git a/openam-core/src/main/java/com/sun/identity/policy/Subjects.java b/openam-core/src/main/java/com/sun/identity/policy/Subjects.java
index c74035f7f1..9d4e8a4c50 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/Subjects.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/Subjects.java
@@ -25,6 +25,7 @@
* $Id: Subjects.java,v 1.4 2008/06/25 05:43:45 qcheng Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.policy;
@@ -74,9 +75,9 @@ protected Subjects() {
* @throws InvalidFormatException if the node passed in does not
* conform to expected format
*
- * @throws InvalidNameException
- * @throws NameNotFoundException
- *
+ * @throws InvalidNameException if a subject name in the node is invalid
+ * @throws NameNotFoundException if a referenced subject type cannot be found
+ *
* @throws PolicyException if can not construct Subjects
*/
protected Subjects(PolicyManager pm, Node usersNode)
@@ -209,7 +210,7 @@ public String getDescription() {
/**
* Sets the name for this instance of the
- * Subjects which contains a collection
+ * Subjects which contains a collection
* of users respresented as Subject.
*
* @param name for the collection of subjects
@@ -221,7 +222,7 @@ public void setName(String name) {
/**
* Sets the description for this instance of the
- * Subjects which contains a collection
+ * Subjects which contains a collection
* of users respresented as Subject.
*
* @param description description for the collection subjects
diff --git a/openam-core/src/main/java/com/sun/identity/policy/client/ResultsCacheUtil.java b/openam-core/src/main/java/com/sun/identity/policy/client/ResultsCacheUtil.java
index aae0d14b7f..7685aee23a 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/client/ResultsCacheUtil.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/client/ResultsCacheUtil.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -59,7 +60,7 @@ public class ResultsCacheUtil {
* client that is listening for notifications from policy service
*
* @param xml XML notification envelope
- * @throws PolicyEvaluationException
+ * @throws PolicyEvaluationException if the notification cannot be processed
*
*/
public static void processNotification(String xml)
@@ -82,7 +83,7 @@ public static void processNotification(String xml)
* client that is listening for notifications from policy service
*
* @param message notification as JSON string
- * @throws PolicyEvaluationException
+ * @throws PolicyEvaluationException if the notification cannot be processed
*
*/
public static void processRESTNotification(String message)
diff --git a/openam-core/src/main/java/com/sun/identity/policy/interfaces/Condition.java b/openam-core/src/main/java/com/sun/identity/policy/interfaces/Condition.java
index 0bc01a87f8..7cdd5fc68e 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/interfaces/Condition.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/interfaces/Condition.java
@@ -25,6 +25,7 @@
* $Id: Condition.java,v 1.7 2009/06/19 22:54:46 mrudul_uchil Exp $
*
* Portions Copyrighted 2014 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.policy.interfaces;
@@ -616,7 +617,7 @@ public interface Condition extends Cloneable {
*
* @param property property name
*
- * @return Syntax for the property name
+ * @return Syntax for the property name
*/
public Syntax getPropertySyntax(String property);
@@ -631,7 +632,7 @@ public interface Condition extends Cloneable {
* @param property property name
* @param locale locale for which the property name must be customized
* @return display name for the property name.
- * @throws PolicyException
+ * @throws PolicyException if the display name cannot be determined.
*/
public String getDisplayName(String property, Locale locale)
throws PolicyException;
@@ -685,7 +686,7 @@ public String getDisplayName(String property, Locale locale)
*
* @param token single-sign-on SSOToken of the user
*
- * @param env request specific environment Map,/code> of key/value
+ * @param env request specific environment Map of key/value
* pairs For example this would contain IP address of remote
* client for an IPCondition.
*
diff --git a/openam-core/src/main/java/com/sun/identity/policy/interfaces/Referral.java b/openam-core/src/main/java/com/sun/identity/policy/interfaces/Referral.java
index b76d641dca..c9538b31d2 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/interfaces/Referral.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/interfaces/Referral.java
@@ -25,6 +25,7 @@
* $Id: Referral.java,v 1.2 2008/06/25 05:43:47 qcheng Exp $
*
* Portions Copyrighted 2014 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -104,9 +105,10 @@ public String getDisplayNameForValue(String value, Locale locale)
* Gets the valid values for this referral
* @param token SSOToken
* @return ValidValues object
- * @throws SSOException, PolicyException
+ * @throws SSOException if the single sign on token is invalid
+ * @throws PolicyException if the valid values cannot be retrieved
*/
- ValidValues getValidValues(SSOToken token)
+ ValidValues getValidValues(SSOToken token)
throws SSOException, PolicyException;
/**
@@ -115,7 +117,8 @@ ValidValues getValidValues(SSOToken token)
* @param token SSOToken
* @param pattern a pattern to match against the value
* @return ValidValues object
- * @throws SSOException, PolicyException
+ * @throws SSOException if the single sign on token is invalid
+ * @throws PolicyException if the valid values cannot be retrieved
*/
ValidValues getValidValues(SSOToken token, String pattern)
throws SSOException, PolicyException;
@@ -145,8 +148,8 @@ Syntax getValueSyntax(SSOToken token)
* Each value is a set of values for the parameter.
* @return policy decision
*
- * @throws PolicyException
- * @throws SSOException
+ * @throws PolicyException if the policy decision cannot be obtained
+ * @throws SSOException if the single sign on token is invalid
*/
PolicyDecision getPolicyDecision(SSOToken token, String resourceType,
String resourceName, Set actionNames, Map envParameters
@@ -168,8 +171,8 @@ PolicyDecision getPolicyDecision(SSOToken token, String resourceType,
* @return names of sub resources for the given resourceName.
* The return value also includes the resourceName.
*
- * @throws PolicyException
- * @throws SSOException
+ * @throws PolicyException if the resource names cannot be retrieved
+ * @throws SSOException if the single sign on token is invalid
*
* @see com.sun.identity.policy.ResourceMatch#EXACT_MATCH
* @see com.sun.identity.policy.ResourceMatch#SUB_RESOURCE_MATCH
diff --git a/openam-core/src/main/java/com/sun/identity/policy/interfaces/ResponseProvider.java b/openam-core/src/main/java/com/sun/identity/policy/interfaces/ResponseProvider.java
index 4f03748a42..0a755e9156 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/interfaces/ResponseProvider.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/interfaces/ResponseProvider.java
@@ -25,6 +25,7 @@
* $Id: ResponseProvider.java,v 1.5 2008/08/19 19:09:16 veiming Exp $
*
* Portions Copyrighted 2014-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.policy.interfaces;
@@ -106,7 +107,7 @@ public interface ResponseProvider extends Cloneable {
*
* @param property property name
*
- * @return Syntax for the property name
+ * @return Syntax for the property name
*/
public Syntax getPropertySyntax(String property);
@@ -121,7 +122,7 @@ public interface ResponseProvider extends Cloneable {
* @param property property name
* @param locale locale for which the property name must be customized
* @return display name for the property name.
- * @throws PolicyException
+ * @throws PolicyException if the display name cannot be determined.
*/
public String getDisplayName(String property, Locale locale)
throws PolicyException;
@@ -177,7 +178,7 @@ public Set getValidValues(String property) throws
* (String).
*
* @throws PolicyException if the decision could not be computed
- * @throws SSOException token is not valid
+ * @throws SSOException if the token is not valid
*
*/
public Map getResponseDecision(SSOToken token,
diff --git a/openam-core/src/main/java/com/sun/identity/policy/interfaces/Subject.java b/openam-core/src/main/java/com/sun/identity/policy/interfaces/Subject.java
index 5bb528d4ee..4083d2b561 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/interfaces/Subject.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/interfaces/Subject.java
@@ -25,6 +25,7 @@
* $Id: Subject.java,v 1.3 2009/05/05 18:27:47 mrudul_uchil Exp $
*
* Portions Copyrighted 2014 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -70,10 +71,8 @@ public interface Subject extends Cloneable {
* @param token the SSOToken that will be used
* to determine the syntax
*
- * @return Set of valid names for the user collection.
- *
* @exception SSOException if SSOToken is not valid
- * @exception PolicyException if unable to get the list of
+ * @exception PolicyException if unable to get the list of
* valid names.
*
* @return Syntax of the values for the Subject
diff --git a/openam-core/src/main/java/com/sun/identity/policy/interfaces/package-info.java b/openam-core/src/main/java/com/sun/identity/policy/interfaces/package-info.java
index 1d6a733884..a5ffd78472 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/interfaces/package-info.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/interfaces/package-info.java
@@ -25,13 +25,12 @@
* $Id: package-info.java,v 1.2 2008/06/25 05:43:47 qcheng Exp $
*
* Portions Copyrighted 2014 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
/**
* Deprecated interfaces for writing custom Policy plugins for Conditions,
* Subjects, Referrals, ResponseProviders and Resources.
- *
- * @deprecated since 12.0.0
*/
package com.sun.identity.policy.interfaces;
diff --git a/openam-core/src/main/java/com/sun/identity/policy/jaas/ISPermission.java b/openam-core/src/main/java/com/sun/identity/policy/jaas/ISPermission.java
index e4d9614ce5..6077258676 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/jaas/ISPermission.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/jaas/ISPermission.java
@@ -25,6 +25,7 @@
* $Id: ISPermission.java,v 1.5 2008/08/19 19:09:17 veiming Exp $
*
* Portions Copyrighted 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.policy.jaas;
@@ -79,11 +80,9 @@
* sun.security.provider.PolicyFile or defined on the command line
* using the -D option.
*
- *
* @see java.security.Permission
* @see javax.security.auth.Subject
* @see java.security.ProtectionDomain
- *
*
*
*/
@@ -468,17 +467,17 @@ public boolean equals(Object obj){
/**
* Returns the hash code value for this Permission object.
- *
+ *
* The required hashCode behavior for Permission Objects is
- * the following:
+ * the following:
*
* - Whenever it is invoked on the same Permission object more than
* once during an execution of a Java application, the
*
hashCode method
* must consistently return the same integer. This integer need not
* remain consistent from one execution of an application to another
- * execution of the same application.
- *
- If two Permission objects are equal according to the
+ * execution of the same application.
+ *
- If two Permission objects are equal according to the
*
equals
* method, then calling the hashCode method on each of the
* two Permission objects must produce the same integer result.
@@ -519,7 +518,7 @@ public int hashCode() {
/**
* Checks if the specified permission's actions are "implied by"
* this object's actions.
- *
+ *
* The implies method is used by the
* AccessController to determine whether or not a requested
* permission is implied by another permission that is known to be valid
diff --git a/openam-core/src/main/java/com/sun/identity/policy/jaas/ISPermissionCollection.java b/openam-core/src/main/java/com/sun/identity/policy/jaas/ISPermissionCollection.java
index 22d8062706..148b3d7a2a 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/jaas/ISPermissionCollection.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/jaas/ISPermissionCollection.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -38,7 +39,7 @@
/**
* This class represents a collection of ISPermission objects.
* It extends from PermissionCollection providing implementation
- * of abstract methods like add, implies
+ * of abstract methods like add, implies,
* elements. The rest of the required methods are used from the parent
* class.
*
@@ -49,7 +50,6 @@
* collection, using the implies method.
*
- enumerate all the permissions, using the
elements method.
*
- *
*
*
When it is desirable to group together a number of Permission objects of
* the same type, the newPermissionCollection method on that
@@ -66,7 +66,6 @@
* @see java.security.Permission
* @see java.security.PermissionCollection
* @see java.security.Permissions
- *
*
*/
public class ISPermissionCollection extends PermissionCollection {
@@ -128,7 +127,7 @@ public Enumeration elements() {
* the collection of ISPermission objects held in this
* ISPermissionCollection.
* This method takes in a permission and loops through all the
- * permissions in its store and call their implies> to
+ * permissions in its store and call their implies() to
* evaluate the result.
*
* @param perm the Permission object to compare.
diff --git a/openam-core/src/main/java/com/sun/identity/policy/plugins/AMIdentityMembershipCondition.java b/openam-core/src/main/java/com/sun/identity/policy/plugins/AMIdentityMembershipCondition.java
index 54aeda2f7b..e9b5373efa 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/plugins/AMIdentityMembershipCondition.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/plugins/AMIdentityMembershipCondition.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2007 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -59,7 +60,7 @@
* in the environment is a member of at least one AMIdentity
* object specified in the Condition.
*
- * @deprecated Use {@link org.forgerock.openam.entitlement.conditions.environment.AMIdentityMembershipCondition}
+ * @deprecated Use {@code org.forgerock.openam.entitlement.conditions.environment.AMIdentityMembershipCondition}
* instead.
*/
@Deprecated
@@ -99,7 +100,7 @@ public List getPropertyNames()
*
* @param property property name
*
- * @return Syntax for the property name
+ * @return Syntax for the property name
*/
public Syntax getPropertySyntax(String property)
{
@@ -116,7 +117,7 @@ public Syntax getPropertySyntax(String property)
* @param property property name.
* @param locale locale for which the property name must be customized.
* @return display name for the property name.
- * @throws PolicyException
+ * @throws PolicyException if the display name cannot be determined
*/
public String getDisplayName(String property, Locale locale)
throws PolicyException
@@ -145,7 +146,7 @@ public Set getValidValues(String property) throws PolicyException
* properties.
* @param properties the properties of the condition that governs
* whether a policy applies. The properties should
- * define value for the key Condition.AM_IDENTITY_NAME.
+ * define value for the key Condition.AM_IDENTITY_NAME.
* The value should be a Set.
* Each element of the Set should be
* a String, the uuid of AMIdentity. Please note that
@@ -203,7 +204,7 @@ public Map getProperties() {
* in the environment is a member of at least one AMIdentity
* object specified in the Condition. Invocator uuid would be specified as
* the value of key Condition.INVOCATOR_PRINCIPAL_UUID in the
- * environment parameter. The value should be a Set
+ * environment parameter. The value should be a Set
* of String objects.
*
* @param token single sign on token of the user
diff --git a/openam-core/src/main/java/com/sun/identity/policy/plugins/AMIdentitySubject.java b/openam-core/src/main/java/com/sun/identity/policy/plugins/AMIdentitySubject.java
index b902dc2652..5e8a5880f8 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/plugins/AMIdentitySubject.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/plugins/AMIdentitySubject.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -71,7 +72,7 @@
* membership in a set of AMIdentity objects using the underlying
* Identity repository service.
*
- * @deprecated Use {@link org.forgerock.openam.entitlement.conditions.subject.IdentitySubject} instead.
+ * @deprecated Use {@code org.forgerock.openam.entitlement.conditions.subject.IdentitySubject} instead.
*/
@Deprecated
public class AMIdentitySubject implements Subject {
@@ -90,8 +91,8 @@ public AMIdentitySubject() {
* Initialize the AMIdentitySubject object by using the configuration
* information passed by the Policy Framework.
*
- * This implementation not need anything out of the configParams
- * I/code> so does no operation.
+ * This implementation not need anything out of the configParams
+ * so does no operation.
*
* @param configParams configuration parameters as a Map.
*
@@ -114,10 +115,6 @@ public void initialize(Map configParams) throws PolicyException {
* It returns Syntax.MULTIPLE_CHOICE.
*
* @exception SSOException if SSOToken is not valid
- * @exception PolicyException if unable to get the list of
- * valid names.
- *
- * @return Syntax of the values for the Subject
*/
public Syntax getValueSyntax(SSOToken token) throws SSOException {
return (Syntax.MULTIPLE_CHOICE);
@@ -193,7 +190,7 @@ public String getDisplayNameForValue(String value, Locale locale)
* Returns the values that was set using the
* method setValues.
*
- * @return SetSet of values that have been set for the user
* collection
*/
public Set getValues() {
diff --git a/openam-core/src/main/java/com/sun/identity/policy/plugins/AuthLevelCondition.java b/openam-core/src/main/java/com/sun/identity/policy/plugins/AuthLevelCondition.java
index 53acc50a41..3361b5f62c 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/plugins/AuthLevelCondition.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/plugins/AuthLevelCondition.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -63,7 +64,7 @@
* env map, AuthLevel is looked up from single sign on
* token.
*
- * @deprecated Use {@link org.forgerock.openam.entitlement.conditions.environment.AuthLevelCondition} instead.
+ * @deprecated Use {@code org.forgerock.openam.entitlement.conditions.environment.AuthLevelCondition} instead.
*/
@Deprecated
public class AuthLevelCondition implements Condition {
@@ -101,7 +102,7 @@ public List getPropertyNames() {
* @see com.sun.identity.policy.Syntax
*
* @param property property name
- * @return Syntax for the property name
+ * @return Syntax for the property name
*/
public Syntax getPropertySyntax(String property) {
return Syntax.NONE;
diff --git a/openam-core/src/main/java/com/sun/identity/policy/plugins/AuthRoleCondition.java b/openam-core/src/main/java/com/sun/identity/policy/plugins/AuthRoleCondition.java
index 8832df5444..2683f4341c 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/plugins/AuthRoleCondition.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/plugins/AuthRoleCondition.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -95,7 +96,7 @@ public List getPropertyNames()
*
* @param property property name
*
- * @return Syntax for the property name
+ * @return Syntax for the property name
*/
public Syntax getPropertySyntax(String property)
{
@@ -112,7 +113,7 @@ public Syntax getPropertySyntax(String property)
* @param property property name.
* @param locale locale for which the property name must be customized.
* @return display name for the property name.
- * @throws PolicyException
+ * @throws PolicyException if the display name cannot be determined
*/
public String getDisplayName(String property, Locale locale)
throws PolicyException
diff --git a/openam-core/src/main/java/com/sun/identity/policy/plugins/AuthSchemeCondition.java b/openam-core/src/main/java/com/sun/identity/policy/plugins/AuthSchemeCondition.java
index 31c933fe7a..3071459f38 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/plugins/AuthSchemeCondition.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/plugins/AuthSchemeCondition.java
@@ -25,6 +25,7 @@
* $Id: AuthSchemeCondition.java,v 1.6 2009/05/05 18:29:01 mrudul_uchil Exp $
*
* Portions Copyrighted 2014-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -58,7 +59,7 @@
* of Condition that lets you define authentication module
* instances for which a Policy applies.
*
- * @deprecated Use {@link org.forgerock.openam.entitlement.conditions.environment.AuthSchemeCondition} instead.
+ * @deprecated Use {@code org.forgerock.openam.entitlement.conditions.environment.AuthSchemeCondition} instead.
*/
@Deprecated
public class AuthSchemeCondition implements Condition {
@@ -82,7 +83,7 @@ public class AuthSchemeCondition implements Condition {
public static final String FORCE_AUTH_ADVICE = "ForceAuth";
/**
- * Constant for representing true for ForceAuth
+ * Constant for representing true for ForceAuth
*/
public static final String TRUE = "true";
@@ -127,7 +128,7 @@ public List getPropertyNames() {
*
* @param property property name
*
- * @return Syntax for the property name
+ * @return Syntax for the property name
*/
public Syntax getPropertySyntax(String property) {
return Syntax.NONE;
@@ -143,7 +144,7 @@ public Syntax getPropertySyntax(String property) {
* @param property property name
* @param locale locale for which the property name must be customized
* @return display name for the property name
- * @throws PolicyException
+ * @throws PolicyException if the display name cannot be retrieved
*/
public String getDisplayName(String property, Locale locale)
throws PolicyException {
@@ -215,7 +216,7 @@ public Map getProperties() {
* AuthSchemeCondition looks for value of key
* REQUEST_AUTH_SCHEHMES in the map. The value should
* be a String. If the env parameter is null or does not
- * define the value for , value for
+ * define the value for REQUEST_AUTH_SCHEMES, value for
* REQUEST_AUTH_SCHEMES is computed using
* AuthMethod obtained from single sign on token of
* the user.
diff --git a/openam-core/src/main/java/com/sun/identity/policy/plugins/AuthenticateToRealmCondition.java b/openam-core/src/main/java/com/sun/identity/policy/plugins/AuthenticateToRealmCondition.java
index c200b0dfc0..0701df2c31 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/plugins/AuthenticateToRealmCondition.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/plugins/AuthenticateToRealmCondition.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -57,7 +58,7 @@
* implementation of Condition that lets you specify
* the realm to which user should authenticate for the policy to apply
*
- * @deprecated Use {@link org.forgerock.openam.entitlement.conditions.environment.AuthenticateToRealmCondition} instead.
+ * @deprecated Use {@code org.forgerock.openam.entitlement.conditions.environment.AuthenticateToRealmCondition} instead.
*/
@Deprecated
public class AuthenticateToRealmCondition implements Condition {
diff --git a/openam-core/src/main/java/com/sun/identity/policy/plugins/AuthenticateToServiceCondition.java b/openam-core/src/main/java/com/sun/identity/policy/plugins/AuthenticateToServiceCondition.java
index e09e0fc891..20fdc05c70 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/plugins/AuthenticateToServiceCondition.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/plugins/AuthenticateToServiceCondition.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -58,7 +59,7 @@
* implementation of Condition that lets you specify
* the service to which user should authenticate for the policy to apply
*
- * @deprecated See {@link org.forgerock.openam.entitlement.conditions.environment.AuthenticateToServiceCondition}
+ * @deprecated See {@code org.forgerock.openam.entitlement.conditions.environment.AuthenticateToServiceCondition}
* instead.
*/
@Deprecated
diff --git a/openam-core/src/main/java/com/sun/identity/policy/plugins/AuthenticatedSharedAgentsCondition.java b/openam-core/src/main/java/com/sun/identity/policy/plugins/AuthenticatedSharedAgentsCondition.java
index 1401d53355..88d0c4d2aa 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/plugins/AuthenticatedSharedAgentsCondition.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/plugins/AuthenticatedSharedAgentsCondition.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -139,7 +140,7 @@ public List getPropertyNames()
*
* @param property String representing property name
*
- * @return Syntax for the property name
+ * @return Syntax for the property name
*/
public Syntax getPropertySyntax(String property)
{
diff --git a/openam-core/src/main/java/com/sun/identity/policy/plugins/AuthenticatedUsers.java b/openam-core/src/main/java/com/sun/identity/policy/plugins/AuthenticatedUsers.java
index 742546c561..0532f4184c 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/plugins/AuthenticatedUsers.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/plugins/AuthenticatedUsers.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -46,7 +47,7 @@
/**
* This subject applies to all users with valid SSOToken.
*
- * @deprecated Use {@link org.forgerock.openam.entitlement.conditions.subject.AuthenticatedUsers} instead.
+ * @deprecated Use {@code org.forgerock.openam.entitlement.conditions.subject.AuthenticatedUsers} instead.
*/
@Deprecated
public class AuthenticatedUsers implements Subject {
diff --git a/openam-core/src/main/java/com/sun/identity/policy/plugins/DSAMERole.java b/openam-core/src/main/java/com/sun/identity/policy/plugins/DSAMERole.java
index eb6b668e95..2a68a0157d 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/plugins/DSAMERole.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/plugins/DSAMERole.java
@@ -25,6 +25,7 @@
* $Id: DSAMERole.java,v 1.4 2009/01/28 05:35:01 ww203982 Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.policy.plugins;
@@ -149,11 +150,7 @@ public void initialize(Map configParams) throws PolicyException {
* @param token the SSOToken that will be used
* to determine the syntax
*
- * @return set of of valid names for the user collection.
- *
* @exception SSOException if SSO token is not valid
- * @exception PolicyException if unable to get the list of valid
- * names.
*
* @return syntax of the values for the Subject
*/
diff --git a/openam-core/src/main/java/com/sun/identity/policy/plugins/HttpURLResourceName.java b/openam-core/src/main/java/com/sun/identity/policy/plugins/HttpURLResourceName.java
index 0eccb9387f..ec2ba2fd9e 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/plugins/HttpURLResourceName.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/plugins/HttpURLResourceName.java
@@ -25,6 +25,7 @@
* $Id: HttpURLResourceName.java,v 1.4 2008/06/25 05:43:51 qcheng Exp $
*
* Portions Copyrighted 2014 ForgeRock AS
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.policy.plugins;
@@ -37,7 +38,7 @@
* This class was no longer in sync with expected policy evaluation and moved away from the behaviour of
* {@link URLResourceName} which duplicates the behaviour of {@link com.sun.identity.entitlement.URLResourceName}
* that is used by the server when evaluation a policy request in self mode.
- *
+ *
* To help reduce the cost of upgrade this class has been modified to ensure it continues with eager normalisation of
* resource URLs but otherwise delegates directly to its subclass {@link URLResourceName}.
*
diff --git a/openam-core/src/main/java/com/sun/identity/policy/plugins/IDRepoResponseProvider.java b/openam-core/src/main/java/com/sun/identity/policy/plugins/IDRepoResponseProvider.java
index 6d2db19ede..831e55bf10 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/plugins/IDRepoResponseProvider.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/plugins/IDRepoResponseProvider.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -169,7 +170,7 @@ public List getPropertyNames() {
*
* @param property property name
*
- * @return Syntax for the property name
+ * @return Syntax for the property name
*/
public Syntax getPropertySyntax(String property) {
if (property.equals(STATIC_ATTRIBUTE)) {
@@ -191,7 +192,7 @@ public Syntax getPropertySyntax(String property) {
* @param property property name
* @param locale locale for which the property name must be customized
* @return display name for the property name.
- * @throws PolicyException
+ * @throws PolicyException if the display name cannot be retrieved
*/
public String getDisplayName(String property, Locale locale)
throws PolicyException {
diff --git a/openam-core/src/main/java/com/sun/identity/policy/plugins/IPCondition.java b/openam-core/src/main/java/com/sun/identity/policy/plugins/IPCondition.java
index 8f7ad5a3d9..8d642023dd 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/plugins/IPCondition.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/plugins/IPCondition.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -57,8 +58,8 @@
* of Condition. This lets you define the IP addresses,
* IP address ranges and DNS name patterns for which the policy applies
*
- * @deprecated Use {@link org.forgerock.openam.entitlement.conditions.environment.IPv4Condition}
- * or {@link org.forgerock.openam.entitlement.conditions.environment.IPv6Condition} instead.
+ * @deprecated Use {@code org.forgerock.openam.entitlement.conditions.environment.IPv4Condition}
+ * or {@code org.forgerock.openam.entitlement.conditions.environment.IPv6Condition} instead.
*/
@Deprecated
public class IPCondition implements Condition {
@@ -107,7 +108,7 @@ public List getPropertyNames() {
* @see com.sun.identity.policy.Syntax
*
* @param property property name
- * @return Syntax for the property name
+ * @return Syntax for the property name
*/
public Syntax getPropertySyntax(String property) {
return Syntax.NONE;
@@ -123,7 +124,7 @@ public Syntax getPropertySyntax(String property) {
* @param property property name
* @param locale locale for which the property name must be customized
* @return display name for the property name
- * @throws PolicyException
+ * @throws PolicyException if the display name cannot be determined.
*/
public String getDisplayName(String property, Locale locale) throws PolicyException {
if (ipv6) {
@@ -164,7 +165,6 @@ public Set getValidValues(String property) throws PolicyException {
* by IP and DNS_NAME
* @see #START_IP
* @see #END_IP
- * @see #IP_RANGE
* @see #DNS_NAME
* @see #REQUEST_IP
* @see #REQUEST_DNS_NAME
@@ -236,11 +236,9 @@ public Map getProperties() {
* @see #setProperties(Map)
* @see #START_IP
* @see #END_IP
- * @see #IP_RANGE
* @see #DNS_NAME
* @see #REQUEST_IP
* @see #REQUEST_DNS_NAME
- * @see com.sun.identity.policy.
*/
public ConditionDecision getConditionDecision(SSOToken token, Map env) throws PolicyException, SSOException {
// Determine Request IP address
@@ -257,7 +255,7 @@ public ConditionDecision getConditionDecision(SSOToken token, Map env) throws Po
*
* @param env map containing environment description. Note that the type of the value corresponding to REQUEST_IP
* parameter differs depending upon invocation path. It will be a String when invoked by the agents, but it will be
- * a Set when invoked via the DecisionResource (GET ws/1/entitlement/entitlements).
+ * a {@code Set} when invoked via the DecisionResource (GET ws/1/entitlement/entitlements).
* @return the IP that was used
*/
public static String getRequestIp(Map env) {
diff --git a/openam-core/src/main/java/com/sun/identity/policy/plugins/LDAPFilterCondition.java b/openam-core/src/main/java/com/sun/identity/policy/plugins/LDAPFilterCondition.java
index 66721ef6a9..a4e72f6237 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/plugins/LDAPFilterCondition.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/plugins/LDAPFilterCondition.java
@@ -25,6 +25,7 @@
* $Id: LDAPFilterCondition.java,v 1.8 2009/11/20 23:52:55 ww203982 Exp $
*
* Portions Copyrighted 2010-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.policy.plugins;
@@ -85,7 +86,7 @@
* in policy configuration service, satisfiies the ldap filter
* specified in the condition
*
- * @deprecated Use {@link org.forgerock.openam.entitlement.conditions.environment.LDAPFilterCondition} instead.
+ * @deprecated Use {@code org.forgerock.openam.entitlement.conditions.environment.LDAPFilterCondition} instead.
*/
@Deprecated
public class LDAPFilterCondition implements Condition {
@@ -148,7 +149,7 @@ public List getPropertyNames() {
*
* @param property name of property for which to get Syntax
*
- * @return Syntax for the property name
+ * @return Syntax for the property name
*/
public Syntax getPropertySyntax(String property) {
return (Syntax.ANY);
diff --git a/openam-core/src/main/java/com/sun/identity/policy/plugins/LDAPGroups.java b/openam-core/src/main/java/com/sun/identity/policy/plugins/LDAPGroups.java
index 19e52dc487..5eeeb96ffd 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/plugins/LDAPGroups.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/plugins/LDAPGroups.java
@@ -26,6 +26,7 @@
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
* Portions Copyrighted 2012 Open Source Solution Technology Corporation
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.policy.plugins;
@@ -431,7 +432,7 @@ public void setValues(Set names) throws InvalidNameException {
* @return true if the user is memeber of the
* given subject; false otherwise.
*
- * @exception SSOException if SSOToken>/code> is not valid
+ * @exception SSOException if SSOToken is not valid
* @exception PolicyException if an error occured while
* checking if the user is a member of this subject
*/
diff --git a/openam-core/src/main/java/com/sun/identity/policy/plugins/LDAPRoles.java b/openam-core/src/main/java/com/sun/identity/policy/plugins/LDAPRoles.java
index 76f80792c5..9ac75f7070 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/plugins/LDAPRoles.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/plugins/LDAPRoles.java
@@ -26,6 +26,7 @@
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
* Portions Copyrighted 2012 Open Source Solution Technology Corporation
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.policy.plugins;
@@ -259,7 +260,7 @@ public void initialize(Map configParams) throws PolicyException {
* @param token the SSOToken that will be used
* to determine the syntax
* @return set of of valid names for the user collection.
- * @exception SSOException if SSOToken> is not valid
+ * @exception SSOException if SSOToken is not valid
*/
public Syntax getValueSyntax(SSOToken token) throws SSOException {
return (Syntax.MULTIPLE_CHOICE);
@@ -274,7 +275,7 @@ public Syntax getValueSyntax(SSOToken token) throws SSOException {
*
* @return ValidValues object
*
- * @exception SSOException if SSOToken> is not valid
+ * @exception SSOException if SSOToken is not valid
* @exception PolicyException if unable to get the list of valid
* names.
*/
@@ -295,7 +296,7 @@ public ValidValues getValidValues(SSOToken token) throws
*
* @return ValidValues object
*
- * @exception SSOException if SSOToken> is not valid
+ * @exception SSOException if SSOToken is not valid
* @exception PolicyException if unable to get the list of valid
* names.
*/
diff --git a/openam-core/src/main/java/com/sun/identity/policy/plugins/LEAuthLevelCondition.java b/openam-core/src/main/java/com/sun/identity/policy/plugins/LEAuthLevelCondition.java
index 06e3323089..89cd5067d8 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/plugins/LEAuthLevelCondition.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/plugins/LEAuthLevelCondition.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -62,7 +63,7 @@
* env map, AuthLevel is looked up from single sign on
* token.
*
- * @deprecated Use {@link org.forgerock.openam.entitlement.conditions.environment.LEAuthLevelCondition} instead.
+ * @deprecated Use {@code org.forgerock.openam.entitlement.conditions.environment.LEAuthLevelCondition} instead.
*/
@Deprecated
public class LEAuthLevelCondition implements Condition {
@@ -101,7 +102,7 @@ public List getPropertyNames() {
*
* @param property property name
*
- * @return Syntax for the property name
+ * @return Syntax for the property name
*/
public Syntax getPropertySyntax(String property) {
return Syntax.NONE;
@@ -117,7 +118,7 @@ public Syntax getPropertySyntax(String property) {
* @param property property name
* @param locale locale for which the property name must be customized
* @return display name for the property name
- * @throws PolicyException
+ * @throws PolicyException if the display name cannot be determined
*/
public String getDisplayName(String property, Locale locale)
throws PolicyException {
diff --git a/openam-core/src/main/java/com/sun/identity/policy/plugins/OrgReferral.java b/openam-core/src/main/java/com/sun/identity/policy/plugins/OrgReferral.java
index 6393f93cd9..fb5b75fa58 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/plugins/OrgReferral.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/plugins/OrgReferral.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -134,7 +135,7 @@ public String getDisplayNameForValue(String value, Locale locale)
* Gets the valid values for this referral
* @param token SSOToken
* @return ValidValues object
- * @exception SSOException if SSOToken> is not valid
+ * @exception SSOException if SSOToken is not valid
* @exception PolicyException if unable to get the list of valid
* names.
*/
@@ -145,8 +146,8 @@ public abstract ValidValues getValidValues(SSOToken token)
* Gets the valid values for this referral matching a pattern
* @param token SSOToken
* @param pattern a pattern to match against the value
- * @return ValidValues object
- * @exception SSOException if SSOToken> is not valid
+ * @return ValidValues object
+ * @exception SSOException if SSOToken is not valid
* @exception PolicyException if unable to get the list of valid
* names.
*/
@@ -159,7 +160,7 @@ public abstract ValidValues getValidValues(SSOToken token, String pattern)
* @param token the SSOToken that will be used
* to determine the syntax
* @return set of of valid names for the referral.
- * @exception SSOException if SSOToken> is not valid
+ * @exception SSOException if SSOToken is not valid
*/
public Syntax getValueSyntax(SSOToken token)
throws SSOException, PolicyException {
@@ -188,8 +189,8 @@ public Syntax getValueSyntax(SSOToken token)
* Each key is an environment parameter name.
* Each value is a set of values for the parameter.
* @return policy decision
- * @throws SSOException
- * @throws PolicyException
+ * @throws SSOException if the token is invalid
+ * @throws PolicyException if the policy decision cannot be obtained
*/
public PolicyDecision getPolicyDecision(SSOToken token,
String resourceType, String resourceName, Set actionNames,
diff --git a/openam-core/src/main/java/com/sun/identity/policy/plugins/PeerOrgReferral.java b/openam-core/src/main/java/com/sun/identity/policy/plugins/PeerOrgReferral.java
index cef1ecea55..9a622549e7 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/plugins/PeerOrgReferral.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/plugins/PeerOrgReferral.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -68,11 +69,11 @@ public String getReferralTypeName() {
* Gets the valid values for this referral
* @param token SSOToken
* @return ValidValues object
- * @exception SSOException if SSOToken> is not valid
+ * @exception SSOException if SSOToken is not valid
* @exception PolicyException if unable to get the list of valid
* names.
*/
- public ValidValues getValidValues(SSOToken token)
+ public ValidValues getValidValues(SSOToken token)
throws SSOException, PolicyException {
return getValidValues(token ,"*");
}
@@ -82,7 +83,7 @@ public ValidValues getValidValues(SSOToken token)
* @param token SSOToken
* @param pattern a pattern to match against the value
* @return ValidValues object
- * @exception SSOException if SSOToken> is not valid
+ * @exception SSOException if SSOToken is not valid
* @exception PolicyException if unable to get the list of valid
* names.
*/
diff --git a/openam-core/src/main/java/com/sun/identity/policy/plugins/ResourceEnvIPCondition.java b/openam-core/src/main/java/com/sun/identity/policy/plugins/ResourceEnvIPCondition.java
index d439bb2b8f..cbb2610f82 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/plugins/ResourceEnvIPCondition.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/plugins/ResourceEnvIPCondition.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2009 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -76,7 +77,7 @@
* resource such as IP address, DNS host name, location, etc.
* For the first drop, we are only supporting IP address.
*
- * @deprecated Use {@link org.forgerock.openam.entitlement.conditions.environment.ResourceEnvIPCondition instead}.
+ * @deprecated Use {@code org.forgerock.openam.entitlement.conditions.environment.ResourceEnvIPCondition} instead.
*/
@Deprecated
public class ResourceEnvIPCondition implements Condition {
@@ -118,7 +119,7 @@ public List getPropertyNames()
*
* @param property String property name
*
- * @return Syntax for the property name
+ * @return Syntax for the property name
*/
public Syntax getPropertySyntax(String property)
{
diff --git a/openam-core/src/main/java/com/sun/identity/policy/plugins/SessionCondition.java b/openam-core/src/main/java/com/sun/identity/policy/plugins/SessionCondition.java
index 916b1dc99c..e2cbb7e513 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/plugins/SessionCondition.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/plugins/SessionCondition.java
@@ -25,6 +25,7 @@
* $Id: SessionCondition.java,v 1.4 2008/06/25 05:43:52 qcheng Exp $
*
* Portions Copyright 2014-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.policy.plugins;
@@ -64,7 +65,7 @@
* to terminate the user session if the session time exceeds the
* maximum allowed.
*
- * @deprecated Use {@link org.forgerock.openam.entitlement.conditions.environment.SessionCondition} instead.
+ * @deprecated Use {@code org.forgerock.openam.entitlement.conditions.environment.SessionCondition} instead.
*/
@Deprecated
public class SessionCondition implements Condition {
@@ -144,7 +145,7 @@ public List getPropertyNames() {
* Gets the Syntax for a property name.
*
* @param property property name
- * @return Syntax for the property name
+ * @return Syntax for the property name
*
* @see com.sun.identity.policy.Syntax
*/
diff --git a/openam-core/src/main/java/com/sun/identity/policy/plugins/SessionPropertyCondition.java b/openam-core/src/main/java/com/sun/identity/policy/plugins/SessionPropertyCondition.java
index e08b19083c..518847e62f 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/plugins/SessionPropertyCondition.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/plugins/SessionPropertyCondition.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -58,7 +59,7 @@
* This condition checks whether session properties contain at least
* one value of the each property listed in the Condition
*
- * @deprecated Use {@link org.forgerock.openam.entitlement.conditions.environment.SessionPropertyCondition} instead.
+ * @deprecated Use {@code org.forgerock.openam.entitlement.conditions.environment.SessionPropertyCondition} instead.
*/
@Deprecated
public class SessionPropertyCondition implements Condition {
@@ -99,7 +100,7 @@ public List getPropertyNames()
*
* @param property String representing property name
*
- * @return Syntax for the property name
+ * @return Syntax for the property name
*/
public Syntax getPropertySyntax(String property)
{
diff --git a/openam-core/src/main/java/com/sun/identity/policy/plugins/SimpleTimeCondition.java b/openam-core/src/main/java/com/sun/identity/policy/plugins/SimpleTimeCondition.java
index d9661c5bda..d7ec2638b1 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/plugins/SimpleTimeCondition.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/plugins/SimpleTimeCondition.java
@@ -25,6 +25,7 @@
* $Id: SimpleTimeCondition.java,v 1.5 2010/01/05 22:00:26 dillidorai Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.policy.plugins;
@@ -49,7 +50,7 @@
* of Condition. This lets you define the time range
* of week days and/or date range during which a policy applies.
*
- * @deprecated Use {@link org.forgerock.openam.entitlement.conditions.environment.SimpleTimeCondition} instead.
+ * @deprecated Use {@code org.forgerock.openam.entitlement.conditions.environment.SimpleTimeCondition} instead.
*/
@Deprecated
public class SimpleTimeCondition implements Condition {
@@ -119,7 +120,7 @@ public List getPropertyNames() {
*
* @param property property name
*
- * @return Syntax for the property name
+ * @return Syntax for the property name
*/
public Syntax getPropertySyntax(String property) {
return Syntax.NONE;
@@ -712,7 +713,7 @@ private long[] getEffectiveRange(long currentGmt, TimeZone timeZone) {
*
* @throws PolicyException if the condition has not been initialized
* with a successful call to setProperties(Map) and/or
- * the value of keys REQUEST_TIME and/or
+ * the value of keys REQUEST_TIME and/or
* REQUEST_TIME_ZONE are invalid.
* @throws SSOException if the token is invalid
* @see #setProperties(Map)
diff --git a/openam-core/src/main/java/com/sun/identity/policy/plugins/SubOrgReferral.java b/openam-core/src/main/java/com/sun/identity/policy/plugins/SubOrgReferral.java
index 2dac6c4a8e..4e8a76b8fe 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/plugins/SubOrgReferral.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/plugins/SubOrgReferral.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -67,7 +68,7 @@ public String getReferralTypeName() {
* Gets the valid values for this referral
* @param token SSOToken
* @return ValidValues object
- * @exception SSOException if SSOToken> is not valid
+ * @exception SSOException if SSOToken is not valid
* @exception PolicyException if unable to get the list of valid
* names.
*/
@@ -81,7 +82,7 @@ public ValidValues getValidValues(SSOToken token)
* @param token SSOToken
* @param pattern a pattern to match against the value
* @return ValidValues object
- * @exception SSOException if SSOToken> is not valid
+ * @exception SSOException if SSOToken is not valid
* @exception PolicyException if unable to get the list of valid
* names.
*/
diff --git a/openam-core/src/main/java/com/sun/identity/policy/plugins/UserSelfCheckCondition.java b/openam-core/src/main/java/com/sun/identity/policy/plugins/UserSelfCheckCondition.java
index 74fd692dd4..0c584f26ef 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/plugins/UserSelfCheckCondition.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/plugins/UserSelfCheckCondition.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -106,7 +107,7 @@ public List getPropertyNames() {
*
* @param property String representing property name
*
- * @return Syntax for the property name
+ * @return Syntax for the property name
*/
public Syntax getPropertySyntax(String property)
{
diff --git a/openam-core/src/main/java/com/sun/identity/policy/remote/AdvicesHandleableByAMRequest.java b/openam-core/src/main/java/com/sun/identity/policy/remote/AdvicesHandleableByAMRequest.java
index 33ce75022b..cbacdbeb1f 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/remote/AdvicesHandleableByAMRequest.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/remote/AdvicesHandleableByAMRequest.java
@@ -25,6 +25,7 @@
* $Id: AdvicesHandleableByAMRequest.java,v 1.5 2008/08/19 19:09:19 veiming Exp $
*
* Portions Copyrighted 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.policy.remote;
@@ -35,16 +36,14 @@
* This AdvicesHandleableByAMRequest class represents a
* AdvicesHandleableByAMRequest XML element. The
* AdvicesHandleableByAMRequest DTD is defined as the following:
- *
- *
+ * {@code
*
*
*
- *
- *
+ * }
*/
public class AdvicesHandleableByAMRequest {
static final String ADVICES_HANDLEABLE_BY_AM_REQUEST_XML =
diff --git a/openam-core/src/main/java/com/sun/identity/policy/remote/AdvicesHandleableByAMResponse.java b/openam-core/src/main/java/com/sun/identity/policy/remote/AdvicesHandleableByAMResponse.java
index 0b541753d4..64e2faf7bc 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/remote/AdvicesHandleableByAMResponse.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/remote/AdvicesHandleableByAMResponse.java
@@ -25,6 +25,7 @@
* $Id: AdvicesHandleableByAMResponse.java,v 1.4 2008/08/19 19:09:19 veiming Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.policy.remote;
@@ -39,7 +40,6 @@
* AdvicesHandleableByAMResponse XML element.
* The AdvicesHandleableByAMResponse DTD is
* defined as the following:
- *
*
*
*
- *
+ * <!ELEMENT AdvicesHandleableByAMResponse (AttributeValuePair?) >
*
- *
*/
public class AdvicesHandleableByAMResponse {
diff --git a/openam-core/src/main/java/com/sun/identity/policy/remote/PolicyChangeNotification.java b/openam-core/src/main/java/com/sun/identity/policy/remote/PolicyChangeNotification.java
index 20f0cba184..95ae73d23d 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/remote/PolicyChangeNotification.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/remote/PolicyChangeNotification.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -43,8 +44,7 @@
* This PolicyChangeNotification class represents a
* PolicyChangeNotification XML document. The PolicyChangeNotification
* DTD is defined as the following:
- *
- *
+ * {@code
*
*
*
- *
+ * }
*
- *
*/
public class PolicyChangeNotification {
@@ -160,7 +159,7 @@ void setResourceNames(Set names) {
* the XML.
*
* @param pNode the XML DOM node for the
- * PolicyChangeNotification object.
+ * PolicyChangeNotification object.
* @return constructed PolicyChangeNotification object.
*/
public static PolicyChangeNotification parseXML(Node pNode)
diff --git a/openam-core/src/main/java/com/sun/identity/policy/remote/PolicyListenerRequest.java b/openam-core/src/main/java/com/sun/identity/policy/remote/PolicyListenerRequest.java
index 1ae4117333..8975eba160 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/remote/PolicyListenerRequest.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/remote/PolicyListenerRequest.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -49,9 +50,8 @@
* This PolicyListenerRequest class represents an
* AddPolicyListener XML document. The AddPolicyListener DTD is
* defined as the following:
- *
- *
- *
*
- *
- *
+ * >
*
- *
*/
public class RemoveListenerRequest {
diff --git a/openam-core/src/main/java/com/sun/identity/policy/remote/ResourceResultRequest.java b/openam-core/src/main/java/com/sun/identity/policy/remote/ResourceResultRequest.java
index db95343e28..046cf4c2e2 100644
--- a/openam-core/src/main/java/com/sun/identity/policy/remote/ResourceResultRequest.java
+++ b/openam-core/src/main/java/com/sun/identity/policy/remote/ResourceResultRequest.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -45,8 +46,7 @@
* This ResourceResultRequest class represents a
* GetResourceResults XML document. The GetResourceResults
* DTD is defined as the following:
- *
- *
+ * {@code
* Key: String::ServiceName
- * Value: Map::svcAttributes Map::svcAttributes --> Key:
+ * arranged is: Map::attributes --> Key: String::ServiceName
+ * Value: Map::svcAttributes Map::svcAttributes --> Key:
* String::AttributeName Value: Set::AttributeValues
*
* @return organization config manager of the newly created
diff --git a/openam-core/src/main/java/com/sun/identity/sm/PluginConfig.java b/openam-core/src/main/java/com/sun/identity/sm/PluginConfig.java
index 7f1e81c1b6..e3b51bb465 100644
--- a/openam-core/src/main/java/com/sun/identity/sm/PluginConfig.java
+++ b/openam-core/src/main/java/com/sun/identity/sm/PluginConfig.java
@@ -25,6 +25,7 @@
* $Id: PluginConfig.java,v 1.5 2009/01/28 05:35:03 ww203982 Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.sm;
@@ -150,7 +151,7 @@ public Map getAttributes() {
* @param attrs
* the Map where key is the attribute name and
* value is the Set of attribute values
- * @throws SMSException
+ * @throws SMSException if an error occurs while saving the configuration.
*/
public void setAttributes(Map attrs) throws SMSException, SSOException {
validatePluginConfig();
@@ -176,7 +177,7 @@ public void setAttributes(Map attrs) throws SMSException, SSOException {
* the name of the attribute to add
* @param values
* the set of values to add
- * @throws SMSException
+ * @throws SMSException if an error occurs while saving the configuration.
*/
public void addAttribute(String attrName, Set values) throws SMSException,
SSOException {
@@ -206,7 +207,7 @@ public void addAttribute(String attrName, Set values) throws SMSException,
*
* @param attrName
* the name of the attribute to remove
- * @throws SMSException
+ * @throws SMSException if an error occurs while saving the configuration.
*/
public void removeAttribute(String attrName) throws SMSException,
SSOException {
@@ -223,7 +224,7 @@ public void removeAttribute(String attrName) throws SMSException,
* the name of the attribute
* @param values
* set of attribute values to remove from the given attribute
- * @throws SMSException
+ * @throws SMSException if an error occurs while saving the configuration.
*/
public void removeAttributeValues(String attrName, Set values)
throws SMSException, SSOException {
@@ -243,7 +244,7 @@ public void removeAttributeValues(String attrName, Set values)
* the old value to remove from the attribute
* @param newValue
* the new value to add to the attribute
- * @throws SMSException
+ * @throws SMSException if an error occurs while saving the configuration.
*/
public void replaceAttributeValue(String attrName, String oldValue,
String newValue) throws SMSException, SSOException {
@@ -278,7 +279,7 @@ public void replaceAttributeValue(String attrName, String oldValue,
* the set of old values to remove from the attribute
* @param newValues
* the set of new values to add to the attribute
- * @throws SMSException
+ * @throws SMSException if an error occurs while saving the configuration.
*/
public void replaceAttributeValues(String attrName, Set oldValues,
Set newValues) throws SMSException, SSOException {
diff --git a/openam-core/src/main/java/com/sun/identity/sm/SMSEventListenerManager.java b/openam-core/src/main/java/com/sun/identity/sm/SMSEventListenerManager.java
index 22202a1591..2c4912f77a 100644
--- a/openam-core/src/main/java/com/sun/identity/sm/SMSEventListenerManager.java
+++ b/openam-core/src/main/java/com/sun/identity/sm/SMSEventListenerManager.java
@@ -25,6 +25,7 @@
* $Id: SMSEventListenerManager.java,v 1.12 2009/01/28 05:35:03 ww203982 Exp $
*
* Portions Copyright 2015-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.sm;
@@ -44,8 +45,8 @@
/**
* Receives notifications for all SMS object changes from
- * SMSNotificationManager and dispatches the same to
- * CachedSMSEntry and CachedSubEntries . This class
+ * SMSNotificationManager and dispatches the same to
+ * CachedSMSEntry and CachedSubEntries. This class
* also handles the case of sending deleted event for recursive deletes.
*/
class SMSEventListenerManager implements SMSObjectListener {
diff --git a/openam-core/src/main/java/com/sun/identity/sm/SMSException.java b/openam-core/src/main/java/com/sun/identity/sm/SMSException.java
index 49199df090..0b503c5032 100644
--- a/openam-core/src/main/java/com/sun/identity/sm/SMSException.java
+++ b/openam-core/src/main/java/com/sun/identity/sm/SMSException.java
@@ -25,6 +25,7 @@
* $Id: SMSException.java,v 1.7 2009/01/28 05:35:03 ww203982 Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.sm;
@@ -450,7 +451,6 @@ private String mapLDAPException(ResultCode resultCode) {
/**
* If root LDAP cause is an LDAP exception with one of the following error
* codes then this status is set.
- *
*
*
*
diff --git a/openam-core/src/main/java/com/sun/identity/sm/SMSNotificationManager.java b/openam-core/src/main/java/com/sun/identity/sm/SMSNotificationManager.java
index 5befdf998b..b6fdebcba5 100644
--- a/openam-core/src/main/java/com/sun/identity/sm/SMSNotificationManager.java
+++ b/openam-core/src/main/java/com/sun/identity/sm/SMSNotificationManager.java
@@ -25,6 +25,7 @@
* $Id: SMSNotificationManager.java,v 1.14 2009/11/10 21:49:44 hengming Exp $
*
* Portions Copyrighted 2014 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.sm;
@@ -53,7 +54,7 @@
*
* Classes that will register for notifications are:
* 1) SMSEventListnerManager -- to send notifications to internal objects
- * Framework classes i.e., Cached* & *Impls that maintain read only caches
+ * Framework classes i.e., Cached* & *Impls that maintain read only caches
* 2) SMSJAXRPCObjectImpl -- to send notifications to remote clients
* 3) SMSLdapObjectImpl -- to clear its internal cache
* Of the above (2) and (3) would happen only on the Server only.
diff --git a/openam-core/src/main/java/com/sun/identity/sm/SMSPropertiesObserver.java b/openam-core/src/main/java/com/sun/identity/sm/SMSPropertiesObserver.java
index 2ac483b7fc..d84b467c09 100644
--- a/openam-core/src/main/java/com/sun/identity/sm/SMSPropertiesObserver.java
+++ b/openam-core/src/main/java/com/sun/identity/sm/SMSPropertiesObserver.java
@@ -25,6 +25,7 @@
* $Id: SMSPropertiesObserver.java,v 1.1 2008/07/30 00:50:15 arviranga Exp $
*
* Portions Copyrighted 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*
*/
@@ -38,7 +39,7 @@
import org.forgerock.opendj.ldap.LdapException;
/**
- * Listenes to changes to SystemProperties and reinitialized
+ * Listenes to changes to SystemProperties and reinitialized
* configuration framework. The properties that takes effect upon change are:
* com.iplanet.am.sdk.caching.enabled
* com.sun.identity.sm.cache.enabled
diff --git a/openam-core/src/main/java/com/sun/identity/sm/SMSSchema.java b/openam-core/src/main/java/com/sun/identity/sm/SMSSchema.java
index 3f38ddd3a3..76266e324f 100644
--- a/openam-core/src/main/java/com/sun/identity/sm/SMSSchema.java
+++ b/openam-core/src/main/java/com/sun/identity/sm/SMSSchema.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -222,7 +223,7 @@ protected Node getServiceNode() throws SMSException {
* @param serviceName
* name of the service
* @return service schema in serialized String format
- * @throws SMSException
+ * @throws SMSException if the schema cannot be retrieved.
*/
protected String getSchema(String serviceName) throws SMSException {
String oldServiceName = this.serviceName;
@@ -237,7 +238,7 @@ protected String getSchema(String serviceName) throws SMSException {
* stored in a directory.
*
* @return service schema in serialized String format
- * @throws SMSException
+ * @throws SMSException if the schema cannot be retrieved.
*/
public String getSchema() throws SMSException {
Node node = null;
@@ -260,7 +261,7 @@ public String getSchema() throws SMSException {
* @param pluginName
* name of the plugin schema name
* @return service plugin schema in serialized String format
- * @throws SMSException
+ * @throws SMSException if the plugin schema cannot be retrieved.
*/
public String getPluginSchema(String serviceName, String pluginName)
throws SMSException {
@@ -278,7 +279,7 @@ public String getPluginSchema(String serviceName, String pluginName)
* @param pluginName
* name of the plugin schema name
* @return service plugin schema in serialized String format
- * @throws SMSException
+ * @throws SMSException if the plugin schema cannot be retrieved.
*/
public String getPluginSchema(String pluginName) throws SMSException {
Node parent = getServiceNode();
@@ -303,7 +304,7 @@ public String getPluginSchema(String pluginName) throws SMSException {
*
* @param pluginName plugin schema name
* @return service plugin schema in serialized String format
- * @throws SMSException
+ * @throws SMSException if the plugin schema cannot be retrieved.
*/
public String getPluginSchema(Node pluginName) throws SMSException {
return (PLUGIN_PREFIX_1 + getServiceName() + PLUGIN_PREFIX_2
@@ -429,7 +430,7 @@ Document getDocument() {
}
/**
- * The method escapes '&', '<', '>', '"', '''
+ * The method escapes '&', '<', '>', '"', '''
*/
public static String escapeSpecialCharacters(String txt) {
if (txt == null) {
diff --git a/openam-core/src/main/java/com/sun/identity/sm/SMSUtils.java b/openam-core/src/main/java/com/sun/identity/sm/SMSUtils.java
index f8d5971fc0..266f0f9fd7 100644
--- a/openam-core/src/main/java/com/sun/identity/sm/SMSUtils.java
+++ b/openam-core/src/main/java/com/sun/identity/sm/SMSUtils.java
@@ -25,6 +25,7 @@
* $Id: SMSUtils.java,v 1.5 2008/07/11 01:46:21 arviranga Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.sm;
@@ -250,7 +251,7 @@ public static ATTRIBUTE_SCHEMA_CHILD valueOfName(String name) {
/**
* Get the node type name
- * @return
+ * @return the node type name
*/
public String getNodeName() {
return name;
diff --git a/openam-core/src/main/java/com/sun/identity/sm/ServiceAttributeValidator.java b/openam-core/src/main/java/com/sun/identity/sm/ServiceAttributeValidator.java
index ae4eb1f689..af3ca73fa9 100644
--- a/openam-core/src/main/java/com/sun/identity/sm/ServiceAttributeValidator.java
+++ b/openam-core/src/main/java/com/sun/identity/sm/ServiceAttributeValidator.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -44,7 +45,6 @@ public interface ServiceAttributeValidator {
/**
* Validates the given set of string values.
- *
*
*
* Example:
diff --git a/openam-core/src/main/java/com/sun/identity/sm/ServiceManager.java b/openam-core/src/main/java/com/sun/identity/sm/ServiceManager.java
index c3de5d0d8e..3194cfb48b 100644
--- a/openam-core/src/main/java/com/sun/identity/sm/ServiceManager.java
+++ b/openam-core/src/main/java/com/sun/identity/sm/ServiceManager.java
@@ -25,6 +25,7 @@
* $Id: ServiceManager.java,v 1.27 2009/10/28 04:24:26 hengming Exp $
*
* Portions Copyrighted 2012-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.sm;
@@ -634,7 +635,7 @@ private boolean validSMSDtdDocType(Document doc) {
/**
* Adds a new plugin schema to an existing service
*
- * @param pluginDoc
+ * @param pluginDoc the plugin schema document to add
* @throws SMSException if an error occurred while performing the operation
* @throws SSOException if the user's single sign on token is invalid or
* expired.
diff --git a/openam-core/src/main/java/com/sun/identity/sm/ServiceSchemaManager.java b/openam-core/src/main/java/com/sun/identity/sm/ServiceSchemaManager.java
index af92f7223b..2c0c486f77 100644
--- a/openam-core/src/main/java/com/sun/identity/sm/ServiceSchemaManager.java
+++ b/openam-core/src/main/java/com/sun/identity/sm/ServiceSchemaManager.java
@@ -25,6 +25,7 @@
* $Id: ServiceSchemaManager.java,v 1.12 2009/07/25 05:11:55 qcheng Exp $
*
* Portions Copyrighted 2012-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.sm;
@@ -65,8 +66,8 @@ public class ServiceSchemaManager {
/**
* Constructor for service's schema manager to manage the attributes and
- * sub configurations. Assumes service version number to be 1.0
- * .
+ * sub configurations. Assumes service version number to be 1.0
+ * .
*
* @throws SMSException
* if an error occurred while trying to perform the operation
diff --git a/openam-core/src/main/java/com/sun/identity/sm/flatfile/SMSEnhancedFlatFileObject.java b/openam-core/src/main/java/com/sun/identity/sm/flatfile/SMSEnhancedFlatFileObject.java
index 73c2803344..30e594253a 100644
--- a/openam-core/src/main/java/com/sun/identity/sm/flatfile/SMSEnhancedFlatFileObject.java
+++ b/openam-core/src/main/java/com/sun/identity/sm/flatfile/SMSEnhancedFlatFileObject.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -663,7 +664,7 @@ public void delete(SSOToken token, String objName)
* @param token Ignored argument. Access check is assumed to have
* occurred before reaching this method.
* @param objName Name of the configuration object to check.
- * @return true>/code> if the configuration object exists.
+ * @return true if the configuration object exists.
* @throws IllegalArgumentException if objName is null or empty.
*/
public boolean entryExists(SSOToken token, String objName) {
diff --git a/openam-core/src/main/java/com/sun/identity/sm/flatfile/SMSFlatFileObject.java b/openam-core/src/main/java/com/sun/identity/sm/flatfile/SMSFlatFileObject.java
index bde22eb55b..5ff9e97b0f 100644
--- a/openam-core/src/main/java/com/sun/identity/sm/flatfile/SMSFlatFileObject.java
+++ b/openam-core/src/main/java/com/sun/identity/sm/flatfile/SMSFlatFileObject.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -62,7 +63,7 @@
* a configuration object is hierarchy levels separated by a comma,
* for example "ou=serviceName,ou=services,dc=sun,dc=com".
* This object would live in the directory
- * /dc=com/dc=sun/ou=services/ou=serviceName
+ * {@code }/dc=com/dc=sun/ou=services/ou=serviceName
* The directory has a file with the object's attributes in
* java.util.Properties format. The file name is Attributes.properties.
* Attributes with multi-values are seperated by a comma.
@@ -792,7 +793,7 @@ public void delete(SSOToken token, String objName)
* @param token Ignored argument. Access check is assumed to have
* occurred before reaching this method.
* @param objName Name of the configuration object to check.
- * @return true>/code> if the configuration object exists.
+ * @return true if the configuration object exists.
* @throws IllegalArgumentException if objName is null or empty.
*/
public boolean entryExists(SSOToken token, String objName) {
diff --git a/openam-core/src/main/java/com/sun/identity/sm/flatfile/SMSFlatFileTreeNode.java b/openam-core/src/main/java/com/sun/identity/sm/flatfile/SMSFlatFileTreeNode.java
index 8a7b1af2f8..ebb6206218 100644
--- a/openam-core/src/main/java/com/sun/identity/sm/flatfile/SMSFlatFileTreeNode.java
+++ b/openam-core/src/main/java/com/sun/identity/sm/flatfile/SMSFlatFileTreeNode.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -101,8 +102,6 @@ public SMSFlatFileTreeNode getParentNode() {
*
* @param child Child node.
* @return true if child is added to the tree.
- * @throws SMSException if the dn of the child is not prefix with
- * this node.
*/
public boolean addChild(SMSFlatFileTreeNode child) {
boolean added = false;
diff --git a/openam-core/src/main/java/com/sun/identity/sm/jaxrpc/SMSJAXRPCObjectImpl.java b/openam-core/src/main/java/com/sun/identity/sm/jaxrpc/SMSJAXRPCObjectImpl.java
index 8ac165e0a3..e036ab0b4b 100644
--- a/openam-core/src/main/java/com/sun/identity/sm/jaxrpc/SMSJAXRPCObjectImpl.java
+++ b/openam-core/src/main/java/com/sun/identity/sm/jaxrpc/SMSJAXRPCObjectImpl.java
@@ -25,6 +25,7 @@
* $Id: SMSJAXRPCObjectImpl.java,v 1.22 2009/10/28 04:24:27 hengming Exp $
*
* Portions Copyrighted 2010-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.sm.jaxrpc;
@@ -259,7 +260,7 @@ public void delete(String tokenID, String objName) throws SMSException,
/**
* Returns the suborganization names. Returns a set of SMSEntry objects that
* are suborganization names. The paramter numOfEntries
- * identifies the number of entries to return, if code>0 returns
+ * identifies the number of entries to return, if 0 returns
* all the entries.
*/
public Set searchSubOrgNames(String tokenID, String dn, String filter,
@@ -636,7 +637,7 @@ public void deRegisterNotificationURL(String id) throws RemoteException {
*
* @param name DN of the object changed
* @param type change type
- * @throws java.rmi.RemoteException
+ * @throws java.rmi.RemoteException if a remote communication error occurs
*/
public void notifyObjectChanged(String name, int type)
throws RemoteException {
diff --git a/openam-core/src/main/java/com/sun/identity/sm/ldap/CTSDataLayer.java b/openam-core/src/main/java/com/sun/identity/sm/ldap/CTSDataLayer.java
index a72ee42ed2..7a044cc07f 100644
--- a/openam-core/src/main/java/com/sun/identity/sm/ldap/CTSDataLayer.java
+++ b/openam-core/src/main/java/com/sun/identity/sm/ldap/CTSDataLayer.java
@@ -18,6 +18,7 @@
* "Portions Copyrighted [year] [name of copyright owner]"
*
* Portions Copyrighted 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.sm.ldap;
@@ -71,7 +72,7 @@ public Connection getConnection() {
/**
* Release an obtained Connection back to the pool.
*
- * @param ldapConnection
+ * @param ldapConnection the connection to release back to the pool
*/
public void releaseConnection(Connection ldapConnection) {
ldapConnection.close();
@@ -81,8 +82,8 @@ public void releaseConnection(Connection ldapConnection) {
* Release an obtained Connection back to the pool, with a
* specified return code for clean-up.
*
- * @param ldapConnection
- * @param ldapErrorCode
+ * @param ldapConnection the connection to release back to the pool
+ * @param ldapErrorCode the LDAP return code used during clean-up
*/
public void releaseConnection(Connection ldapConnection, int ldapErrorCode ) {
releaseConnection(ldapConnection);
@@ -92,7 +93,7 @@ public void releaseConnection(Connection ldapConnection, int ldapErrorCode ) {
* Release an obtained Connection back to the pool, with a
* specified Last LDAP Stack Exception for clean-up.
*
- * @param ldapConnection
+ * @param ldapConnection the connection to release back to the pool
* @param lastLDAPException - Last up Stream LDAP Exception, can be null if no issues arose
* with the connection or operations.
*/
diff --git a/openam-core/src/main/java/com/sun/identity/sm/ldap/LDAPEventManager.java b/openam-core/src/main/java/com/sun/identity/sm/ldap/LDAPEventManager.java
index 9d4585f2ba..fc01100f6e 100644
--- a/openam-core/src/main/java/com/sun/identity/sm/ldap/LDAPEventManager.java
+++ b/openam-core/src/main/java/com/sun/identity/sm/ldap/LDAPEventManager.java
@@ -25,6 +25,7 @@
* $Id: LDAPEventManager.java,v 1.8 2009/01/28 05:35:04 ww203982 Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.sm.ldap;
@@ -46,8 +47,8 @@
import org.forgerock.opendj.ldap.SearchScope;
/**
- * This class registers itself as a listener to
- * com.iplanet.services.ldap.event.EventService which sets up
+ * This class registers itself as a listener to
+ * com.iplanet.services.ldap.event.EventService which sets up
* persistant search connections with the event service for any
* changes to SMS object classes
*/
diff --git a/openam-core/src/main/java/com/sun/identity/sm/ldap/SearchResultIterator.java b/openam-core/src/main/java/com/sun/identity/sm/ldap/SearchResultIterator.java
index 0276a6ee53..0008b2e282 100644
--- a/openam-core/src/main/java/com/sun/identity/sm/ldap/SearchResultIterator.java
+++ b/openam-core/src/main/java/com/sun/identity/sm/ldap/SearchResultIterator.java
@@ -25,6 +25,7 @@
* $Id: SearchResultIterator.java,v 1.2 2009/04/02 20:22:43 veiming Exp $
*
* Portions Copyrighted 2011-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.sm.ldap;
@@ -56,7 +57,7 @@ public class SearchResultIterator implements Iterator {
* Constructs a SearchResultIterator
* @param results LDAP Search Results object.
* @param excludeDNs a set of distinguished names to be excluded
- * @param conn
+ * @param conn the LDAP connection backing the search results
*/
public SearchResultIterator(ConnectionEntryReader results, Set excludeDNs, Connection conn) {
this.results = results;
diff --git a/openam-core/src/main/java/com/sun/identity/sm/ldap/Statistics.java b/openam-core/src/main/java/com/sun/identity/sm/ldap/Statistics.java
index 885afb9ae5..46a92bac37 100644
--- a/openam-core/src/main/java/com/sun/identity/sm/ldap/Statistics.java
+++ b/openam-core/src/main/java/com/sun/identity/sm/ldap/Statistics.java
@@ -24,6 +24,7 @@
* "Portions Copyrighted [year] [name of copyright owner]"
*
* Portions Copyrighted [2010-2012] [ForgeRock AS]
+ * Portions Copyrighted 2026 3A Systems, LLC
*
*/
package com.sun.identity.sm.ldap;
@@ -90,8 +91,8 @@ private Statistics() {
/**
* Returns the singleton instance
- *
- * @return
+ *
+ * @return the singleton Statistics instance
*/
public static synchronized Statistics getInstance() {
if (instance == null) {
@@ -298,8 +299,8 @@ public long getDeleteRequestAverageTime() {
/**
* Get the total number of reads record count
- *
- * @return
+ *
+ * @return the total number of records read
*/
public int getTotalReadRecordCount() {
return totalReadRecordCount;
diff --git a/openam-core/src/main/java/com/sun/identity/sm/model/AMSessionRepositoryDeferredOperation.java b/openam-core/src/main/java/com/sun/identity/sm/model/AMSessionRepositoryDeferredOperation.java
index cf4ff83be9..cf5cb8e042 100644
--- a/openam-core/src/main/java/com/sun/identity/sm/model/AMSessionRepositoryDeferredOperation.java
+++ b/openam-core/src/main/java/com/sun/identity/sm/model/AMSessionRepositoryDeferredOperation.java
@@ -24,6 +24,7 @@
* "Portions Copyrighted [year] [name of copyright owner]"
*
* Portions Copyrighted [2010-2012] [ForgeRock AS]
+ * Portions Copyrighted 2026 3A Systems, LLC
*
*/
package com.sun.identity.sm.model;
@@ -56,8 +57,8 @@ public class AMSessionRepositoryDeferredOperation implements Serializable {
* Constructor using AMRootEntity, so any Object extending our root object can be
* used as a payload for our event.
*
- * @param operation
- * @param parameters
+ * @param operation the deferred operation type
+ * @param parameters the parameters for the operation
*/
public AMSessionRepositoryDeferredOperation(Enum operation, Object[] parameters) {
this.setOperation(operation);
diff --git a/openam-core/src/main/java/org/forgerock/openam/auditors/ConfigAuditor.java b/openam-core/src/main/java/org/forgerock/openam/auditors/ConfigAuditor.java
index d426541a56..952d3e5917 100644
--- a/openam-core/src/main/java/org/forgerock/openam/auditors/ConfigAuditor.java
+++ b/openam-core/src/main/java/org/forgerock/openam/auditors/ConfigAuditor.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2015-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.auditors;
@@ -100,7 +101,7 @@ protected ConfigAuditor(Debug debug, AuditEventPublisher auditEventPublisher, Au
/**
* Publishes an event with details of the successfully completed configuration creation operation,
* if the 'config' topic is audited.
- *
+ *
* Any exception that occurs while trying to publish the audit event will be
* captured in the debug logs but otherwise ignored.
* @param newState The state of the entry which is created
@@ -121,7 +122,7 @@ public void auditCreate(Map newState) {
/**
* Publishes an event with details of the successfully completed configuration modification operation,
* if the 'config' topic is audited.
- *
+ *
* Any exception that occurs while trying to publish the audit event will be
* captured in the debug logs but otherwise ignored.
* @param finalState The derived final state of the entry
@@ -143,7 +144,7 @@ public void auditModify(Map finalState, String[] modifiedAttribu
/**
* Publishes an event with details of the successfully completed configuration deletion operation,
* if the 'config' topic is audited.
- *
+ *
* Any exception that occurs while trying to publish the audit event will be
* captured in the debug logs but otherwise ignored.
*/
diff --git a/openam-core/src/main/java/org/forgerock/openam/auditors/RepoAuditor.java b/openam-core/src/main/java/org/forgerock/openam/auditors/RepoAuditor.java
index 49eaa540d6..ae0c471399 100644
--- a/openam-core/src/main/java/org/forgerock/openam/auditors/RepoAuditor.java
+++ b/openam-core/src/main/java/org/forgerock/openam/auditors/RepoAuditor.java
@@ -12,7 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2015-2016 ForgeRock AS.
- * Portions copyright 2019-2025 3A Systems LLC.
+ * Portions copyright 2019-2026 3A Systems LLC.
*/
package org.forgerock.openam.auditors;
@@ -110,7 +110,7 @@ public RepoAuditor(@Named("amIdm") Debug debug, AuditEventPublisher auditEventPu
/**
* Publishes an event with details of the successfully completed configuration creation operation,
* if the 'config' topic is audited.
- *
+ *
* Any exception that occurs while trying to publish the audit event will be
* captured in the debug logs but otherwise ignored.
* @param newState The state of the entry which is created
@@ -134,7 +134,7 @@ public void auditCreate(Map newState) {
/**
* Publishes an event with details of the successfully completed configuration modification operation,
* if the 'config' topic is audited.
- *
+ *
* Any exception that occurs while trying to publish the audit event will be
* captured in the debug logs but otherwise ignored.
* @param finalState The derived final state of the entry
@@ -200,7 +200,7 @@ public void auditSetActive(boolean active) {
/**
* Publishes an event with details of the successfully completed configuration deletion operation,
* if the 'config' topic is audited.
- *
+ *
* Any exception that occurs while trying to publish the audit event will be
* captured in the debug logs but otherwise ignored.
*/
diff --git a/openam-core/src/main/java/org/forgerock/openam/authentication/callbacks/PollingWaitCallback.java b/openam-core/src/main/java/org/forgerock/openam/authentication/callbacks/PollingWaitCallback.java
index 639c673162..f809db5054 100644
--- a/openam-core/src/main/java/org/forgerock/openam/authentication/callbacks/PollingWaitCallback.java
+++ b/openam-core/src/main/java/org/forgerock/openam/authentication/callbacks/PollingWaitCallback.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.authentication.callbacks;
@@ -55,7 +56,7 @@ public String getWaitTime() {
/**
* Gets a new PollingWaitCallbackBuilder to use for construction of a PollingWaitCallback.
- * @returna new PollingWaitCallbackBuilder object.
+ * @return a new PollingWaitCallbackBuilder object.
*/
public static PollingWaitCallbackBuilder makeCallback() {
return new PollingWaitCallbackBuilder();
diff --git a/openam-core/src/main/java/org/forgerock/openam/authentication/service/AuthSessionFactory.java b/openam-core/src/main/java/org/forgerock/openam/authentication/service/AuthSessionFactory.java
index 32b70aec10..6fbbdcb1cd 100644
--- a/openam-core/src/main/java/org/forgerock/openam/authentication/service/AuthSessionFactory.java
+++ b/openam-core/src/main/java/org/forgerock/openam/authentication/service/AuthSessionFactory.java
@@ -12,7 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2016 ForgeRock AS.
- * Portions Copyrighted 2024-2025 3A Systems LLC
+ * Portions Copyrighted 2024-2026 3A Systems LLC
*/
package org.forgerock.openam.authentication.service;
@@ -55,7 +55,8 @@ public AuthSessionFactory(final @Named(SessionConstants.SESSION_DEBUG) Debug ses
*
* @param domain Authentication Domain
* @return Non null Authentication SSO Token
- * @throws Exception If there was any unexpected error which prevented the token from being generated.
+ * @throws SSOException If there was any unexpected error which prevented the token from being generated.
+ * @throws SessionException If the authentication session could not be created.
*/
public SSOToken getAuthenticationSession(String domain) throws SSOException, SessionException {
if (authSession == null) {
diff --git a/openam-core/src/main/java/org/forgerock/openam/authentication/service/protocol/RemoteCookie.java b/openam-core/src/main/java/org/forgerock/openam/authentication/service/protocol/RemoteCookie.java
index 5d8a7d7fdd..c63b20fee7 100644
--- a/openam-core/src/main/java/org/forgerock/openam/authentication/service/protocol/RemoteCookie.java
+++ b/openam-core/src/main/java/org/forgerock/openam/authentication/service/protocol/RemoteCookie.java
@@ -21,7 +21,7 @@
* your own identifying information:
* "Portions Copyrighted [year] [name of copyright owner]"
*
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package org.forgerock.openam.authentication.service.protocol;
@@ -255,7 +255,7 @@ public void setValue(String newValue) {
* Set the version of the cookie, updating the underlying representation if
* present.
*
- * @param version
+ * @param version the cookie version to set
*/
public void setVersion(int version) {
if (cookie != null)
diff --git a/openam-core/src/main/java/org/forgerock/openam/authentication/service/protocol/RemoteSession.java b/openam-core/src/main/java/org/forgerock/openam/authentication/service/protocol/RemoteSession.java
index d4258ebe0a..8c1b1c73f5 100644
--- a/openam-core/src/main/java/org/forgerock/openam/authentication/service/protocol/RemoteSession.java
+++ b/openam-core/src/main/java/org/forgerock/openam/authentication/service/protocol/RemoteSession.java
@@ -21,7 +21,7 @@
* your own identifying information:
* "Portions Copyrighted [year] [name of copyright owner]"
*
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package org.forgerock.openam.authentication.service.protocol;
@@ -200,7 +200,7 @@ public Object getAttribute(String name) {
* Same functionality as @see getAttribute.
*
* @deprecated
- * @param name
+ * @param name the name of the attribute to retrieve
* @return The value of the named attribute or null if not found or non-serializable
*/
public Object getValue(String name) {
diff --git a/openam-core/src/main/java/org/forgerock/openam/blacklist/BloomFilterBlacklist.java b/openam-core/src/main/java/org/forgerock/openam/blacklist/BloomFilterBlacklist.java
index ce97649603..40a4647f2f 100644
--- a/openam-core/src/main/java/org/forgerock/openam/blacklist/BloomFilterBlacklist.java
+++ b/openam-core/src/main/java/org/forgerock/openam/blacklist/BloomFilterBlacklist.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.blacklist;
@@ -73,7 +74,7 @@ public void onBlacklisted(String id, long expiryTime) {
* given service configuration. If the bloom filter does not contain a given entry, then we know for definite
* that it is not blacklisted. Otherwise, we delegate to the given entry blacklist to check if it actually is
* blacklisted or not, to eliminate false positives.
- *
+ *
* In order to ensure that the bloom filter is kept in-sync with the definitive blacklist (to avoid false
* negatives), this implementation will subscribe to blacklist notifications from the delegate.
*
diff --git a/openam-core/src/main/java/org/forgerock/openam/blacklist/CTSBlacklist.java b/openam-core/src/main/java/org/forgerock/openam/blacklist/CTSBlacklist.java
index 2323fb54f2..07f6edea8f 100644
--- a/openam-core/src/main/java/org/forgerock/openam/blacklist/CTSBlacklist.java
+++ b/openam-core/src/main/java/org/forgerock/openam/blacklist/CTSBlacklist.java
@@ -12,7 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2016 ForgeRock AS.
- * Portions Copyrighted 2022-2025 3A Systems, LLC.
+ * Portions Copyrighted 2022-2026 3A Systems, LLC.
*/
package org.forgerock.openam.blacklist;
@@ -54,7 +54,7 @@
* Entry blacklist that stores blacklisted entries in the CTS until they expire. A stable ID is stored in the CTS
* for each entry that has been blacklisted. Normal CTS reaper process will remove entries from the blacklist
* after they have expired.
- *
+ *
* The fields used by this class are:
*
* - {@link CoreTokenField#TOKEN_TYPE} - the CTS token type.
@@ -65,7 +65,7 @@
* - {@link CoreTokenField#STRING_ONE} - the ID of the server on which the entry was first
* blacklisted. From {@link WebtopNamingQuery#getAMServerID()}.
*
- *
+ *
* In addition to blacklisting entries and checking the blacklist, this class also periodically polls the CTS for
* blacklist changes made on other servers since the last check. This is used to send local notifications to
* subscribed blacklist {@link Listener}s for all blacklist entries, not just local ones. This feature is
diff --git a/openam-core/src/main/java/org/forgerock/openam/core/DNWrapper.java b/openam-core/src/main/java/org/forgerock/openam/core/DNWrapper.java
index b4c083bec2..78d474c388 100644
--- a/openam-core/src/main/java/org/forgerock/openam/core/DNWrapper.java
+++ b/openam-core/src/main/java/org/forgerock/openam/core/DNWrapper.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.core;
@@ -20,7 +21,7 @@
/**
* Wrapper class to remove coupling to DNMapper static methods.
- *
+ *
* Until DNMapper is refactored, this class can be used to assist with DI.
*/
public class DNWrapper {
diff --git a/openam-core/src/main/java/org/forgerock/openam/core/realms/RealmLookup.java b/openam-core/src/main/java/org/forgerock/openam/core/realms/RealmLookup.java
index b7f53d4b4e..904040fb37 100644
--- a/openam-core/src/main/java/org/forgerock/openam/core/realms/RealmLookup.java
+++ b/openam-core/src/main/java/org/forgerock/openam/core/realms/RealmLookup.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.core.realms;
@@ -24,7 +25,7 @@
* Realms realms = ...;
* Realm realm = realms.lookup("/realm/A");
* boolean active = realms.isActive(realm);
- *
+ *
*
* @since 14.0.0
*/
diff --git a/openam-core/src/main/java/org/forgerock/openam/cts/adapters/OAuthAdapter.java b/openam-core/src/main/java/org/forgerock/openam/cts/adapters/OAuthAdapter.java
index dd0bc6de8c..eaa63f9678 100644
--- a/openam-core/src/main/java/org/forgerock/openam/cts/adapters/OAuthAdapter.java
+++ b/openam-core/src/main/java/org/forgerock/openam/cts/adapters/OAuthAdapter.java
@@ -58,9 +58,9 @@ public class OAuthAdapter implements TokenAdapter {
* Default constructor with dependencies exposed.
*
* @param tokenIdFactory Non null.
- * @param serialisation
- * @param oAuthValues
- * @param blobUtils
+ * @param serialisation the JSON serialisation helper used to marshal token state
+ * @param oAuthValues the helper used to read OAuth specific values
+ * @param blobUtils the token blob utilities used to read and write the token blob
*/
@Inject
public OAuthAdapter(TokenIdFactory tokenIdFactory, JSONSerialisation serialisation,
diff --git a/openam-core/src/main/java/org/forgerock/openam/cts/api/fields/CoreTokenFieldTypes.java b/openam-core/src/main/java/org/forgerock/openam/cts/api/fields/CoreTokenFieldTypes.java
index 3e8fc87a8d..be1c03ca99 100644
--- a/openam-core/src/main/java/org/forgerock/openam/cts/api/fields/CoreTokenFieldTypes.java
+++ b/openam-core/src/main/java/org/forgerock/openam/cts/api/fields/CoreTokenFieldTypes.java
@@ -1,5 +1,6 @@
/**
* Copyright 2013-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms of the Common Development and
* Distribution License (the License). You may not use this file except in compliance with the
@@ -38,7 +39,7 @@ public class CoreTokenFieldTypes {
* Validate a collection of key/value mappings.
*
* @param types A mapping of CoreTokenField to value. Non null, may be empty.
- * @throws org.forgerock.openam.sm.datalayer.api.LdapOperationFailedException If one of the values was invalid for the CoreTokenField field.
+ * @throws CoreTokenException If one of the values was invalid for the CoreTokenField field.
*/
public static void validateTypes(Map types) throws CoreTokenException {
for (Map.Entry entry : types.entrySet()) {
@@ -51,7 +52,7 @@ public static void validateTypes(Map types) throws CoreT
*
* @param field The CoreTokenField to validate against.
* @param value The value to verify. Non null.
- * @throws org.forgerock.openam.sm.datalayer.api.LdapOperationFailedException
+ * @throws CoreTokenException If the value was invalid for the CoreTokenField field.
*/
public static void validateType(CoreTokenField field, Object value) throws CoreTokenException {
if (value == null) {
diff --git a/openam-core/src/main/java/org/forgerock/openam/cts/impl/SAML2CTSPersistentStore.java b/openam-core/src/main/java/org/forgerock/openam/cts/impl/SAML2CTSPersistentStore.java
index 9a494de08f..844cd468c3 100644
--- a/openam-core/src/main/java/org/forgerock/openam/cts/impl/SAML2CTSPersistentStore.java
+++ b/openam-core/src/main/java/org/forgerock/openam/cts/impl/SAML2CTSPersistentStore.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2014-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.cts.impl;
@@ -38,7 +39,7 @@
/**
* This class is used in SAML2 failover mode to store/recover serialized
* state of Assertion/Response object.
- *
+ *
* This class acts as a Proxy to perform distinct SAML2
* operations and allow the CTSPersistentStore implementation
* to handle the actual CRUD for Tokens.
diff --git a/openam-core/src/main/java/org/forgerock/openam/cts/impl/queue/AsyncResultHandler.java b/openam-core/src/main/java/org/forgerock/openam/cts/impl/queue/AsyncResultHandler.java
index 85b1c26ff0..b8296fe371 100644
--- a/openam-core/src/main/java/org/forgerock/openam/cts/impl/queue/AsyncResultHandler.java
+++ b/openam-core/src/main/java/org/forgerock/openam/cts/impl/queue/AsyncResultHandler.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2014-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.cts.impl.queue;
@@ -40,7 +41,7 @@
* once.
*
*
- * @param
+ * @param the type of result handled
*/
public class AsyncResultHandler implements ResultHandler {
private static final String NULL_SIGNAL = "--NULL--";
@@ -76,7 +77,7 @@ public AsyncResultHandler(QueueConfiguration config, Debug debug) {
* Blocking call to wait for the results of processing.
*
* @return {@inheritDoc}
- * @throws CoreTokenException {@inheritDoc}
+ * @throws CoreTokenException if an error occurs while waiting for or retrieving the results
*/
@SuppressWarnings("unchecked")
public T getResults() throws CoreTokenException {
diff --git a/openam-core/src/main/java/org/forgerock/openam/cts/impl/queue/DeleteOnQueryResultHandler.java b/openam-core/src/main/java/org/forgerock/openam/cts/impl/queue/DeleteOnQueryResultHandler.java
index f5a43b0b0c..95b6bad952 100644
--- a/openam-core/src/main/java/org/forgerock/openam/cts/impl/queue/DeleteOnQueryResultHandler.java
+++ b/openam-core/src/main/java/org/forgerock/openam/cts/impl/queue/DeleteOnQueryResultHandler.java
@@ -12,7 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2014-2015 ForgeRock AS.
- * Portions copyright 2025 3A Systems LLC.
+ * Portions copyright 2025-2026 3A Systems LLC.
*/
package org.forgerock.openam.cts.impl.queue;
@@ -32,7 +32,7 @@
* performs an asynchronous delete operation. This can come in handy if there is a need to find tokens based on
* secondary storage keys or other arbitrary information and the matching tokens needs to be deleted right away.
*
- * @see TaskDispatcher#read(String, org.forgerock.openam.sm.datalayer.api.ResultHandler)
+ * @see TaskDispatcher#read(String, org.forgerock.util.Options, org.forgerock.openam.sm.datalayer.api.ResultHandler)
* @see TaskDispatcher#query(TokenFilter, org.forgerock.openam.sm.datalayer.api.ResultHandler)
*/
public class DeleteOnQueryResultHandler implements ResultHandler, CoreTokenException> {
diff --git a/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/CTSConnectionMonitoringStore.java b/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/CTSConnectionMonitoringStore.java
index 43aad469fc..89d9976b3a 100644
--- a/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/CTSConnectionMonitoringStore.java
+++ b/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/CTSConnectionMonitoringStore.java
@@ -12,13 +12,14 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2014 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.cts.monitoring;
/**
* A data structure for storing monitoring information about CTS connections.
- *
+ *
* The CTS will use an instance of this data structure to store information about connection attempts
* and the CTS monitoring framework will us the same instance to pull information out to send to clients
* as monitoring requests are made.
diff --git a/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/CTSOperationsMonitoringStore.java b/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/CTSOperationsMonitoringStore.java
index 21e41e2dd4..319dd0ad41 100644
--- a/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/CTSOperationsMonitoringStore.java
+++ b/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/CTSOperationsMonitoringStore.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2013-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.cts.monitoring;
@@ -22,7 +23,7 @@
/**
* A data structure for storing monitoring information about CTS operations.
- *
+ *
* The CTS will use an instance of this data structure to store information about operations as and when they occur
* and then the CTS monitoring framework will us the same instance to pull information out to send to clients
* as monitoring requests are made.
@@ -33,10 +34,10 @@ public interface CTSOperationsMonitoringStore {
/**
* Adds a Token operation into the monitoring store.
- *
+ *
* The operation is mapped to the type of the token. The operations per configurable period and cumulative count
* will be updated for the token type and operation.
- *
+ *
* Passing in null as the token will mean that the operation is not mapped to a particular token
* type, this is for operations such as delete and list as the type of token cannot be determined.
* The operations per configurable period and cumulative count will be updated for the operation.
@@ -49,10 +50,10 @@ public interface CTSOperationsMonitoringStore {
/**
* Gets the average rate of operations made in a given period.
- *
+ *
* Will return the number of the specified operation made on the specified type token in a given
* (configurable) period.
- *
+ *
* Passing in null as the operation will mean that the method will return the number of the specified
* operation made on tokens, which the type cannot be determined, i.e. Delete and List operations.
*
@@ -64,10 +65,10 @@ public interface CTSOperationsMonitoringStore {
/**
* Gets the minimum rate of operations made in a given period.
- *
+ *
* Will return the number of the specified operation made on the specified type token in a given
* (configurable) period.
- *
+ *
* Passing in null as the operation will mean that the method will return the number of the specified
* operation made on tokens, which the type cannot be determined, i.e. Delete and List operations.
*
@@ -79,10 +80,10 @@ public interface CTSOperationsMonitoringStore {
/**
* Gets the maximum rate of operations made in a given period.
- *
+ *
* Will return the number of the specified operation made on the specified type token in a given
* (configurable) period.
- *
+ *
* Passing in null as the operation will mean that the method will return the number of the specified
* operation made on tokens, which the type cannot be determined, i.e. Delete and List operations.
*
@@ -94,10 +95,10 @@ public interface CTSOperationsMonitoringStore {
/**
* Gets the cumulative count of operations made since server start up.
- *
+ *
* Will return the total number of the specified operation made on the specified type of token since the server
* stared.
- *
+ *
* Passing in null as the operation will mean that the method will return the total number of
* the specified operation made on tokens, which the type cannot be determined, i.e. Delete and List operations.
*
@@ -109,7 +110,7 @@ public interface CTSOperationsMonitoringStore {
/**
* Gets the cumulative count of failures of this operation type since server startup.
- *
+ *
* Note that failure counts are not distinguished by token type as in most failure cases this information is not
* available.
*
diff --git a/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/impl/operations/OperationMonitor.java b/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/impl/operations/OperationMonitor.java
index c2cf246e3b..b879d6f44a 100644
--- a/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/impl/operations/OperationMonitor.java
+++ b/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/impl/operations/OperationMonitor.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2013-2014 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.cts.monitoring.impl.operations;
@@ -66,7 +67,7 @@ private OperationMonitor(final RateTimer timer) {
/**
* Increments the cumulative count for an operation and recalculates the rate at which the operation
* has been made.
- *
+ *
* Only synchronizes the count increment, NOT the whole method.
*/
void increment() {
diff --git a/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/impl/operations/OperationStore.java b/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/impl/operations/OperationStore.java
index 96976f1016..2ac201c0e8 100644
--- a/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/impl/operations/OperationStore.java
+++ b/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/impl/operations/OperationStore.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2013 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.cts.monitoring.impl.operations;
@@ -24,7 +25,7 @@
/**
* A data structure that stores the cumulative count and rate for CTS operations.
- *
+ *
* Thread-safe: All access to internal data structures are internally synchronised.
*
* @since 12.0.0
@@ -55,7 +56,7 @@ public OperationStore() {
/**
* Adds a Token operation into the monitoring store.
- *
+ *
* The operations per configurable period and cumulative count will be updated for the operation.
*
* @param operation The operation performed.
diff --git a/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/impl/operations/TokenOperationsStore.java b/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/impl/operations/TokenOperationsStore.java
index fe73f074b5..0e1210a54f 100644
--- a/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/impl/operations/TokenOperationsStore.java
+++ b/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/impl/operations/TokenOperationsStore.java
@@ -12,7 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2013-2015 ForgeRock AS.
- * Portions copyright 2025 3A Systems LLC.
+ * Portions copyright 2025-2026 3A Systems LLC.
*/
package org.forgerock.openam.cts.monitoring.impl.operations;
@@ -27,7 +27,7 @@
/**
* An internal data structure for the CTSOperationsMonitoringStore to store monitoring information about operations of
* tokens.
- *
+ *
* The token operation monitoring information is split per token type and both a cumulative count and rate is calculated
* and maintained.
*
@@ -69,7 +69,7 @@ public TokenOperationsStore() {
/**
* Adds a Token operation into the monitoring store.
- *
+ *
* The operation is mapped to the type of the token. The operations per configurable period and cumulative count
* will be updated for the token type and operation.
*
@@ -93,7 +93,7 @@ public void addTokenOperation(TokenType type, CTSOperation operation, boolean su
/**
* Adds a Token operation into the monitoring store.
- *
+ *
* The operation is not mapped to a particular token type, this is for operations such as delete and list as
* the type of token cannot be determined.
* The operations per configurable period and cumulative count will be updated for the operation.
@@ -113,7 +113,7 @@ public void addTokenOperation(CTSOperation operation, boolean success) {
/**
* Gets the average rate of operations made in a given period.
- *
+ *
* Will return the number of the specified operation made on the specified type token in a given
* (configurable) period.
*
@@ -130,7 +130,7 @@ public double getAverageOperationsPerPeriod(TokenType type, CTSOperation operati
/**
* Gets the minimum rate of operations made in a given period.
- *
+ *
* Will return the number of the specified operation made on the specified type token in a given
* (configurable) period.
*
@@ -147,7 +147,7 @@ public long getMinimumOperationsPerPeriod(TokenType type, CTSOperation operation
/**
* Gets the maximum rate of operations made in a given period.
- *
+ *
* Will return the number of the specified operation made on the specified type token in a given
* (configurable) period.
*
@@ -164,7 +164,7 @@ public long getMaximumOperationsPerPeriod(TokenType type, CTSOperation operation
/**
* Gets the average rate of operations made in a given period.
- *
+ *
* Returns the overall rate of calls to the given operation for all token types.
*
* @param operation The operation to now the average rate for.
@@ -186,7 +186,7 @@ public double getAverageOperationFailuresPerPeriod(CTSOperation operation) {
/**
* Gets the minimum rate of operations made in a given period.
- *
+ *
* Will return the number of the specified operation made on tokens, which the type cannot be determined,
* i.e. Delete and List operations.
*
@@ -209,7 +209,7 @@ public long getMinimumOperationFailuresPerPeriod(CTSOperation operation) {
/**
* Gets the maximum rate of operations made in a given period.
- *
+ *
* Will return the number of the specified operation made on tokens, which the type cannot be determined,
* i.e. Delete and List operations.
*
@@ -232,7 +232,7 @@ public long getMaximumOperationFailuresPerPeriod(CTSOperation operation) {
/**
* Gets the cumulative count of operations made since server start up.
- *
+ *
* Will return the total number of the specified operation made on the specified type of token since the server
* stared.
*
@@ -249,7 +249,7 @@ public long getOperationsCumulativeCount(TokenType type, CTSOperation operation)
/**
* Gets the cumulative count of operations made since server start up.
- *
+ *
* Will return the total number of the specified operation made on tokens, which the type cannot be determined,
* i.e. Delete and List operations.
*
diff --git a/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/impl/persistence/CtsPersistenceOperationsDelegate.java b/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/impl/persistence/CtsPersistenceOperationsDelegate.java
index 93084e38cd..0578a66963 100644
--- a/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/impl/persistence/CtsPersistenceOperationsDelegate.java
+++ b/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/impl/persistence/CtsPersistenceOperationsDelegate.java
@@ -12,7 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2014-2015 ForgeRock AS.
- * Portions copyright 2025 3A Systems LLC.
+ * Portions copyright 2025-2026 3A Systems LLC.
*/
package org.forgerock.openam.cts.monitoring.impl.persistence;
@@ -47,7 +47,7 @@ public CtsPersistenceOperationsDelegate(CTSPersistentStore store) {
*
* @param tokenType The type of token for which we are gathering results
* @return Zero or positive integer of the number of tokens in the store.
- * @throws CoreTokenException
+ * @throws CoreTokenException if there are issues talking with the CTS
*/
public int countTokenEntries(TokenType tokenType) throws CoreTokenException {
@@ -76,7 +76,7 @@ public int countAllTokens() throws CoreTokenException {
*
* @param tokenType The type of token for which we are gathering results
* @return A collection of longs, each of which represents the duration of a token inside the CTS
- * @throws CoreTokenException
+ * @throws CoreTokenException if there are issues talking with the CTS
*/
public Collection listDurationOfTokens(TokenType tokenType) throws CoreTokenException {
diff --git a/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/impl/queue/DefaultMonitoringResultHandler.java b/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/impl/queue/DefaultMonitoringResultHandler.java
index daabc210dd..183a34f8ec 100644
--- a/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/impl/queue/DefaultMonitoringResultHandler.java
+++ b/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/impl/queue/DefaultMonitoringResultHandler.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2014-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.cts.monitoring.impl.queue;
@@ -43,7 +44,7 @@ public DefaultMonitoringResultHandler(ResultHandler handler, CTSOperations
/**
* Defers to wrapped handler.
* @return {@inheritDoc}
- * @throws E {@inheritDoc}
+ * @throws E if the wrapped result handler throws it
*/
@Override
public T getResults() throws E {
diff --git a/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/impl/queue/TokenMonitoringResultHandler.java b/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/impl/queue/TokenMonitoringResultHandler.java
index e0f35a499d..9eb82db91c 100644
--- a/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/impl/queue/TokenMonitoringResultHandler.java
+++ b/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/impl/queue/TokenMonitoringResultHandler.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2014-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.cts.monitoring.impl.queue;
@@ -43,7 +44,7 @@ public TokenMonitoringResultHandler(ResultHandler han
/**
* @return Delegates to wrapped handler.
- * @throws CoreTokenException {@inheritDoc}
+ * @throws CoreTokenException if the wrapped handler fails to return the results
*/
@Override
public Token getResults() throws CoreTokenException {
diff --git a/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/impl/reaper/ReaperMonitor.java b/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/impl/reaper/ReaperMonitor.java
index a634fb830b..a9500fd3ee 100644
--- a/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/impl/reaper/ReaperMonitor.java
+++ b/openam-core/src/main/java/org/forgerock/openam/cts/monitoring/impl/reaper/ReaperMonitor.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2013 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.cts.monitoring.impl.reaper;
@@ -29,14 +30,14 @@ public class ReaperMonitor {
private final List reaperRuns = new ArrayList();
/**
- * {@inheritDoc}
+ * Records the timing and deletion count of a completed reaper run.
*/
public void add(final long startTime, final long runTime, final long numberOfDeletedSessions) {
reaperRuns.add(new ReaperRun(startTime, runTime, numberOfDeletedSessions));
}
/**
- * {@inheritDoc}
+ * Returns the average rate of session deletion across the recorded reaper runs.
*/
public double getRateOfDeletion() {
diff --git a/openam-core/src/main/java/org/forgerock/openam/entitlement/SetupInternalNotificationSubscriptions.java b/openam-core/src/main/java/org/forgerock/openam/entitlement/SetupInternalNotificationSubscriptions.java
index 49f7a94015..ddced06532 100644
--- a/openam-core/src/main/java/org/forgerock/openam/entitlement/SetupInternalNotificationSubscriptions.java
+++ b/openam-core/src/main/java/org/forgerock/openam/entitlement/SetupInternalNotificationSubscriptions.java
@@ -12,7 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2016 ForgeRock AS.
- * Portions Copyrighted 2018 3A Systems,LLC
+ * Portions Copyrighted 2018-2026 3A Systems,LLC
*/
package org.forgerock.openam.entitlement;
@@ -31,7 +31,7 @@
/**
* Responsible for subscribing to internal policy set notifications.
- *
+ *
* Internal notification is generated by an OpenAM instance in the cluster when there are any changes to
* the policySets. The notification is then published to the topic '/internal/policySet'.
* With the help of this setup listener other OpenAM instances in the cluster receive such notifications and
diff --git a/openam-core/src/main/java/org/forgerock/openam/entitlement/monitoring/EvaluationMonitoringStore.java b/openam-core/src/main/java/org/forgerock/openam/entitlement/monitoring/EvaluationMonitoringStore.java
index 3d70200970..abd695e0fa 100644
--- a/openam-core/src/main/java/org/forgerock/openam/entitlement/monitoring/EvaluationMonitoringStore.java
+++ b/openam-core/src/main/java/org/forgerock/openam/entitlement/monitoring/EvaluationMonitoringStore.java
@@ -12,7 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2013-2014 ForgeRock AS.
- * Portions copyright 2025 3A Systems LLC.
+ * Portions copyright 2025-2026 3A Systems LLC.
*/
package org.forgerock.openam.entitlement.monitoring;
@@ -60,7 +60,7 @@ public EvaluationMonitoringStore(final RateTimer timer) {
/**
* Increments the cumulative count of evaluations and recalculates the rate.
*
- *
+ *
* Only synchronizes the count increment, NOT the whole method.
*/
public void increment() {
diff --git a/openam-core/src/main/java/org/forgerock/openam/entitlement/utils/EntitlementUtils.java b/openam-core/src/main/java/org/forgerock/openam/entitlement/utils/EntitlementUtils.java
index 67908f4ae2..520b9e4c7c 100644
--- a/openam-core/src/main/java/org/forgerock/openam/entitlement/utils/EntitlementUtils.java
+++ b/openam-core/src/main/java/org/forgerock/openam/entitlement/utils/EntitlementUtils.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2014-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.entitlement.utils;
@@ -215,7 +216,7 @@ public static Application newApplication(String name, ApplicationType applicatio
}
/**
- * Converts the map of actions into a set format where the map's key->value combinations are separated by an equals
+ * Converts the map of actions into a set format where the map's key->value combinations are separated by an equals
* character.
*
* @param actions The map of actions that needs to be converted.
diff --git a/openam-core/src/main/java/org/forgerock/openam/ldap/LDAPAuthUtils.java b/openam-core/src/main/java/org/forgerock/openam/ldap/LDAPAuthUtils.java
index 3d62075e8f..ef8ea3e478 100644
--- a/openam-core/src/main/java/org/forgerock/openam/ldap/LDAPAuthUtils.java
+++ b/openam-core/src/main/java/org/forgerock/openam/ldap/LDAPAuthUtils.java
@@ -27,7 +27,7 @@
* Portions Copyrighted 2011-2016 ForgeRock AS.
* Portions Copyrighted 2014-2016 Nomura Research Institute, Ltd
* Portions Copyrighted 2019 Open Source Solution Technology Corporation
- * Portions Copyrighted 2024-2025 3A Systems LLC
+ * Portions Copyrighted 2024-2026 3A Systems LLC
*/
package org.forgerock.openam.ldap;
@@ -392,9 +392,9 @@ public void shutdown() {
/**
* Authenticates to the LDAP server using user input.
*
- * @param user
- * @param password
- * @exception LDAPUtilException
+ * @param user the user name to authenticate
+ * @param password the password to authenticate with
+ * @exception LDAPUtilException if the authentication fails
*/
public void authenticateUser(String user, String password)
throws LDAPUtilException {
@@ -522,7 +522,7 @@ private Connection getAdminConnection() throws LdapException, LDAPUtilException
* @param oldPwd Current password entered.
* @param password New password entered.
* @param confirmPassword Confirm password.
- * @throws LDAPUtilException
+ * @throws LDAPUtilException if the password cannot be changed
*/
public void changePassword(
String oldPwd,
@@ -662,7 +662,7 @@ private ByteString updateADPassword(String password) {
* Searches and returns user for a specified attribute using parameters
* specified in constructor and/or by setting properties.
*
- * @throws LDAPUtilException
+ * @throws LDAPUtilException if the search for the user fails
*/
public void searchForUser()
throws LDAPUtilException {
@@ -1609,7 +1609,7 @@ public Map> getUserAttributeValues() {
* Sets the value of the dynamic profile creation configured in
* Authentication service.
*
- * @param isEnable
+ * @param isEnable whether dynamic profile creation is enabled
*/
public void setDynamicProfileCreationEnabled(boolean isEnable) {
isDynamicUserEnabled = isEnable;
diff --git a/openam-core/src/main/java/org/forgerock/openam/monitoring/cts/CtsCRUDOperationsEntryImpl.java b/openam-core/src/main/java/org/forgerock/openam/monitoring/cts/CtsCRUDOperationsEntryImpl.java
index 8c5b04deeb..90bd2458cb 100644
--- a/openam-core/src/main/java/org/forgerock/openam/monitoring/cts/CtsCRUDOperationsEntryImpl.java
+++ b/openam-core/src/main/java/org/forgerock/openam/monitoring/cts/CtsCRUDOperationsEntryImpl.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2013-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.monitoring.cts;
@@ -25,7 +26,7 @@
/**
* Implementation of the monitoring endpoints for CTS CRUDL operations (query and delete).
- *
+ *
* This endpoint should only be used for query(list) and delete operations on the CTS. This is because the token
* type cannot be determined for these operations. For all other operations use the
* {@link CtsCRUDOperationsPerTokenTypeEntryImpl}.
diff --git a/openam-core/src/main/java/org/forgerock/openam/monitoring/cts/CtsCRUDOperationsPerTokenTypeEntryImpl.java b/openam-core/src/main/java/org/forgerock/openam/monitoring/cts/CtsCRUDOperationsPerTokenTypeEntryImpl.java
index 42a16c8977..1037bfda26 100644
--- a/openam-core/src/main/java/org/forgerock/openam/monitoring/cts/CtsCRUDOperationsPerTokenTypeEntryImpl.java
+++ b/openam-core/src/main/java/org/forgerock/openam/monitoring/cts/CtsCRUDOperationsPerTokenTypeEntryImpl.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2013-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.monitoring.cts;
@@ -28,7 +29,7 @@
/**
* Implementation of the monitoring endpoints for CTS CRUDL operations (except query and delete)
* for specific token type.
- *
+ *
* This endpoint should not be used for query(list) and delete operations on the CTS. This is because the token
* type cannot be determined for these operations. For query and delete operations use the
* {@link CtsCRUDOperationsEntryImpl}.
diff --git a/openam-core/src/main/java/org/forgerock/openam/network/ipv4/IPv4Condition.java b/openam-core/src/main/java/org/forgerock/openam/network/ipv4/IPv4Condition.java
index e39209c0b0..de43800518 100644
--- a/openam-core/src/main/java/org/forgerock/openam/network/ipv4/IPv4Condition.java
+++ b/openam-core/src/main/java/org/forgerock/openam/network/ipv4/IPv4Condition.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -121,7 +122,7 @@ public List getPropertyNames() {
* @see com.sun.identity.policy.Syntax
*
* @param property property name
- * @return Syntax for the property name
+ * @return Syntax for the property name
*/
public Syntax getPropertySyntax(String property) {
return Syntax.NONE;
@@ -137,7 +138,7 @@ public Syntax getPropertySyntax(String property) {
* @param property property name
* @param locale locale for which the property name must be customized
* @return display name for the property name
- * @throws PolicyException
+ * @throws PolicyException if the display name cannot be determined
*/
public String getDisplayName(String property, Locale locale)
throws PolicyException {
diff --git a/openam-core/src/main/java/org/forgerock/openam/network/ipv6/IPv6Condition.java b/openam-core/src/main/java/org/forgerock/openam/network/ipv6/IPv6Condition.java
index 100aa89dc3..41ec81dee4 100644
--- a/openam-core/src/main/java/org/forgerock/openam/network/ipv6/IPv6Condition.java
+++ b/openam-core/src/main/java/org/forgerock/openam/network/ipv6/IPv6Condition.java
@@ -2,6 +2,7 @@
* DO NOT REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright 2013-2014 ForgeRock AS
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -100,7 +101,7 @@ public List getPropertyNames() {
* @see com.sun.identity.policy.Syntax
*
* @param property property name
- * @return Syntax for the property name
+ * @return Syntax for the property name
*/
public Syntax getPropertySyntax(String property) {
return Syntax.NONE;
@@ -116,7 +117,7 @@ public Syntax getPropertySyntax(String property) {
* @param property property name
* @param locale locale for which the property name must be customized
* @return display name for the property name
- * @throws com.sun.identity.policy.PolicyException
+ * @throws com.sun.identity.policy.PolicyException if the display name cannot be retrieved
*/
public String getDisplayName(String property, Locale locale)
throws PolicyException {
diff --git a/openam-core/src/main/java/org/forgerock/openam/oauth2/OAuth2Constants.java b/openam-core/src/main/java/org/forgerock/openam/oauth2/OAuth2Constants.java
index eb285aaac9..4de673437a 100644
--- a/openam-core/src/main/java/org/forgerock/openam/oauth2/OAuth2Constants.java
+++ b/openam-core/src/main/java/org/forgerock/openam/oauth2/OAuth2Constants.java
@@ -258,7 +258,7 @@ public static class UserinfoEndpoint {
/**
* 11.3.2. Initial Registry Contents
*
- * @see 11.3. The OAuth Authorization Endpoint Response Type
+ * @see 11.3. The OAuth Authorization Endpoint Response Type
* Registry
*/
public static class AuthorizationEndpoint {
@@ -342,7 +342,7 @@ public static class IntrospectionEndpoint {
public static class Bearer {
/**
* 5.2.1. The "Bearer" Authentication Scheme
- *
+ *
* Authentication Scheme Name:
*/
public static final String BEARER = "Bearer";
@@ -385,7 +385,6 @@ public static class MAC {
/**
* Mac
- *
*
*
* Authorization: MAC id="h480djs93hd8",
@@ -732,10 +731,10 @@ public static class Custom {
* This optional parameter indicates whether the user should be prompted
* for re-authentication and consent to grant account access to your
* application each time he tries to complete a particular action.
- *
+ *
* The default value is auto, which indicates that a user would only need
* to grant access the first time he tried to access a protected resource.
- *
+ *
* The parameter value may contain a combination of the following values
* separated by spaces:
*
diff --git a/openam-core/src/main/java/org/forgerock/openam/services/cdm/BasicClientTypesManager.java b/openam-core/src/main/java/org/forgerock/openam/services/cdm/BasicClientTypesManager.java
index c81c598b4c..88c99dd6f7 100644
--- a/openam-core/src/main/java/org/forgerock/openam/services/cdm/BasicClientTypesManager.java
+++ b/openam-core/src/main/java/org/forgerock/openam/services/cdm/BasicClientTypesManager.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2010 ForgeRock AS. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -255,7 +256,7 @@ public void setDirty(String clientType, Map data) {
* _attributes is a comma delimited list of attributes for the client type
*
* @param props The properties file to parse
- * @throws InvalidPropertiesFormatException
+ * @throws InvalidPropertiesFormatException if the properties are missing the required client list or are malformed
*/
protected void processProps(Properties props)
throws InvalidPropertiesFormatException {
@@ -278,7 +279,7 @@ protected void processProps(Properties props)
*
* @param clientName The name of the client to populate
* @param props The incoming properties file
- * @throws InvalidPropertiesFormatException
+ * @throws InvalidPropertiesFormatException if the client properties are malformed
*/
protected void populateClient(String clientName, Properties props)
throws InvalidPropertiesFormatException {
diff --git a/openam-core/src/main/java/org/forgerock/openam/session/SessionCuller.java b/openam-core/src/main/java/org/forgerock/openam/session/SessionCuller.java
index 867a8a721d..e5235f9b38 100644
--- a/openam-core/src/main/java/org/forgerock/openam/session/SessionCuller.java
+++ b/openam-core/src/main/java/org/forgerock/openam/session/SessionCuller.java
@@ -12,12 +12,12 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2016 ForgeRock AS.
- * Portions copyright 2023 3A Systems LLC
+ * Portions copyright 2023-2026 3A Systems LLC
*/
package org.forgerock.openam.session;
-import static java.security.AccessController.*;
+import java.security.AccessController;
import java.util.Date;
@@ -132,7 +132,7 @@ void setIsPolling(boolean b) {
/**
* Checks if Polling is enabled
- * @return true if polling is enabled , false otherwise
+ * @return true if polling is enabled , false otherwise
*/
private boolean getIsPolling() {
return isPolling;
@@ -170,7 +170,7 @@ public void run() {
if (sender == null) {
sender = new SessionPollerSender(session, this);
}
- RestrictedTokenContext.doUsing(getContext(),
+ RestrictedTokenContext.doUsing(AccessController.getContext(),
new RestrictedTokenAction() {
public Object run() throws Exception {
try {
diff --git a/openam-core/src/main/java/org/forgerock/openam/session/SessionPollerPool.java b/openam-core/src/main/java/org/forgerock/openam/session/SessionPollerPool.java
index 2d168d0c7c..60ca0577b1 100644
--- a/openam-core/src/main/java/org/forgerock/openam/session/SessionPollerPool.java
+++ b/openam-core/src/main/java/org/forgerock/openam/session/SessionPollerPool.java
@@ -23,7 +23,7 @@
* "Portions Copyrighted [year] [name of copyright owner]"
*
* Portions Copyrighted 2015-2016 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package org.forgerock.openam.session;
@@ -90,7 +90,7 @@ private SessionPollerPool() {
/**
* Checks if Polling is enabled and initializes the threadpool if it's not already configured.
*
- * @return true if polling is enabled , false otherwise.
+ * @return true if polling is enabled, false otherwise.
*/
public boolean isPollingEnabled(){
// This is only a transitional solution before the complete
diff --git a/openam-core/src/main/java/org/forgerock/openam/session/SessionServiceURLService.java b/openam-core/src/main/java/org/forgerock/openam/session/SessionServiceURLService.java
index 7ab43a15ee..3b119e3dbe 100644
--- a/openam-core/src/main/java/org/forgerock/openam/session/SessionServiceURLService.java
+++ b/openam-core/src/main/java/org/forgerock/openam/session/SessionServiceURLService.java
@@ -23,7 +23,7 @@
* "Portions Copyrighted [year] [name of copyright owner]"
*
* Portions Copyrighted 2014-2016 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package org.forgerock.openam.session;
@@ -76,7 +76,7 @@ private SessionServiceURLService() {}
* @param port Session Server port.
* @param uri Session Server URI.
* @return URL Session Service URL.
- * @exception com.iplanet.dpro.session.SessionException
+ * @exception com.iplanet.dpro.session.SessionException if the session service URL cannot be resolved
*/
public URL getSessionServiceURL(String protocol, String server, String port, String uri)
throws SessionException {
@@ -100,7 +100,7 @@ public URL getSessionServiceURL(String protocol, String server, String port, Str
*
* @param serverID server ID from the platform server list.
* @return Session Service URL.
- * @exception SessionException
+ * @exception SessionException if the session service URL cannot be resolved
*/
public URL getSessionServiceURL(String serverID) throws SessionException {
try {
@@ -123,7 +123,7 @@ public URL getSessionServiceURL(String serverID) throws SessionException {
*
* @param sid Session ID
* @return Session Service URL.
- * @exception SessionException
+ * @exception SessionException if the session service URL cannot be resolved
*/
public URL getSessionServiceURL(SessionID sid) throws SessionException {
String primaryId;
diff --git a/openam-core/src/main/java/org/forgerock/openam/session/SessionURL.java b/openam-core/src/main/java/org/forgerock/openam/session/SessionURL.java
index cf07893727..e096289042 100644
--- a/openam-core/src/main/java/org/forgerock/openam/session/SessionURL.java
+++ b/openam-core/src/main/java/org/forgerock/openam/session/SessionURL.java
@@ -23,7 +23,7 @@
* "Portions Copyrighted [year] [name of copyright owner]"
*
* Portions Copyrighted 2014-2016 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package org.forgerock.openam.session;
@@ -75,7 +75,6 @@ private SessionURL(SessionCookies cookies) {
* be rewritten in the URL as a query string with entity escaping of
* ampersand before appending session ID if other query parameters exists in
* the URL.
- *
*
* @param res HTTP Servlet Response.
* @param url the URL to be encoded.
@@ -91,7 +90,6 @@ public String encodeURL(HttpServletResponse res, String url, Session session) {
* be rewritten in the URL as a query string with entity escaping of
* ampersand before appending session id if other query parameters exists in
* the URL.
- *
*
* @param res HTTP Servlet Response.
* @param url the URL to be encoded.
@@ -232,7 +230,7 @@ public String encodeSessionURL(String url, short encodingScheme, boolean escape,
* If the encoding scheme is SLASH then the cookie value would be
* written in the URL as extra path info in the following format:
*
- * protocol://server:port/servletpath/<cookieName>=<cookieValue>?
+ * protocol://server:port/servletpath/<cookieName>=<cookieValue>?
* queryString
*
*
@@ -245,7 +243,7 @@ public String encodeSessionURL(String url, short encodingScheme, boolean escape,
* If the encoding scheme is SEMICOLON then the cookie value would be
* written in the URL as extra path info in the following format:
*
- * protocol://server:port/path;<cookieName=cookieValue>?queryString
+ * protocol://server:port/path;<cookieName=cookieValue>?queryString
*
* Note that this is not supported in the servlet specification and
* some web containers do not support this.
@@ -254,8 +252,8 @@ public String encodeSessionURL(String url, short encodingScheme, boolean escape,
* If the encoding scheme is QUERY then the cookie value would be
* written in the URL in the following format:
*
- * protocol://server:port/path?<cookieName>=<cookieValue>
- * protocol://server:port/path?queryString&<cookieName>=<cookieValue>
+ * protocol://server:port/path?<cookieName>=<cookieValue>
+ * protocol://server:port/path?queryString&<cookieName>=<cookieValue>
*
*
* This is the default and OpenAM always encodes in this format
@@ -264,12 +262,11 @@ public String encodeSessionURL(String url, short encodingScheme, boolean escape,
* if the escape is true. Only the ampersand before appending
* cookie parameter
* will be entity escaped.
- *
* @param url the url to be encoded
* @param encodingScheme possible values are QUERY,SLASH,SEMICOLON
* @param escape entity escaping of ampersand when appending the
* SSOToken ID to request query string.
- * @param cookieName
+ * @param cookieName the name of the session cookie to encode into the URL
* @return encoded URL with cookie value (session id) based
* on the encoding scheme or the url itself if there is an error.
*/
diff --git a/openam-core/src/main/java/org/forgerock/openam/session/authorisation/SessionChangeAuthorizer.java b/openam-core/src/main/java/org/forgerock/openam/session/authorisation/SessionChangeAuthorizer.java
index c6ebae1932..5fd8e53771 100644
--- a/openam-core/src/main/java/org/forgerock/openam/session/authorisation/SessionChangeAuthorizer.java
+++ b/openam-core/src/main/java/org/forgerock/openam/session/authorisation/SessionChangeAuthorizer.java
@@ -12,7 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2016 ForgeRock AS.
- * Portions copyright 2025 3A Systems LLC.
+ * Portions copyright 2025-2026 3A Systems LLC.
*/
package org.forgerock.openam.session.authorisation;
@@ -84,8 +84,8 @@ public Set getSessionSubjectOrganisations(SessionID sessionID)
* Returns true if the subject has top level admin role
*
* @param actorsSessionID SessionID of the current acting subject.
- * @throws SessionException
- * @throws SSOException
+ * @throws SessionException if there is a problem accessing the session
+ * @throws SSOException if the single sign on token is invalid or expired
*/
public boolean hasTopLevelAdminRole(final SessionID actorsSessionID) throws SessionException, SSOException {
SSOToken ssoSession = ssoTokenManager.createSSOToken(actorsSessionID.toString());
diff --git a/openam-core/src/main/java/org/forgerock/openam/session/model/AMRootEntity.java b/openam-core/src/main/java/org/forgerock/openam/session/model/AMRootEntity.java
index 130137618b..7a0efe898b 100644
--- a/openam-core/src/main/java/org/forgerock/openam/session/model/AMRootEntity.java
+++ b/openam-core/src/main/java/org/forgerock/openam/session/model/AMRootEntity.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2011-2012 ForgeRock AS. All Rights Reserved
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -154,7 +155,7 @@ public void setSerializedInternalSessionBlob(byte[] serializedInternalSessionBlo
/**
* Base64 Encoded Data.
- * @return
+ * @return the Base64 encoded data
*/
public String getData() {
return data;
diff --git a/openam-core/src/main/java/org/forgerock/openam/session/model/DBStatistics.java b/openam-core/src/main/java/org/forgerock/openam/session/model/DBStatistics.java
index fe190e1ac4..bf6c94863f 100644
--- a/openam-core/src/main/java/org/forgerock/openam/session/model/DBStatistics.java
+++ b/openam-core/src/main/java/org/forgerock/openam/session/model/DBStatistics.java
@@ -2,6 +2,7 @@
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright 2011-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
@@ -78,8 +79,8 @@ public synchronized void setNumRecords(int numRecords) {
/**
* Returns the current uptime (in ms.) of the amsessiondb server
- *
- * @return
+ *
+ * @return the current uptime of the amsessiondb server, in milliseconds
*/
public long getUptime() {
return currentTimeMillis() - startTime;
diff --git a/openam-core/src/main/java/org/forgerock/openam/session/service/ServicesClusterMonitorHandler.java b/openam-core/src/main/java/org/forgerock/openam/session/service/ServicesClusterMonitorHandler.java
index 5f39db1d77..792eb5a53a 100644
--- a/openam-core/src/main/java/org/forgerock/openam/session/service/ServicesClusterMonitorHandler.java
+++ b/openam-core/src/main/java/org/forgerock/openam/session/service/ServicesClusterMonitorHandler.java
@@ -12,7 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2016 ForgeRock AS.
- * Portions copyright 2025 3A Systems LLC.
+ * Portions copyright 2025-2026 3A Systems LLC.
*/
package org.forgerock.openam.session.service;
@@ -74,7 +74,7 @@ private ServicesClusterMonitorHandler(final @Named(SessionConstants.SESSION_DEBU
* @param sid session id
* @return server id for the server instance determined to be the current
* host
- * @throws SessionException
+ * @throws SessionException if the current host server cannot be determined
*/
public String getCurrentHostServer(SessionID sid) throws SessionException {
return getClusterMonitor().getCurrentHostServer(sid);
diff --git a/openam-core/src/main/java/org/forgerock/openam/session/service/SessionAccessManager.java b/openam-core/src/main/java/org/forgerock/openam/session/service/SessionAccessManager.java
index 2170f8e4e8..5e7ca03555 100644
--- a/openam-core/src/main/java/org/forgerock/openam/session/service/SessionAccessManager.java
+++ b/openam-core/src/main/java/org/forgerock/openam/session/service/SessionAccessManager.java
@@ -12,7 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2016 ForgeRock AS.
- * Portions Copyrighted 2024-2025 3A Systems LLC
+ * Portions Copyrighted 2024-2026 3A Systems LLC
*/
package org.forgerock.openam.session.service;
@@ -82,7 +82,6 @@ public void removeSessionId(SessionID sessionID) {
* @param sessionId The session ID to recover the InternalSession for.
* @return The InternalSession from the InternalSessionCache or null if the internal session could not be retrieved
* or recovered.
- * @throws SessionException If anything goes wrong.
*/
public InternalSession getInternalSession(SessionID sessionId) {
if (sessionId == null || StringUtils.isEmpty(sessionId.toString()) || sessionId.isSessionHandle()) {
@@ -166,7 +165,6 @@ public int getInternalSessionCount() {
/**
* Remove an internal session from the internal session cache.
* @param internalSession the session to remove
- * @return the removed internal session
*/
public void removeInternalSession(InternalSession internalSession) {
if (null == internalSession) {
diff --git a/openam-core/src/main/java/org/forgerock/openam/session/service/access/SessionQueryManager.java b/openam-core/src/main/java/org/forgerock/openam/session/service/access/SessionQueryManager.java
index f3e6e55d64..1f121c90da 100644
--- a/openam-core/src/main/java/org/forgerock/openam/session/service/access/SessionQueryManager.java
+++ b/openam-core/src/main/java/org/forgerock/openam/session/service/access/SessionQueryManager.java
@@ -12,7 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2016 ForgeRock AS.
- * Portions copyright 2025 3A Systems LLC.
+ * Portions copyright 2025-2026 3A Systems LLC.
*/
package org.forgerock.openam.session.service.access;
@@ -89,7 +89,7 @@ public Collection getMatchingValidSessions(CrestQuery crestQuery
/**
* Returns the expiration information of all sessions belonging to a user
- * (uuid). The returned value will be a Map (sid->expiration_time).
+ * (uuid). The returned value will be a Map (sid->expiration_time).
*
* @param uuid
* User's universal unique ID.
@@ -106,8 +106,8 @@ public Map getAllSessionsByUUID(String uuid) throws SessionExcepti
* Gets all valid Internal Sessions, depending on the value of the user's
* preferences.
*
- * @param actingSession
- * @throws SessionException
+ * @param actingSession the session on whose behalf valid sessions are retrieved
+ * @throws SessionException if the valid sessions cannot be retrieved
*/
public SearchResults getValidSessions(Session actingSession, String pattern) throws SessionException {
if (actingSession.getState(false) != VALID) {
diff --git a/openam-core/src/main/java/org/forgerock/openam/session/service/access/persistence/InternalSessionStore.java b/openam-core/src/main/java/org/forgerock/openam/session/service/access/persistence/InternalSessionStore.java
index ed83a34271..8530c01bd2 100644
--- a/openam-core/src/main/java/org/forgerock/openam/session/service/access/persistence/InternalSessionStore.java
+++ b/openam-core/src/main/java/org/forgerock/openam/session/service/access/persistence/InternalSessionStore.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.session.service.access.persistence;
@@ -69,7 +70,6 @@ public interface InternalSessionStore {
*
* @param session Non null SessionID.
* @exception SessionPersistenceException If the storage operation failed.
- * @return The InternalSession that was removed from the cache.
*/
void remove(InternalSession session) throws SessionPersistenceException;
diff --git a/openam-core/src/main/java/org/forgerock/openam/session/service/access/persistence/InternalSessionStoreStep.java b/openam-core/src/main/java/org/forgerock/openam/session/service/access/persistence/InternalSessionStoreStep.java
index b4ce7c93e8..d14c5bd48c 100644
--- a/openam-core/src/main/java/org/forgerock/openam/session/service/access/persistence/InternalSessionStoreStep.java
+++ b/openam-core/src/main/java/org/forgerock/openam/session/service/access/persistence/InternalSessionStoreStep.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.session.service.access.persistence;
@@ -70,7 +71,6 @@ public interface InternalSessionStoreStep {
*
* @param session Non null SessionID.
* @exception SessionPersistenceException If the storage operation failed.
- * @return The InternalSession that was removed from the cache.
*/
void remove(InternalSession session, InternalSessionStore next) throws SessionPersistenceException;
diff --git a/openam-core/src/main/java/org/forgerock/openam/session/service/access/persistence/SessionPersistenceStore.java b/openam-core/src/main/java/org/forgerock/openam/session/service/access/persistence/SessionPersistenceStore.java
index 77d3ec1709..7d8e6ea1ce 100644
--- a/openam-core/src/main/java/org/forgerock/openam/session/service/access/persistence/SessionPersistenceStore.java
+++ b/openam-core/src/main/java/org/forgerock/openam/session/service/access/persistence/SessionPersistenceStore.java
@@ -13,7 +13,7 @@
*
* Copyright 2016 ForgeRock AS.
* Portions Copyrighted 2022 Open Identity Platform Community
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package org.forgerock.openam.session.service.access.persistence;
@@ -300,7 +300,7 @@ public InternalSession getByRestrictedID(SessionID sessionID) {
/**
* Returns the expiration information of all sessions belonging to a user
- * (uuid). The returned value will be a Map (sid->expiration_time).
+ * (uuid). The returned value will be a {@code Map (sid->expiration_time)}.
*
* @param uuid
* User's universal unique ID.
diff --git a/openam-core/src/main/java/org/forgerock/openam/sm/config/ConfigTransformer.java b/openam-core/src/main/java/org/forgerock/openam/sm/config/ConfigTransformer.java
index dba9ba3851..f7fc024734 100644
--- a/openam-core/src/main/java/org/forgerock/openam/sm/config/ConfigTransformer.java
+++ b/openam-core/src/main/java/org/forgerock/openam/sm/config/ConfigTransformer.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.sm.config;
@@ -20,7 +21,7 @@
/**
* Provides a custom transformation to the attribute values.
- *
+ *
* The transformed type should be the same type as that of parameter being passed via the setter.
*
* @since 13.0.0
diff --git a/openam-core/src/main/java/org/forgerock/openam/sm/config/ConsoleConfigBuilder.java b/openam-core/src/main/java/org/forgerock/openam/sm/config/ConsoleConfigBuilder.java
index cdea04a0f7..b93ba6973c 100644
--- a/openam-core/src/main/java/org/forgerock/openam/sm/config/ConsoleConfigBuilder.java
+++ b/openam-core/src/main/java/org/forgerock/openam/sm/config/ConsoleConfigBuilder.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.sm.config;
@@ -21,7 +22,7 @@
/**
* Builder to construct the config object represented.
- *
+ *
* The builder needs to declare which service configuration sources to pull on using
* {@link ConfigSource} and each setter needs to declare which attribute to be
* populated with using {@link ConfigAttribute}.
diff --git a/openam-core/src/main/java/org/forgerock/openam/sm/config/DefaultConfigTransformer.java b/openam-core/src/main/java/org/forgerock/openam/sm/config/DefaultConfigTransformer.java
index 3522472382..b3ec7e794e 100644
--- a/openam-core/src/main/java/org/forgerock/openam/sm/config/DefaultConfigTransformer.java
+++ b/openam-core/src/main/java/org/forgerock/openam/sm/config/DefaultConfigTransformer.java
@@ -12,7 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2015 ForgeRock AS.
- * Portions copyright 2025 3A Systems LLC.
+ * Portions copyright 2025-2026 3A Systems LLC.
*/
package org.forgerock.openam.sm.config;
@@ -24,7 +24,7 @@
/**
* Provides the default transformations if a specific transformation class is not defined.
- *
+ *
* Default transformations handles common primitive types and set and list. In the case
* of set and list, the expectation is that the parameter type is a set or list of strings;
* anything other will need a custom transformation.
diff --git a/openam-core/src/main/java/org/forgerock/openam/sm/datalayer/api/ConnectionFactory.java b/openam-core/src/main/java/org/forgerock/openam/sm/datalayer/api/ConnectionFactory.java
index 6c4d3d89bd..cbea26a7ff 100644
--- a/openam-core/src/main/java/org/forgerock/openam/sm/datalayer/api/ConnectionFactory.java
+++ b/openam-core/src/main/java/org/forgerock/openam/sm/datalayer/api/ConnectionFactory.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.sm.datalayer.api;
@@ -22,7 +23,7 @@
/**
* Creates connections of type T either asynchronously or synchronously.
- * @param
+ * @param the type of connection produced by this factory
*/
public interface ConnectionFactory extends Closeable {
diff --git a/openam-core/src/main/java/org/forgerock/openam/sm/datalayer/impl/ldap/CTSDJLDAPv3PersistentSearchBuilder.java b/openam-core/src/main/java/org/forgerock/openam/sm/datalayer/impl/ldap/CTSDJLDAPv3PersistentSearchBuilder.java
index 564c8f39c2..82b4dea9af 100644
--- a/openam-core/src/main/java/org/forgerock/openam/sm/datalayer/impl/ldap/CTSDJLDAPv3PersistentSearchBuilder.java
+++ b/openam-core/src/main/java/org/forgerock/openam/sm/datalayer/impl/ldap/CTSDJLDAPv3PersistentSearchBuilder.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2016 ForgeRock AS.
+* Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.sm.datalayer.impl.ldap;
@@ -37,7 +38,7 @@ public class CTSDJLDAPv3PersistentSearchBuilder {
/**
* Generates a new builder.
*
- * @param connectionFactory
+ * @param connectionFactory the connection factory used to create LDAP connections for the persistent search
*/
public CTSDJLDAPv3PersistentSearchBuilder(ConnectionFactory connectionFactory) {
Reject.ifNull(connectionFactory);
diff --git a/openam-core/src/main/java/org/forgerock/openam/sm/datalayer/impl/tasks/PartialQueryTask.java b/openam-core/src/main/java/org/forgerock/openam/sm/datalayer/impl/tasks/PartialQueryTask.java
index 8af2f55373..cac80104d5 100644
--- a/openam-core/src/main/java/org/forgerock/openam/sm/datalayer/impl/tasks/PartialQueryTask.java
+++ b/openam-core/src/main/java/org/forgerock/openam/sm/datalayer/impl/tasks/PartialQueryTask.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2014-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.sm.datalayer.impl.tasks;
@@ -49,7 +50,7 @@ public PartialQueryTask(TokenFilter tokenFilter, ResultHandler
+ *
* This factory provider is aware of two main use cases for the service management layer (also known
* as Data Layer).
- *
+ *
* Default - Uses the service management configuration for connections. This will connect to the
* defined LDAP server, whether that is embedded or external.
- *
+ *
* External - Uses CTS Configuration for CTS connections which are pointed towards an external
* LDAP server. Uses service management configuration for {@link StoreMode#DEFAULT} connections.
*/
diff --git a/openam-core/src/main/java/org/forgerock/openam/sso/providers/stateless/JwtSessionMapper.java b/openam-core/src/main/java/org/forgerock/openam/sso/providers/stateless/JwtSessionMapper.java
index ec62f08fa5..1b29875dd3 100644
--- a/openam-core/src/main/java/org/forgerock/openam/sso/providers/stateless/JwtSessionMapper.java
+++ b/openam-core/src/main/java/org/forgerock/openam/sso/providers/stateless/JwtSessionMapper.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2015-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.forgerock.openam.sso.providers.stateless;
@@ -44,7 +45,7 @@
import com.iplanet.dpro.session.share.SessionInfo;
/**
- * Responsible for converting {@link SessionInfo} objects to/from JWT with optional signing &/or encryption.
+ * Responsible for converting {@link SessionInfo} objects to/from JWT with optional signing &/or encryption.
*
* @since 13.0.0
*/
diff --git a/openam-core/src/main/java/org/forgerock/openam/sso/providers/stateless/StatelessSessionManager.java b/openam-core/src/main/java/org/forgerock/openam/sso/providers/stateless/StatelessSessionManager.java
index 7057e07b95..1aa2635c92 100644
--- a/openam-core/src/main/java/org/forgerock/openam/sso/providers/stateless/StatelessSessionManager.java
+++ b/openam-core/src/main/java/org/forgerock/openam/sso/providers/stateless/StatelessSessionManager.java
@@ -12,7 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2015-2016 ForgeRock AS.
-* Portions copyright 2025 3A Systems LLC.
+* Portions copyright 2025-2026 3A Systems LLC.
*/
package org.forgerock.openam.sso.providers.stateless;
@@ -107,7 +107,7 @@ public boolean containsJwt(SessionID sid) {
*
* @param tokenId Non null TokenID to use for parsing.
* @return A non null StatelessSessionID.
- * @throws SessionException
+ * @throws SessionException if the stateless session cannot be generated
*/
public StatelessSession generate(String tokenId) throws SessionException {
return generate(new SessionID(tokenId));
diff --git a/openam-core/src/main/java/org/forgerock/openam/utils/RealmNormaliser.java b/openam-core/src/main/java/org/forgerock/openam/utils/RealmNormaliser.java
index 6c514f6bb3..a1d434911e 100644
--- a/openam-core/src/main/java/org/forgerock/openam/utils/RealmNormaliser.java
+++ b/openam-core/src/main/java/org/forgerock/openam/utils/RealmNormaliser.java
@@ -12,7 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2014-2016 ForgeRock AS.
- * Portions copyright 2025 3A Systems LLC.
+ * Portions copyright 2025-2026 3A Systems LLC.
*/
package org.forgerock.openam.utils;
@@ -39,7 +39,7 @@ public class RealmNormaliser {
/**
* Normalises the realm.
- *
+ *
* If the specified realm is {@code null} or an empty String, '/' is returned. Otherwise the specified realm is
* checked for its validity and returned in "/" separated format .
*
diff --git a/openam-core/src/main/java/org/forgerock/openam/utils/RecoveryCodeGenerator.java b/openam-core/src/main/java/org/forgerock/openam/utils/RecoveryCodeGenerator.java
index 21216778a6..3695b65853 100644
--- a/openam-core/src/main/java/org/forgerock/openam/utils/RecoveryCodeGenerator.java
+++ b/openam-core/src/main/java/org/forgerock/openam/utils/RecoveryCodeGenerator.java
@@ -12,7 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2016 ForgeRock AS.
-* Portions copyright 2025 3A Systems LLC.
+* Portions copyright 2025-2026 3A Systems LLC.
*/
package org.forgerock.openam.utils;
@@ -74,7 +74,7 @@ public RecoveryCodeGenerator(SecureRandom secureRandom) {
* source of random characters.
*
* @param alphabet The alpha to use from which to pick characters. Must not be null.
- * @param length The size of the produced codes. Must be > 0.
+ * @param length The size of the produced codes. Must be > 0.
*
* @return a randomly generated code.
*/
@@ -100,7 +100,7 @@ public String generateCode(CodeGeneratorSource alphabet, int length) {
* @param alphabet The alpha to use from which to pick characters. Must not be null.
* @param groups The groupings of characters. For example, {@code {4, 4}} will produce two sets
* of four characters with a {@code delimiter} between them. Must not be null. Must have at least
- * one entry. Entries must be > 0.
+ * one entry. Entries must be > 0.
* @param delimiter The character to use between each of the groups.
*
* @return a randomly generated, delimited code.
@@ -134,7 +134,7 @@ public String generateDelimitedCode(CodeGeneratorSource alphabet, char delimiter
* @param alphabet The alpha to use from which to pick characters. Must not be null.
* @param groups The groupings of characters. For example, {@code {4, 4}} will produce two sets
* of four characters with a {@code delimiter} between them. Must not be null. Must have at least
- * one entry. Entries must be > 0.
+ * one entry. Entries must be > 0.
* @param delimiter The character to use between each of the groups. Must not be null.
* @param specifics A map used to specify characters to use at a given location.
*
@@ -158,7 +158,7 @@ public String generateDelimitedCodeWithSpecifics(CodeGeneratorSource alphabet, c
/**
* Generate a set of codes using the provided alphabet of the default length.
*
- * @param numCodes The number of codes to generate. Must be > 0.
+ * @param numCodes The number of codes to generate. Must be > 0.
* @param alphabet The alphabet to use from which to select characters. Must not be null.
* @param allowDuplicates Whether to allow duplicates in the result set.
*
@@ -173,9 +173,9 @@ public String[] generateCodes(int numCodes, CodeGeneratorSource alphabet, boolea
/**
* Generate a set of codes using the provided alphabet of the provided length.
*
- * @param numCodes Number of recovery codes to generate. Must be > 0.
+ * @param numCodes Number of recovery codes to generate. Must be > 0.
* @param alphabet The alphabet to use from which to select characters. Must not be null.
- * @param length The length of produced codes. Must be > 0.
+ * @param length The length of produced codes. Must be > 0.
* @param allowDuplicates Whether or not to allow duplicates in the result set.
*
* @throws CodeException if duplicate codes were produced, disallowed and the number of retries was exceeded.
@@ -214,11 +214,11 @@ public String[] generateCodes(int numCodes, CodeGeneratorSource alphabet, int le
* source of random characters. The generated codes will have random characters for the
* size of each of the supplied {@code groups}, with a {@code delimiter} between them.
*
- * @param numCodes Number of recovery codes to generate. Must be > 0.
+ * @param numCodes Number of recovery codes to generate. Must be > 0.
* @param alphabet The alphabet to use from which to select numbers. Must not be null.
* @param groups The groupings of lengths of characters. For example, {@code {4, 4}} will produce two set
* of four characters with a {@code delimiter} between them. Must not be null. Must have at least
- * one entry. Entries must be > 0.
+ * one entry. Entries must be > 0.
* @param delimiter The character to use between each of the groups.
* @param allowDuplicates Whether or not to allow duplicates in the result set.
*
@@ -261,11 +261,11 @@ public String[] generateDelimitedCodes(int numCodes, CodeGeneratorSource alphabe
* The provided specifics map can then be used to replace individual character indexes with a
* specific character.
*
- * @param numCodes The number of codes to generate. Must be > 0.
+ * @param numCodes The number of codes to generate. Must be > 0.
* @param alphabet The alphabet to use from which to pick characters. Must not be null.
* @param groups The groupings of lengths of characters. For example, {@code {4, 4}} will produce two sets
* of four characters with a {@code delimiter} between them. Must not be null. Must have at least
- * one entry. Entries must be > 0.
+ * one entry. Entries must be > 0.
* @param delimiter The character to use between each of the groups.
* @param specifics A map used to specify characters to use at a given location.
* @param allowDuplicates Whether to allow duplicate codes.
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/ActionEventDispatcher.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/ActionEventDispatcher.java
index 6081167fdc..82bf63a671 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/ActionEventDispatcher.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/ActionEventDispatcher.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click;
@@ -64,7 +65,7 @@
* This method registers the Control's action listener with the
* ActionEventDispatcher. The ClickServlet will subsequently invoke the registered
* {@link ActionListener#onAction(Control)} method after all the Page controls
- * onProcess() method have been invoked.
+ * onProcess() method have been invoked.
*/
public class ActionEventDispatcher {
@@ -149,7 +150,7 @@ public static ActionEventDispatcher getThreadLocalDispatcher() {
/**
* Returns true if an ActionEventDispatcher instance is available on the
* current thread, false otherwise.
- *
+ *
* Unlike {@link #getThreadLocalDispatcher()} this method can safely be used
* and will not throw an exception if an ActionEventDispatcher is not
* available on the current thread.
@@ -216,7 +217,7 @@ protected void errorOccurred(Throwable throwable) {
/**
* Fire the actions for the given listener list and event source list which
* return true if the page should continue processing.
- *
+ *
* This method can be overridden if you need to customize the way events
* are fired.
*
@@ -246,7 +247,7 @@ protected boolean fireActionEvents(Context context,
/**
* Fire the action for the given listener and event source which
* return true if the page should continue processing.
- *
+ *
* This method can be overridden if you need to customize the way events
* are fired.
*
@@ -264,7 +265,7 @@ protected boolean fireActionEvent(Context context, Control source,
/**
* Fire the AjaxBehaviors for the given control set and return true if the page
* should continue processing, false otherwise.
- *
+ *
* This method can be overridden if you need to customize the way
* AjaxBehaviors are fired.
*
@@ -298,7 +299,7 @@ protected boolean fireAjaxBehaviors(Context context, Set ajaxBbehaviorS
* page should continue processing, false otherwise. AjaxBehaviors will
* only fire if their {@link org.openidentityplatform.openam.click.ajax.AjaxBehavior#isAjaxTarget(Context) isAjaxTarget()}
* method returns true.
- *
+ *
* This method can be overridden if you need to customize the way
* AjaxBehaviors are fired.
*
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/ActionListener.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/ActionListener.java
index a7ca79b482..4fb5142e33 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/ActionListener.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/ActionListener.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click;
@@ -23,13 +24,13 @@
/**
* Provides a listener interface for receiving control action events.
- * The usage model is similar to the java.awt.event.ActionListener
+ * The usage model is similar to the java.awt.event.ActionListener
* interface.
- *
+ *
* The class that is interested in processing an action event
* implements this interface, and the object created with that class is
- * registered with a control, using the control's setActionListener
- * method. When the action event occurs, that object's onAction method
+ * registered with a control, using the control's setActionListener
+ * method. When the action event occurs, that object's onAction method
* is invoked.
*
*
Listener Example
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/ActionResult.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/ActionResult.java
index 60ac4b9c70..d5a4a6ebdb 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/ActionResult.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/ActionResult.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click;
@@ -35,13 +36,13 @@
* Provides an ActionResult that is returned by Page Actions and AjaxBehaviors.
* ActionResults are often used to return a partial response to the browser
* instead of the full page content.
- *
+ *
* An ActionResult can consist of a String (HTML, JSON, XML, plain text) or a byte
* array (jpg, gif, png, pdf or excel documents). The ActionResult {@link #contentType}
* must be set appropriately in order for the browser to recognize the action result.
- *
+ *
* ActionResults are returned by {@link org.apache.click.ajax.AjaxBehavior Ajax Behaviors}
- * and Page Action methods.
+ * and Page Action methods.
*
*
Ajax Behavior
*
@@ -69,7 +70,7 @@
*
* Page Action
*
- * A Page Action is a method on a Page that can be invoked directly
+ * A Page Action is a method on a Page that can be invoked directly
* from the browser. The Page Action method returns an ActionResult instance that
* is rendered to the browser, thus bypassing the rendering of the Page template.
*
@@ -99,9 +100,9 @@
*
* The {@link #contentType} of the ActionResult must be set to the appropriate type
* in order for the client to recognize the response. ActionResult provides constants
- * for some of the common content types, including: {@link #XML text/xml},
+ * for some of the common content types, including: {@link #XML text/xml},
* {@link #HTML text/html}, {@link #JSON application/json}, {@link #TEXT text/plain}.
- *
+ *
* For example:
*
* ActionResult actionResult = new ActionResult("alert('hello world');", ActionResult.JAVASCRIPT);
@@ -124,22 +125,22 @@ public class ActionResult {
// Constants --------------------------------------------------------------
- /** The plain text content type constant: text/plain. */
+ /** The plain text content type constant: text/plain. */
public static final String TEXT = "text/plain";
- /** The html content type constant: text/html. */
+ /** The html content type constant: text/html. */
public static final String HTML = "text/html";
- /** The The xhtml content type constant: application/xhtml+xml. */
+ /** The The xhtml content type constant: application/xhtml+xml. */
public static final String XHTML = "application/xhtml+xml";
- /** The json content type constant: text/json. */
+ /** The json content type constant: text/json. */
public static final String JSON = "application/json";
- /** The javascript content type constant: text/javascript. */
+ /** The javascript content type constant: text/javascript. */
public static final String JAVASCRIPT = "text/javascript";
- /** The xml content type constant: text/xml. */
+ /** The xml content type constant: text/xml. */
public static final String XML = "text/xml";
/** The ActionResult writer buffer size. */
@@ -181,10 +182,10 @@ public class ActionResult {
/**
* Construct the ActionResult for the given template and model.
- *
+ *
* When the ActionResult is rendered the template and model will be merged and
* the result will be streamed back to the client.
- *
+ *
* For example:
*
* public class MyPage extends Page {
@@ -263,7 +264,7 @@ public ActionResult(byte[] bytes, String contentType) {
/**
* Construct the ActionResult for the given content. The
- * {@link jakarta.servlet.http.HttpServletResponse#setContentType(java.lang.String) response content type}
+ * {@link jakarta.servlet.http.HttpServletResponse#setContentType(java.lang.String) response content type}
* will default to {@link #TEXT}, unless overridden.
*
* @param content the content to stream back to the client
@@ -274,7 +275,7 @@ public ActionResult(String content) {
/**
* Construct a new empty ActionResult. The
- * {@link jakarta.servlet.http.HttpServletResponse#setContentType(java.lang.String) response content type}
+ * {@link jakarta.servlet.http.HttpServletResponse#setContentType(java.lang.String) response content type}
* will default to {@link #TEXT}, unless overridden.
*/
public ActionResult() {
@@ -285,7 +286,7 @@ public ActionResult() {
/**
* Set whether the action result should be cached by the client browser or
* not.
- *
+ *
* If false, Click will set the following headers to prevent browsers
* from caching the result:
*
@@ -441,7 +442,7 @@ public Map getModel() {
/**
* Set the model of the ActionResult template to render.
- *
+ *
* If the {@link #template} property is set, the template and {@link #model}
* will be merged and the result will be streamed back to the client.
*
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/Behavior.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/Behavior.java
index 58ac8527e0..1099202204 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/Behavior.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/Behavior.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click;
@@ -22,28 +23,28 @@
* Behaviors provide a mechanism for changing how Controls behave at runtime.
* Behaviors are added to a Control and provides interceptor methods to decorate
* and enhance the source Control.
- *
+ *
* Behaviors provide interceptor methods for specific Control life cycle events.
* These interceptor methods can be implemented to further process and decorate
* the control or its children.
- *
+ *
* The following interceptor methods are defined:
*
*
* - preResponse - occurs before the control markup is written to the response
- * - preRenderHeadElements - occurs after preResponse but before the control
+ *
- preRenderHeadElements - occurs after
preResponse but before the control
* {@link Control#getHeadElements() HEAD elements} are written to the response
* - preDestroy - occurs before the Control {@link Control#onDestroy() onDestroy}
* event handler.
*
*
- * These interceptor methods allow the Behavior to decorate a control,
+ * These interceptor methods allow the Behavior to decorate a control,
* for example:
*
*
* - add or remove Control HEAD elements such as JavaScript and CSS dependencies
* and setup scripts
- * - add or remove Control attributes such as "class", "style" etc.
+ * - add or remove Control attributes such as
"class", "style" etc.
*
*/
public interface Behavior {
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/ClickRequestWrapper.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/ClickRequestWrapper.java
index 482c832c77..cc146cd0d8 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/ClickRequestWrapper.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/ClickRequestWrapper.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click;
@@ -43,14 +44,14 @@
class ClickRequestWrapper extends HttpServletRequestWrapper {
/**
- * The FileItem objects for "multipart" POST requests.
+ * The FileItem objects for "multipart" POST requests.
*/
private final Map fileItemMap;
/** The request is a multi-part file upload POST request. */
private final boolean isMultipartRequest;
- /** The map of "multipart" request parameter values. */
+ /** The map of "multipart" request parameter values. */
private final Map multipartParameterMap;
/** The wrapped servlet request. */
@@ -133,11 +134,11 @@ class ClickRequestWrapper extends HttpServletRequestWrapper {
// Public Methods ---------------------------------------------------------
/**
- * Returns a map of FileItem arrays keyed on request parameter
+ * Returns a map of FileItem arrays keyed on request parameter
* name for "multipart" POST requests (file uploads). Thus each map entry
- * will consist of one or more FileItem objects.
+ * will consist of one or more FileItem objects.
*
- * @return map of FileItem arrays keyed on request parameter name
+ * @return map of FileItem arrays keyed on request parameter name
* for "multipart" POST requests
*/
public Map getFileItemMap() {
@@ -223,9 +224,9 @@ public Map getParameterMap() {
// Package Private Methods ------------------------------------------------
/**
- * Return the map of "multipart" request parameter map.
+ * Return the map of "multipart" request parameter map.
*
- * @return the "multipart" request parameter map
+ * @return the "multipart" request parameter map
*/
@SuppressWarnings("unchecked")
Map getMultipartParameterMap() {
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/ClickServlet.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/ClickServlet.java
index e8ff6b2fe8..8019ff4335 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/ClickServlet.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/ClickServlet.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click;
@@ -63,12 +64,12 @@
/**
* Provides the Click application HttpServlet.
- *
- * Generally developers will simply configure the ClickServlet and
+ *
+ * Generally developers will simply configure the ClickServlet and
* will not use it directly in their code. For a Click web application to
- * function the ClickServlet must be configured in the web
- * application's /WEB-INF/web.xml file. A simple web application which
- * maps all *.htm requests to a ClickServlet is provided below.
+ * function the ClickServlet must be configured in the web
+ * application's /WEB-INF/web.xml file. A simple web application which
+ * maps all *.htm requests to a ClickServlet is provided below.
*
*
* <web-app>
@@ -83,8 +84,8 @@
* </servlet-mapping>
* </web-app>
*
- * By default the ClickServlet will attempt to load an application
- * configuration file using the path: /WEB-INF/click.xml
+ * By default the ClickServlet will attempt to load an application
+ * configuration file using the path: /WEB-INF/click.xml
*
* Servlet Mapping
* By convention all Click page templates should have a .htm extension, and
@@ -93,13 +94,13 @@
* and they will not be processed as Click pages.
*
* Load On Startup
- * Note you should always set load-on-startup element to be 0 so the
+ * Note you should always set load-on-startup element to be 0 so the
* servlet is initialized when the server is started. This will prevent any
* delay for the first client which uses the application.
- *
- * The ClickServlet performs as much work as possible at startup to
+ *
+ * The ClickServlet performs as much work as possible at startup to
* improve performance later on. The Click start up and caching strategy is
- * configured with the Click application mode in the "click.xml" file.
+ * configured with the Click application mode in the "click.xml" file.
* See the User Guide for information on how to configure the application mode.
*
*
ConfigService
@@ -115,20 +116,20 @@ public class ClickServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
- * The mock page reference request attribute: key:
- * mock_page_reference.
- *
+ * The mock page reference request attribute: key:
+ * mock_page_reference.
+ *
* This attribute stores the each Page instance as a request attribute.
- *
- * Note: a page is only stored as a request attribute
+ *
+ * Note: a page is only stored as a request attribute
* if the {@link #MOCK_MODE_ENABLED} attribute is set.
*/
static final String MOCK_PAGE_REFERENCE = "mock_page_reference";
/**
- * The mock mode request attribute: key:
- * mock_mode_enabled.
- *
+ * The mock mode request attribute: key:
+ * mock_mode_enabled.
+ *
* If this attribute is set (the value does not matter) certain features
* will be enabled which is needed for running Click in a mock environment.
*/
@@ -136,23 +137,23 @@ public class ClickServlet extends HttpServlet {
/**
* The click application configuration service classname init parameter name:
- * "config-service-class".
+ * "config-service-class".
*/
protected final static String CONFIG_SERVICE_CLASS = "config-service-class";
/**
* The custom TypeConverter classname as an init parameter name:
- * &nbps; "type-converter-class".
+ * &nbps; "type-converter-class".
*/
protected final static String TYPE_CONVERTER_CLASS = "type-converter-class";
/**
- * The forwarded request marker attribute: "click-forward".
+ * The forwarded request marker attribute: "click-forward".
*/
protected final static String CLICK_FORWARD = "click-forward";
/**
- * The Page to forward to request attribute: "click-page".
+ * The Page to forward to request attribute: "click-page".
*/
protected final static String FORWARD_PAGE = "forward-page";
@@ -297,10 +298,10 @@ protected void doPost(HttpServletRequest request,
/**
* Handle the given servlet request and render the results to the
* servlet response.
- *
+ *
* If an exception occurs within this method the exception will be delegated
* to:
- *
+ *
* {@link #handleException(HttpServletRequest, HttpServletResponse, boolean, Throwable, Class)}
*
* @param request the servlet request to process
@@ -428,7 +429,7 @@ protected void handleRequest(HttpServletRequest request,
/**
* Provides the application exception handler. The application exception
* will be delegated to the configured error page. The default error page is
- * {@link ErrorPage} and the page template is "click/error.htm"
+ * {@link ErrorPage} and the page template is "click/error.htm"
* Applications which wish to provide their own customized error handling
* must subclass ErrorPage and specify their page in the
* "/WEB-INF/click.xml" application configuration file. For example:
@@ -535,7 +536,7 @@ public void processField(String fieldName, Object fieldValue) {
/**
* Process the given page invoking its "on" event callback methods
* and directing the response.
- *
+ *
* This method does not invoke the "onDestroy()" callback method.
*
* @see #processPageEvents(Page, Context)
@@ -561,7 +562,7 @@ protected void processPage(Page page) throws Exception {
/**
* Process the given page events, invoking the "on" event callback methods
* and directing the response.
- *
+ *
* This method does not invoke the "onDestroy()" callback method.
*
* @param page the Page which events to process
@@ -914,11 +915,11 @@ protected void performRender(Page page, Context context, ActionResult actionResu
/**
* Render the Velocity template defined by the page's path.
- *
+ *
* This method creates a Velocity Context using the Page's model Map and
* then merges the template with the Context writing the result to the
* HTTP servlet response.
- *
+ *
* This method was adapted from org.apache.velocity.servlet.VelocityServlet.
*
* @param page the page template to merge
@@ -1112,8 +1113,8 @@ protected Page createPage(Context context) {
}
/**
- * Process the given pages controls onDestroy methods, reset the pages
- * navigation state and process the pages onDestroy method.
+ * Process the given pages controls onDestroy methods, reset the pages
+ * navigation state and process the pages onDestroy method.
*
* @param page the page to process
* @param startTime the start time to log if greater than 0 and not in
@@ -1203,22 +1204,22 @@ protected void processPageOnDestroy(Page page, long startTime) {
* Initialize a new page instance using
* {@link #newPageInstance(String, Class, HttpServletRequest)} method and
* setting format, headers and the forward if a JSP.
- *
+ *
* This method will also automatically register any public Page controls
* in the page's model. When the page is created any public visible
* page Control variables will be automatically added to the page using
* the method {@link Page#addControl(Control)} method. If the controls name
* is not defined it is set to the member variables name before it is added
* to the page.
- *
+ *
* This feature saves you from having to manually add the controls yourself.
* If you don't want the controls automatically added, simply declare them
* as non public variables.
- *
+ *
* An example auto control registration is provided below. In this example
* the Table control is automatically added to the model using the name
- * "table", and the ActionLink controls are added using the names
- * "editDetailsLink" and "viewDetailsLink".
+ * "table", and the ActionLink controls are added using the names
+ * "editDetailsLink" and "viewDetailsLink".
*
*
* public class OrderDetailsPage extends Page {
@@ -1318,8 +1319,8 @@ public void processField(String fieldName, Object fieldValue) {
* Process the page binding any request parameters to any public Page
* fields with the same name which are "primitive" types. These types
* include string, numbers and booleans.
- *
- * Type conversion is performed using the TypeConverter
+ *
+ * Type conversion is performed using the TypeConverter
* returned by the {@link #getTypeConverter()} method.
*
* @param page the page whose fields are to be processed
@@ -1373,7 +1374,7 @@ protected void processPageRequestParams(Page page) throws OgnlException {
/**
* Return a new Page instance for the given page path, class and request.
- *
+ *
* The default implementation of this method simply creates new page
* instances:
*
@@ -1385,10 +1386,10 @@ protected void processPageRequestParams(Page page) throws OgnlException {
*
* This method is designed to be overridden by applications providing their
* own page creation patterns.
- *
+ *
* A typical example of this would be with Inversion of Control (IoC)
* frameworks such as Spring or HiveMind. For example a Spring application
- * could override this method and use a ApplicationContext to instantiate
+ * could override this method and use a ApplicationContext to instantiate
* new Page objects:
*
* protected Page newPageInstance(String path, Class pageClass,
@@ -1421,7 +1422,7 @@ protected Page newPageInstance(String path, Class extends Page> pageClass,
/**
* Provides an extension point for ClickServlet sub classes to activate
* stateful page which may have been deserialized.
- *
+ *
* This method does nothing and is designed for extension.
*
* @param page the page instance to activate
@@ -1431,7 +1432,7 @@ protected void activatePageInstance(Page page) {
/**
* Return a new VelocityContext for the given pages model and Context.
- *
+ *
* The following values automatically added to the VelocityContext:
*
* - any public Page fields using the fields name
@@ -1610,13 +1611,13 @@ public void processField(String fieldName, Object fieldValue) {
}
/**
- * Return the request parameters OGNL TypeConverter. This method
+ * Return the request parameters OGNL TypeConverter. This method
* performs a lazy load of the TypeConverter object, using the classname
- * defined in the Servlet init parameter type-converter-class,
+ * defined in the Servlet init parameter type-converter-class,
* if this parameter is not defined this method will return a
* {@link RequestTypeConverter} instance.
*
- * @return the request parameters OGNL TypeConverter
+ * @return the request parameters OGNL TypeConverter
* @throws RuntimeException if the TypeConverter instance could not be created
*/
@SuppressWarnings("unchecked")
@@ -1643,10 +1644,10 @@ protected TypeConverter getTypeConverter() throws RuntimeException {
/**
* Creates and returns a new Context instance for this path, class and
* request.
- *
+ *
* The default implementation of this method simply creates a new Context
* instance.
- *
+ *
* Subclasses can override this method to provide a custom Context.
*
* @param request the page request
@@ -1686,13 +1687,13 @@ protected ControlRegistry createControlRegistry() {
/**
* Creates and returns a new ErrorPage instance.
- *
- * This method creates the custom page as specified in click.xml,
+ *
+ * This method creates the custom page as specified in click.xml,
* otherwise the default ErrorPage instance.
- *
+ *
* Subclasses can override this method to provide custom ErrorPages tailored
* for specific exceptions.
- *
+ *
* Note you can safely use {@link Context} in this
* method.
*
@@ -1719,7 +1720,7 @@ protected ConfigService getConfigService() {
/**
* Return a new Page instance for the given path. The path must start with
- * a "/".
+ * a "/".
*
* @param path the path which maps to a Page class
* @param request the Page request
@@ -1927,15 +1928,15 @@ protected boolean processAjaxTargetControls(Context context,
/**
* Provides an Ajax exception handler. Exceptions are wrapped inside a
- * div element and streamed back to the browser. The response status
+ * div element and streamed back to the browser. The response status
* is set to an {@link jakarta.servlet.http.HttpServletResponse#SC_INTERNAL_SERVER_ERROR HTTP 500 error}
* which allows the JavaScript that initiated the Ajax request to handle
* the error as appropriate.
- *
- * If Click is running in development modes the exception stackTrace
- * will be rendered, in production modes an error message is
+ *
+ * If Click is running in development modes the exception stackTrace
+ * will be rendered, in production modes an error message is
* rendered.
- *
+ *
* Below is an example error response:
*
*
@@ -1989,10 +1990,10 @@ protected void handleAjaxException(HttpServletRequest request,
// ------------------------------------------------ Package Private Methods
/**
- * Return the OGNL MemberAccess. This method performs a lazy load
+ * Return the OGNL MemberAccess. This method performs a lazy load
* of the MemberAccess object, using a {@link DefaultMemberAccess} instance.
*
- * @return the OGNL MemberAccess
+ * @return the OGNL MemberAccess
*/
MemberAccess getMemberAccess() {
if (memberAccess == null) {
@@ -2023,10 +2024,10 @@ ConfigService createConfigService(ServletContext servletContext)
}
/**
- * Initialize the Click application ConfigService instance and bind
+ * Initialize the Click application ConfigService instance and bind
* it as a ServletContext attribute using the key
- * "org.apache.click.service.ConfigService".
- *
+ * "org.apache.click.service.ConfigService".
+ *
* This method will use the configuration service class specified by the
* {@link #CONFIG_SERVICE_CLASS} parameter, otherwise it will create a
* {@link org.apache.click.service.XmlConfigService} instance.
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/Context.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/Context.java
index ac6ddbe9b4..7d13127473 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/Context.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/Context.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click;
@@ -51,7 +52,7 @@ public class Context {
// -------------------------------------------------------------- Constants
- /** The user's session Locale key: locale. */
+ /** The user's session Locale key: locale. */
public static final String LOCALE = "locale";
/**
@@ -170,12 +171,12 @@ public static Context getThreadLocalContext() {
* false otherwise. Unlike {@link #getThreadLocalContext()} this method
* can safely be used and will not throw an exception if Context is not
* available on the current thread.
- *
+ *
* This method is very useful inside a {@link Control} constructor which
* might need access to the Context. As Controls could potentially be
* instantiated during Click startup (in order to deploy their resources),
* this check can be used to determine whether Context is available or not.
- *
+ *
* For example:
*
*
@@ -254,7 +255,7 @@ public HttpSession getSession() {
/**
* Return the page resource path from the request. For example:
*
- * http://www.mycorp.com/banking/secure/login.htm -> /secure/login.htm
+ * http://www.mycorp.com/banking/secure/login.htm -> /secure/login.htm
*
* @return the page resource path from the request
*/
@@ -292,18 +293,18 @@ public boolean isGet() {
/**
* Return true is this is an Ajax request, false otherwise.
- *
- * An Ajax request is identified by the presence of the request header
- * or request parameter: "X-Requested-With".
- * "X-Requested-With" is the de-facto standard identifier used by
+ *
+ * An Ajax request is identified by the presence of the request header
+ * or request parameter: "X-Requested-With".
+ * "X-Requested-With" is the de-facto standard identifier used by
* Ajax libraries.
- *
- * Note: incoming requests that contains a request parameter
- * "X-Requested-With" will result in this method returning true, even
- * though the request itself was not initiated through a XmlHttpRequest
+ *
+ * Note: incoming requests that contains a request parameter
+ * "X-Requested-With" will result in this method returning true, even
+ * though the request itself was not initiated through a XmlHttpRequest
* object. This allows one to programmatically enable Ajax requests. A common
* use case for this feature is when uploading files through an IFrame element.
- * By specifying "X-Requested-With" as a request parameter the IFrame
+ * By specifying "X-Requested-With" as a request parameter the IFrame
* request will be handled like a normal Ajax request.
*
* @return true if this is an Ajax request, false otherwise
@@ -360,9 +361,9 @@ public boolean hasRequestParameter(String name) {
/**
* Return the named request parameter. This method supports
- * "multipart/form-data" POST requests and should be used in
- * preference to the HttpServletRequest method
- * getParameter().
+ * "multipart/form-data" POST requests and should be used in
+ * preference to the HttpServletRequest method
+ * getParameter().
*
* @see org.apache.click.control.Form#onProcess()
* @see #isMultipartRequest()
@@ -385,9 +386,9 @@ public String getRequestParameter(String name) {
* Returns an array of String objects containing all of the values the given
* request parameter has, or null if the parameter does not exist.
*
- * @param name a String containing the name of the parameter whose
+ * @param name a String containing the name of the parameter whose
* value is requested
- * @return an array of String objects containing the parameter's values
+ * @return an array of String objects containing the parameter's values
*/
public String[] getRequestParameterValues(String name) {
if (name == null) {
@@ -401,10 +402,10 @@ public String[] getRequestParameterValues(String name) {
/**
* Return the named session attribute, or null if not defined.
- *
+ *
* If the session is not defined this method will return null, and a
* session will not be created.
- *
+ *
* This method supports {@link FlashAttribute} which when accessed are then
* removed from the session.
*
@@ -429,7 +430,7 @@ public Object getSessionAttribute(String name) {
/**
* This method will set the named object in the HttpSession.
- *
+ *
* This method will create a session if one does not already exist.
*
* @param name the storage name for the object in the session
@@ -472,7 +473,7 @@ public boolean hasSession() {
/**
* This method will set the named object as a flash HttpSession object.
- *
+ *
* The flash object will exist in the session until it is accessed once,
* and then removed. Flash objects are typically used to display a message
* once.
@@ -506,7 +507,6 @@ public String getCookieValue(String name) {
/**
* Sets the given cookie value in the servlet response with the path "/".
- *
* @see ClickUtils#setCookie(HttpServletRequest, HttpServletResponse, String, String, int, String)
*
* @param name the cookie name
@@ -539,7 +539,7 @@ public void invalidateCookie(String name) {
/**
* Return a new Page instance for the given path.
- *
+ *
* This method can be used to create a target page for the
* {@link org.apache.click.Page#setForward(org.apache.click.Page)}, for example:
*
@@ -549,7 +549,7 @@ public void invalidateCookie(String name) {
*
* setForward(userEdit);
*
- * The given page path must start with a '/'.
+ * The given page path must start with a '/'.
*
* @param path the Page path as configured in the click.xml file
* @return a new Page object
@@ -569,7 +569,7 @@ public T createPage(String path) {
/**
* Return a new Page instance for the given class.
- *
+ *
* This method can be used to create a target page for the
* {@link org.apache.click.Page#setForward(org.apache.click.Page)}, for example:
*
@@ -601,7 +601,7 @@ public String getPagePath(Class extends Page> pageClass) {
}
/**
- * Return the page Class for the given path.
+ * Return the page Class for the given path.
*
* @param path the page path
* @return the page class for the given path
@@ -614,7 +614,7 @@ public Class extends Page> getPageClass(String path) {
/**
* Return the Click application mode value:
- * ["production", "profile", "development", "debug", "trace"].
+ * ["production", "profile", "development", "debug", "trace"].
*
* @return the application mode value
*/
@@ -624,7 +624,7 @@ public String getApplicationMode() {
/**
* Return the Click application charset or ISO-8859-1 if not is defined.
- *
+ *
* The charset is defined in click.xml through the charset attribute
* on the click-app element.
*
@@ -660,11 +660,11 @@ public Map createMessagesMap(Class> baseClass, String globalRe
}
/**
- * Returns a map of FileItem arrays keyed on request parameter
+ * Returns a map of FileItem arrays keyed on request parameter
* name for "multipart" POST requests (file uploads). Thus each map entry
- * will consist of one or more FileItem objects.
+ * will consist of one or more FileItem objects.
*
- * @return map of FileItem arrays keyed on request parameter name
+ * @return map of FileItem arrays keyed on request parameter name
* for "multipart" POST requests
*/
public Map getFileItemMap() {
@@ -675,7 +675,7 @@ public Map getFileItemMap() {
* Returns the value of a request parameter as a FileItem, for
* "multipart" POST requests (file uploads), or null if the parameter
* is not found.
- *
+ *
* If there were multivalued parameters in the request (ie two or more
* file upload fields with the same name), the first fileItem
* in the array is returned.
@@ -702,14 +702,14 @@ public FileItem getFileItem(String name) {
/**
* Return the users Locale.
- *
+ *
* If the users Locale is stored in their session this will be returned.
* Else if the click-app configuration defines a default Locale this
* value will be returned, otherwise the request's Locale will be returned.
- *
+ *
* To override the default request Locale set the users Locale using the
* {@link #setLocale(Locale)} method.
- *
+ *
* Pages and Controls obtain the users Locale using this method.
*
* @return the users Locale in the session, or if null the request Locale
@@ -733,7 +733,7 @@ public Locale getLocale() {
/**
* This method stores the given Locale in the users session. If the given
* Locale is null, the "locale" attribute will be removed from the session.
- *
+ *
* The Locale object is stored in the session using the {@link #LOCALE}
* key.
*
@@ -760,10 +760,10 @@ public boolean isMultipartRequest() {
/**
* Return a rendered Velocity template and model for the given
* class and model data.
- *
- * This method will merge the class .htm Velocity template and
+ *
+ * This method will merge the class .htm Velocity template and
* model data using the applications Velocity Engine.
- *
+ *
* An example of the class template resolution is provided below:
*
* // Full class name
@@ -800,7 +800,7 @@ public String renderTemplate(Class templateClass, Map model) {
/**
* Return a rendered Velocity template and model data.
- *
+ *
* Example method usage:
*
* public String toString() {
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/Control.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/Control.java
index 96d0c9d548..940ebad6aa 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/Control.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/Control.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click;
@@ -32,22 +33,22 @@
/**
* Provides the interface for Page controls. Controls are also referred to
* as components or widgets.
- *
+ *
* When a Page request event is processed Controls may perform server side event
* processing through their {@link #onProcess()} method. Controls are generally
- * rendered in a Page by calling their toString() method.
- *
+ * rendered in a Page by calling their toString() method.
+ *
* The Control execution sequence is illustrated below:
- *
+ *
*
*
*
HTML HEAD Elements
*
* Control HTML HEAD elements can be included in the Page by overriding the
* {@link #getHeadElements()} method.
- *
+ *
* Below is an example of a custom TextField control specifying that the
- * custom.js file should be included in the HTML HEADer:
+ * custom.js file should be included in the HTML HEADer:
*
*
* public class CustomField extends TextField {
@@ -66,31 +67,31 @@
* ..
* }
*
- *
+ *
* Deploying Resources
*
- * The Click framework uses the Velocity Tools WebappResourceLoader for loading templates.
- * This avoids issues associate with using the Velocity ClasspathResourceLoader and
- * FileResourceLoader on J2EE application servers.
+ * The Click framework uses the Velocity Tools WebappResourceLoader for loading templates.
+ * This avoids issues associate with using the Velocity ClasspathResourceLoader and
+ * FileResourceLoader on J2EE application servers.
* To make preconfigured resources (templates, JavaScript, stylesheets, etc.)
* available to web applications Click automatically deploys configured classpath
- * resources to the /click directory at startup
+ * resources to the /click directory at startup
* (existing files will not be overwritten).
- *
+ *
* Click supports two ways of deploying pre-configured resources. The recommended
* deployment strategy (which also the simplest) relies on packaging resources
- * into a special folder of the JAR, called 'META-INF/resources'. At
+ * into a special folder of the JAR, called 'META-INF/resources'. At
* startup time Click will scan this folder for resources and deploy them to the
* web application. This deployment strategy is the same approach taken by the
* Servlet 3.0 specification. Please see the section
* Deploying Custom Resources
* for more details.
- *
+ *
* An alternative approach to deploying static resources on startup is provided
* by the Control interface through the {@link #onDeploy(ServletContext)} method.
- *
- * Continuing our example, the CustomField control deploys its
- * custom.js file to the /click directory:
+ *
+ * Continuing our example, the CustomField control deploys its
+ * custom.js file to the /click directory:
*
*
* public class CustomField extends TextField {
@@ -102,8 +103,8 @@
* }
* }
*
- * Controls using the onDeploy() method must be registered in the
- * application WEB-INF/click.xml for them to be invoked.
+ * Controls using the onDeploy() method must be registered in the
+ * application WEB-INF/click.xml for them to be invoked.
* For example:
*
*
@@ -118,9 +119,9 @@
* When the Click application starts up it will deploy any control elements
* defined in the following files in sequential order:
*
- * - /click-controls.xml
- *
- /extras-controls.xml
- *
- WEB-INF/click.xml
+ *
/click-controls.xml
+ * /extras-controls.xml
+ * WEB-INF/click.xml
*
*
* Please note {@link org.apache.click.control.AbstractControl} provides
@@ -132,7 +133,7 @@
public interface Control extends Serializable {
/**
- * The global control messages bundle name: click-control.
+ * The global control messages bundle name: click-control.
*/
public static final String CONTROL_MESSAGES = "click-control";
@@ -154,13 +155,13 @@ public interface Control extends Serializable {
* {@link org.apache.click.element.JsScript JsScript},
* {@link org.apache.click.element.CssImport CssImport} and
* {@link org.apache.click.element.CssStyle CssStyle}.
- *
+ *
* Controls can contribute their own list of HEAD elements by implementing
* this method.
- *
+ *
* The recommended approach when implementing this method is to use
- * lazy loading to ensure the HEAD elements are only added
- * once and when needed. For example:
+ * lazy loading to ensure the HEAD elements are only added
+ * once and when needed. For example:
*
*
* public MyControl extends AbstractControl {
@@ -202,13 +203,13 @@ public interface Control extends Serializable {
* One can also add HEAD elements from event handler methods such as
* {@link #onInit()}, {@link #onProcess()}, {@link #onRender()}
* etc.
- *
+ *
* The order in which JS and CSS files are included will be preserved in the
* page.
- *
+ *
* Note: this method must never return null. If no HEAD elements
* are available this method must return an empty {@link java.util.List}.
- *
+ *
* Also note: a common problem when overriding getHeadElements in
* subclasses is forgetting to call super.getHeadElements. Consider
* carefully whether you should call super.getHeadElements or not.
@@ -228,13 +229,13 @@ public interface Control extends Serializable {
/**
* Set the controls event listener.
- *
+ *
* The method signature of the listener is:
* - must have a valid Java method name
* - takes no arguments
* - returns a boolean value
*
- *
+ *
* An example event listener method would be:
*
*
@@ -253,9 +254,9 @@ public interface Control extends Serializable {
public void setListener(Object listener, String method);
/**
- * Return the localized messages Map of the Control.
+ * Return the localized messages Map of the Control.
*
- * @return the localized messages Map of the Control
+ * @return the localized messages Map of the Control
*/
public Map getMessages();
@@ -270,7 +271,7 @@ public interface Control extends Serializable {
/**
* Set the name of the Control. Each control name must be unique in the
* containing Page model or the parent container.
- *
+ *
* Please note: changing the name of a Control after it has been
* added to its parent container is undefined. Thus it is best not
* to change the name of a Control once its been set.
@@ -298,7 +299,7 @@ public interface Control extends Serializable {
* The on deploy event handler, which provides classes the
* opportunity to deploy static resources when the Click application is
* initialized.
- *
+ *
* For example:
*
* public void onDeploy(ServletContext servletContext) throws IOException {
@@ -308,7 +309,7 @@ public interface Control extends Serializable {
* Please note: a common problem when overriding onDeploy in
* subclasses is forgetting to call super.onDeploy. Consider
* carefully whether you should call super.onDeploy or not.
- *
+ *
* Click also supports an alternative deployment strategy which relies on
* packaging resource (stylesheets, JavaScript, images etc.) following a
* specific convention. See the section
@@ -322,11 +323,11 @@ public interface Control extends Serializable {
/**
* The on initialize event handler. Each control will be initialized
* before its {@link #onProcess()} method is called.
- *
+ *
* {@link org.apache.click.control.Container} implementations should recursively
* invoke the onInit method on each of their child controls ensuring that
* all controls receive this event.
- *
+ *
* Please note: a common problem when overriding onInit in
* subclasses is forgetting to call super.onInit(). Consider
* carefully whether you should call super.onInit() or not,
@@ -338,20 +339,20 @@ public interface Control extends Serializable {
/**
* The on process event handler. Each control will be processed when the
* Page is requested.
- *
+ *
* ClickServlet will process all Page controls in the order they were added
* to the Page.
- *
+ *
* {@link org.apache.click.control.Container} implementations should recursively
* invoke the onProcess method on each of their child controls ensuring that
* all controls receive this event. However when a control onProcess method
* return false, no other controls onProcess method should be invoked.
- *
+ *
* When a control is processed it should return true if the Page should
* continue event processing, or false if no other controls should be
* processed and the {@link org.apache.click.Page#onGet()} or {@link Page#onPost()} methods
* should not be invoked.
- *
+ *
* Please note: a common problem when overriding onProcess in
* subclasses is forgetting to call super.onProcess(). Consider
* carefully whether you should call super.onProcess() or not,
@@ -365,16 +366,16 @@ public interface Control extends Serializable {
/**
* The on render event handler. This event handler is invoked prior to the
* control being rendered, and is useful for providing pre rendering logic.
- *
+ *
* The on render method is typically used to populate tables performing some
* database intensive operation. By putting the intensive operations in the
* on render method they will not be performed if the user navigates away
* to a different page.
- *
+ *
* {@link org.apache.click.control.Container} implementations should recursively
* invoke the onRender method on each of their child controls ensuring that
* all controls receive this event.
- *
+ *
* Please note: a common problem when overriding onRender in
* subclasses is forgetting to call super.onRender(). Consider
* carefully whether you should call super.onRender() or not,
@@ -386,14 +387,14 @@ public interface Control extends Serializable {
/**
* The on destroy request event handler. Control classes should use this
* method to add any resource clean up code.
- *
+ *
* This method is guaranteed to be called before the Page object reference
* goes out of scope and is available for garbage collection.
- *
+ *
* {@link org.apache.click.control.Container} implementations should recursively
* invoke the onDestroy method on each of their child controls ensuring that
* all controls receive this event.
- *
+ *
* Please note: a common problem when overriding onDestroy in
* subclasses is forgetting to call super.onDestroy(). Consider
* carefully whether you should call super.onDestroy() or not,
@@ -406,7 +407,7 @@ public interface Control extends Serializable {
* Render the control's HTML representation to the specified buffer. The
* control's {@link java.lang.Object#toString()} method should delegate the
* rendering to the render method for improved performance.
- *
+ *
* An example implementation:
*
* public class Border extends AbstractContainer {
@@ -436,11 +437,11 @@ public interface Control extends Serializable {
public void render(HtmlStringBuffer buffer);
/**
- * Returns true if this control has any
- * Behaviors registered, false otherwise.
+ * Returns true if this control has any
+ * Behaviors registered, false otherwise.
*
- * @return true if this control has any
- * Behaviors registered, false otherwise
+ * @return true if this control has any
+ * Behaviors registered, false otherwise
*/
public boolean hasBehaviors();
@@ -452,22 +453,22 @@ public interface Control extends Serializable {
public Set getBehaviors();
/**
- * Returns true if this control is an Ajax target, false
+ * Returns true if this control is an Ajax target, false
* otherwise.
- *
+ *
* In order for a Control to be considered as an Ajax target it must be
* registered through {@link org.apache.click.ControlRegistry#registerAjaxTarget(org.apache.click.Control) ControlRegistry.registerAjaxTarget}.
- *
+ *
* When the Click handles an Ajax request it iterates the Controls
* registered with the {@link org.apache.click.ControlRegistry ControlRegistry}
* and checks if one of them is the Ajax target by calling
- * {@link #isAjaxTarget(org.openidentityplatform.openam.click.Context) isAjaxTarget}. If isAjaxTarget
+ * {@link #isAjaxTarget(org.openidentityplatform.openam.click.Context) isAjaxTarget}. If isAjaxTarget
* returns true, Click will process that Control's {@link #getBehaviors() behaviors}.
- *
+ *
* Please note: there can only be one target control, so the first
* Control that is identified as the Ajax target will be processed, the other
* controls will be skipped.
- *
+ *
* The most common way to check whether a Control is the Ajax target is to
* check if its {@link #getId ID} is available as a request parameter:
*
@@ -486,10 +487,10 @@ public interface Control extends Serializable {
* ID attribute, as that would lead to duplicate IDs, which isn't allowed by
* the HTML specification. Control implementations has to cater for how the
* control will be targeted. In the case of ActionLink it might check against
- * its id, and if that isn't available check against its name.
+ * its id, and if that isn't available check against its name.
*
* @param context the request context
- * @return true if this control is an Ajax target, false
+ * @return true if this control is an Ajax target, false
* otherwise
*/
public boolean isAjaxTarget(Context context);
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/ControlRegistry.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/ControlRegistry.java
index ecc271bb5e..1195abd8ba 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/ControlRegistry.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/ControlRegistry.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click;
@@ -32,16 +33,16 @@
/**
* Provides a centralized registry where Controls can be registered and interact
* with the Click runtime.
- *
+ *
* The primary use of the ControlRegistry is for Controls to register themselves
- * as potential targets of Ajax requests
- * (If a control is an Ajax request target, it's onProcess()
+ * as potential targets of Ajax requests
+ * (If a control is an Ajax request target, it's onProcess()
* method is invoked while other controls are not processed).
- *
+ *
* Registering controls as Ajax targets serves a dual purpose. In addition to
* being potential Ajax targets, these controls will have all their Behaviors
* processed by the Click runtime.
- *
+ *
* Thus the ControlRegistry provides the Click runtime with easy access to Controls
* that want to be processed for Ajax requests. It also provides quick access
* to Controls that have Behaviors, and particularly AjaxBehaviors that want to
@@ -139,7 +140,7 @@ public static ControlRegistry getThreadLocalRegistry() {
/**
* Returns true if a ControlRegistry instance is available on the current
* thread, false otherwise.
- *
+ *
* Unlike {@link #getThreadLocalRegistry()} this method can safely be used
* and will not throw an exception if a ControlRegistry is not available on
* the current thread.
@@ -161,7 +162,7 @@ public static boolean hasThreadLocalRegistry() {
* {@link Control#isAjaxTarget(Context)} method returns true.
* Once a target control is identified, Click invokes its
* {@link Control#onProcess()} method.
- *
+ *
* This method serves a dual purpose as all controls registered here
* will also have their Behaviors (if any) processed. Processing
* {@link Behavior Behaviors}
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/Page.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/Page.java
index aa65de9e1d..ec8f2e6d4c 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/Page.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/Page.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click;
@@ -35,7 +36,7 @@
/**
* Provides the Page request event handler class.
- *
+ *
* The Page class plays a central role in Click applications defining how the
* application's pages are processed and rendered. All application pages
* must extend the base Page class, and provide a no arguments constructor.
@@ -71,7 +72,7 @@
* after all the dependencies have been set. This is where you should put
* any "dynamic" page initialization code which depends upon the request or any
* other dependencies.
- *
+ *
* Form and field controls must be fully initialized by the time this method
* has completed.
*
@@ -82,7 +83,7 @@
*
*
* {@link #onGet()} method called for any additional GET related processing.
- *
+ *
* Form and field controls should NOT be created or initialized at this
* point as the control processing stage has already been completed.
*
@@ -90,7 +91,7 @@
* {@link #onRender()} method called for any pre-render processing. This
* method is often use to perform database queries to load information for
* rendering tables.
- *
+ *
* Form and field controls should NOT be created or initialized at this
* point as the control processing stage has already been completed.
*
@@ -109,12 +110,12 @@
* For POST requests the default execution path is identical, except the
* {@link #onPost()} method is called instead of {@link #onGet()}. The POST
* request page execution sequence is illustrated below:
- *
+ *
*
*
- *
+ *
* A good way to see the page event execution order is to view the log when
- * the application mode is set to trace:
+ * the application mode is set to trace:
*
*
* [Click] [debug] GET http://localhost:8080/quickstart/home.htm
@@ -145,12 +146,12 @@ public class Page implements Serializable {
private static final long serialVersionUID = 1L;
/**
- * The global page messages bundle name: click-page.
+ * The global page messages bundle name: click-page.
*/
public static final String PAGE_MESSAGES = "click-page";
/**
- * The Page action request parameter: "pageAction".
+ * The Page action request parameter: "pageAction".
*/
public final static String PAGE_ACTION = "pageAction";
@@ -217,17 +218,17 @@ public class Page implements Serializable {
* The on Security Check event handler. This event handler is invoked after
* the pages constructor has been called and all the page properties have
* been set.
- *
+ *
* Security check provides the Page an opportunity to check the users
* security credentials before processing the Page.
- *
+ *
* If security check returns true the Page is processed as
* normal. If the method returns then no other event handlers are invoked
- * (except onDestroy() and no page controls are processed.
- *
+ * (except onDestroy() and no page controls are processed.
+ *
* If the method returns false, the forward or redirect property should be
* set to send the request to another Page.
- *
+ *
* By default this method returns true, subclass may override this method
* to provide their security authorization/authentication mechanism.
*
@@ -240,35 +241,35 @@ public boolean onSecurityCheck() {
/**
* The on Initialization event handler. This event handler is invoked after
* the {@link #onInit()} method has been called.
- *
+ *
* Subclasses should place any initialization code which has dependencies
* on the context or other properties in this method. Generally light
* weight initialization code should be placed in the Pages constructor.
- *
+ *
* Time consuming operations such as fetching the results of a database
* query should not be placed in this method. These operations should be
* performed in the {@link #onRender()}, {@link #onGet()} or
* {@link #onPost()} methods so that other event handlers may take
* alternative execution paths without performing these expensive operations.
- *
+ *
* Please Note however the qualifier for the previous statement is
* that all form and field controls must be fully initialized before they
- * are processed, which is after the onInit() method has
- * completed. After this point their onProcess() methods will be
- * invoked by the ClickServlet.
- *
+ * are processed, which is after the onInit() method has
+ * completed. After this point their onProcess() methods will be
+ * invoked by the ClickServlet.
+ *
* Select controls in particular must have their option list values populated
* before the form is processed otherwise field validations cannot be performed.
- *
+ *
* For initializing page controls the best practice is to place all the
* control creation code in the pages constructor, and only place any
- * initialization code in the onInit() method which has an external
+ * initialization code in the onInit() method which has an external
* dependency to the context or some other object. By following this practice
* it is easy to see what code is "design time" initialization code and what
* is "runtime initialization code".
- *
- * When subclassing pages which also use the onInit() method is
- * is critical you call the super.onInit() method first, for
+ *
+ * When subclassing pages which also use the onInit() method is
+ * is critical you call the super.onInit() method first, for
* example:
*
* public void onInit() {
@@ -284,11 +285,11 @@ public void onInit() {
/**
* The on Get request event handler. This event handler is invoked if the
* HTTP request method is "GET".
- *
+ *
* The event handler is invoked after {@link #onSecurityCheck()} has been
* called and all the Page {@link #controls} have been processed. If either
* the security check or one of the controls cancels continued event
- * processing the onGet() method will not be invoked.
+ * processing the onGet() method will not be invoked.
*
*
Important Note
*
@@ -304,11 +305,11 @@ public void onGet() {
/**
* The on Post request event handler. This event handler is invoked if the
* HTTP request method is "POST".
- *
+ *
* The event handler is invoked after {@link #onSecurityCheck()} has been
* called and all the Page {@link #controls} have been processed. If either
* the security check or one of the controls cancels continued event
- * processing the onPost() method will not be invoked.
+ * processing the onPost() method will not be invoked.
*
*
Important Note
*
@@ -324,17 +325,17 @@ public void onPost() {
/**
* The on render event handler. This event handler is invoked prior to the
* page being rendered.
- *
+ *
* This method will not be invoked if either the security check or one of
* the controls cancels continued event processing.
- *
+ *
* The on render method is typically used to populate tables performing some
* database intensive operation. By putting the intensive operations in the
* on render method they will not be performed if the user navigates away
* to a different page.
- *
- * If you have code which you are using in both the onGet() and
- * onPost() methods, use the onRender() method instead.
+ *
+ * If you have code which you are using in both the onGet() and
+ * onPost() methods, use the onRender() method instead.
*
*
Important Note
*
@@ -350,7 +351,7 @@ public void onRender() {
/**
* The on Destroy request event handler. Subclasses may override this method
* to add any resource clean up code.
- *
+ *
* This method is guaranteed to be called before the Page object reference
* goes out of scope and is available for garbage collection.
*/
@@ -363,7 +364,7 @@ public void onDestroy() {
* Add the control to the page. The control will be added to the page model
* using the control name as the key. The Controls parent property will
* also be set to the page instance.
- *
+ *
* Please note: if the page contains a control with the same name as
* the given control, that control will be replaced by the given control.
* If a control has no name defined it cannot be replaced.
@@ -450,12 +451,12 @@ public Context getContext() {
/**
* Return the HTTP response content type. By default this method returns
- * "text/html".
- *
+ * "text/html".
+ *
* If the request specifies a character encoding via
* If {@link jakarta.servlet.ServletRequest#getCharacterEncoding()}
- * then this method will return "text/html; charset=encoding".
- *
+ * then this method will return "text/html; charset=encoding".
+ *
* The ClickServlet uses the pages content type for setting the
* HttpServletResponse content type.
*
@@ -474,9 +475,9 @@ public String getContentType() {
/**
* Return the Velocity template formatter object.
- *
+ *
* The ClickServlet adds the format object to the Velocity context using
- * the key "format" so that it can be used in the page template.
+ * the key "format" so that it can be used in the page template.
*
* @return the Velocity template formatter object
*/
@@ -495,12 +496,12 @@ public void setFormat(Format value) {
/**
* Return the path to forward the request to.
- *
+ *
* If the {@link #forward} property is not null it will be used to forward
* the request to in preference to rendering the template defined by the
* {@link #path} property. The request is forwarded using the
* RequestDispatcher.
- *
+ *
* See also {@link #getPath()}, {@link #getRedirect()}
*
* @return the path to forward the request to
@@ -511,18 +512,18 @@ public String getForward() {
/**
* Set the path to forward the request to.
- *
+ *
* If the {@link #forward} property is not null it will be used to forward
* the request to in preference to rendering the template defined by the
* {@link #path} property. The request is forwarded using the Servlet
* RequestDispatcher.
- *
+ *
* If forward paths start with a "/"
* character the forward path is
* relative to web applications root context, otherwise the path is
* relative to the requests current location.
- *
- * For example given a web application deployed to context mycorp
+ *
+ * For example given a web application deployed to context mycorp
* with the pages:
*
* /index.htm
@@ -530,17 +531,17 @@ public String getForward() {
* /customer/details.htm
* /customer/management/add-customer.htm
*
- * To forward to the customer search.htm page from
+ * To forward to the customer search.htm page from
* the web app root you could set forward as
- * setForward()
- * or setForward().
- *
- * If a user was currently viewing the add-customer.htm
+ * setForward()
+ * or setForward().
+ *
+ * If a user was currently viewing the add-customer.htm
* to forward to customer details.htm you could
* set forward as
- * setForward()
- * or setForward().
- *
+ * setForward()
+ * or setForward().
+ *
* See also {@link #setPath(String)}, {@link #setRedirect(String)}
*
* @param value the path to forward the request to
@@ -651,13 +652,13 @@ public final String getHtmlImports() {
* {@link org.apache.click.element.JsScript JsScript},
* {@link org.apache.click.element.CssImport CssImport} and
* {@link org.apache.click.element.CssStyle CssStyle}.
- *
+ *
* Pages can contribute their own list of HEAD elements by overriding
* this method.
- *
+ *
* The recommended approach when overriding this method is to use
- * lazy loading to ensure the HEAD elements are only added
- * once and when needed. For example:
+ * lazy loading to ensure the HEAD elements are only added
+ * once and when needed. For example:
*
*
* public MyPage extends Page {
@@ -698,13 +699,13 @@ public final String getHtmlImports() {
* One can also add HEAD elements from event handler methods such as
* {@link #onInit()}, {@link #onGet()}, {@link #onPost()}, {@link #onRender()}
* etc.
- *
+ *
* The order in which JS and CSS files are included will be preserved in the
* page.
- *
+ *
* Note: this method must never return null. If no HEAD elements
* are available this method must return an empty {@link java.util.List}.
- *
+ *
* Also note: a common problem when overriding getHeadElements in
* subclasses is forgetting to call super.getHeadElements. Consider
* carefully whether you should call super.getHeadElements or not.
@@ -722,11 +723,11 @@ public List getHeadElements() {
* Return the localized Page resource message for the given resource
* name or null if not found. The resource message returned will use the
* Locale obtained from the Context.
- *
+ *
* Pages can define text properties files to store localized messages. These
* properties files must be stored on the Page class path with a name
* matching the class name. For example:
- *
+ *
* The page class:
*
* package com.mycorp.pages;
@@ -746,13 +747,13 @@ public List getHeadElements() {
*
* /click-page.properties
*
- * To define global page messages simply add click-page.properties
+ * To define global page messages simply add click-page.properties
* file to your application's class path. Message defined in this properties
* file will be available to all of your application pages.
- *
+ *
* Note messages in your page class properties file will override any
- * messages in the global click-page.properties file.
- *
+ * messages in the global click-page.properties file.
+ *
* Page messages can be accessed directly in the page template using
* the $messages reference. For examples:
*
@@ -777,7 +778,7 @@ public String getMessage(String name) {
* Return the formatted page message for the given resource name and
* message format arguments or null if no message was found. The resource
* message returned will use the Locale obtained from the Context.
- *
+ *
* {@link #getMessage(java.lang.String)} is invoked to retrieve the message
* for the specified name.
*
@@ -816,7 +817,7 @@ public Map getMessages() {
/**
* Add the named object value to the Pages model map.
- *
+ *
* Please note: if the Page contains an object with a matching name,
* that object will be replaced by the given value.
*
@@ -852,20 +853,20 @@ public Map getModel() {
/**
* Return the Page header imports.
- *
+ *
* PageImports are used define the CSS and JavaScript imports and blocks
* to be included in the page template.
- *
+ *
* The PageImports object will be included in the Page template when the
* following methods are invoked:
*
* - {@link ClickServlet#createTemplateModel(Page)} - for template pages
* - {@link ClickServlet#setRequestAttributes(Page)} - for JSP pages
*
- *
+ *
* If you need to tailor the page imports rendered, override this method
* and modify the PageImports object returned.
- *
+ *
* If you need to create a custom PageImports, override the method
* {@link ClickServlet#createPageImports(org.openidentityplatform.openam.click.Page)}
*
@@ -879,21 +880,21 @@ public PageImports getPageImports() {
/**
* Set the Page header imports.
- *
+ *
* PageImports are used define the CSS and JavaScript imports and blocks
* to be included in the page template.
- *
+ *
* The PageImports references will be included in the Page model when the
* following methods are invoked:
*
* - {@link ClickServlet#createTemplateModel(Page)} - for template pages
* - {@link ClickServlet#setRequestAttributes(Page)} - for JSP pages
*
- *
+ *
* If you need to tailor the page imports rendered, override the
* {@link #getPageImports()} method and modify the PageImports object
* returned.
- *
+ *
* If you need to create a custom PageImports, override the method
* {@link ClickServlet#createPageImports(org.openidentityplatform.openam.click.Page)}
*
@@ -907,11 +908,11 @@ public void setPageImports(PageImports pageImports) {
/**
* Return the path of the Template or JSP to render.
- *
- * If this method returns null, Click will not perform any rendering.
+ *
+ * If this method returns null, Click will not perform any rendering.
* This is useful when you want to stream or write directly to the
* HttpServletResponse.
- *
+ *
* See also {@link #getForward()}, {@link #getRedirect()}
*
* @return the path of the Template or JSP to render
@@ -922,13 +923,12 @@ public String getPath() {
/**
* Set the path of the Template or JSP to render.
- *
+ *
* By default Click will set the path to the requested page url. Meaning
- * if the url /edit-customer.htm is requested, path will be set
- * to /edit-customer.htm.
- *
+ * if the url /edit-customer.htm is requested, path will be set
+ * to /edit-customer.htm.
+ *
* Here is an example if you want to change the path to a different Template:
- *
*
* public void onGet() {
* setPath("/some-other-template.htm");
@@ -938,11 +938,11 @@ public String getPath() {
* public void onGet() {
* setPath("/some-other-jsp.jsp");
* }
- *
- * If path is set to null, Click will not perform any rendering.
+ *
+ * If path is set to null, Click will not perform any rendering.
* This is useful when you want to stream or write directly to the
* HttpServletResponse.
- *
+ *
* See also {@link #setForward(String)}, {@link #setRedirect(String)}
*
* @param value the path of the Template or JSP to render
@@ -953,12 +953,12 @@ public void setPath(String value) {
/**
* Return the path to redirect the request to.
- *
+ *
* If the {@link #redirect} property is not null it will be used to redirect
* the request in preference to {@link #forward} or {@link #path} properties.
* The request is redirected to using the HttpServletResponse.setRedirect()
* method.
- *
+ *
* See also {@link #getForward()}, {@link #getPath()}
*
* @return the path to redirect the request to
@@ -984,17 +984,17 @@ public boolean isStateful() {
/**
* Set whether the page is stateful and should be saved in the users
* HttpSession between requests.
- *
+ *
* Click will synchronize on the page instance. This ensures that if
* multiple requests arrive from the same user for the page, only one
* request can access the page at a time.
- *
+ *
* Stateful pages are stored in the HttpSession using the key
- * page.getClass().getName().
- *
+ * page.getClass().getName().
+ *
* It is worth noting that Click checks a Page's stateful property after
* each request. Thus it becomes possible to enable a stateful Page for a
- * number of requests and then setting it to false again at which
+ * number of requests and then setting it to false again at which
* point Click will remove the Page from the HttpSession, freeing up memory
* for the server.
*
@@ -1027,15 +1027,15 @@ public boolean isIncludeControlHeadElements() {
/**
* Set whether the Control head elements should be included in the page
* template.
- *
- * By setting this value to false, Click won't include Control's
+ *
+ * By setting this value to false, Click won't include Control's
* {@link #getHeadElements() head elements}, however the Page head elements
* will still be included.
- *
+ *
* This allows one to create a single JavaScript and CSS resource file for
* the entire Page which increases performance, since the browser only has
* to load one resource, instead of multiple resources.
- *
+ *
* Below is an example:
*
*
@@ -1077,43 +1077,43 @@ public void setIncludeControlHeadElements(boolean includeControlHeadElements) {
/**
* Set the location to redirect the request to.
- *
+ *
* If the {@link #redirect} property is not null it will be used to redirect
* the request in preference to the {@link #forward} and {@link #path}
* properties. The request is redirected using the HttpServletResponse.setRedirect()
* method.
- *
- * If the redirect location begins with a "/"
+ *
+ * If the redirect location begins with a "/"
* character the redirect location will be prefixed with the web applications
- * context path. Note if the given location is already prefixed
- * with the context path, Click won't add it a second time.
- *
+ * context path. Note if the given location is already prefixed
+ * with the context path, Click won't add it a second time.
+ *
* For example if an application is deployed to the context
- * "mycorp" calling
- * setRedirect()
+ * "mycorp" calling
+ * setRedirect()
* will redirect the request to:
- * "/mycorp/customer/details.htm"
- *
- * If the redirect location does not begin with a "/"
+ * "/mycorp/customer/details.htm"
+ *
+ * If the redirect location does not begin with a "/"
* character the redirect location will be used as specified. Thus if the
- * location is http://somehost.com/myapp/customer.jsp,
+ * location is http://somehost.com/myapp/customer.jsp,
* Click will redirect to that location.
- *
+ *
* JSP note: when redirecting to a JSP template keep in mind that the
* JSP template won't be processed by Click, as ClickServlet is mapped to
* *.htm. Instead JSP templates are processed by the Servlet
* container JSP engine.
- *
+ *
* So if you have a situation where a Page Class
* () is mapped to the JSP
* () and you want to redirect to
* Customer.class, you could either redirect to
* () or
* use the alternative redirect utility {@link #setRedirect(java.lang.Class)}.
- *
+ *
* Please note that Click will url encode the location by invoking
- * response.encodeRedirectURL(location) before redirecting.
- *
+ * response.encodeRedirectURL(location) before redirecting.
+ *
* See also {@link #setRedirect(java.lang.String, java.util.Map)},
* {@link #setForward(String)}, {@link #setPath(String)}
*
@@ -1139,7 +1139,7 @@ public void setRedirect(Class extends Page> pageClass) {
/**
* Set the request to redirect to the given location and append
* the map of request parameters to the location URL.
- *
+ *
* The map keys will be used as the request parameter names and the map
* values will be used as the request parameter values. For example:
*
@@ -1239,7 +1239,7 @@ public void setRedirect(String location, Map params) {
/**
* Set the request to redirect to the given page class and and append
* the map of request parameters to the page URL.
- *
+ *
* The map keys will be used as the request parameter names and the map
* values will be used as the request parameter values.
*
@@ -1268,7 +1268,7 @@ public void setRedirect(Class extends Page> pageClass,
/**
* Return the path of the page border template to render, by default this
* method returns {@link #getPath()}.
- *
+ *
* Pages can override this method to return an alternative border page
* template. This is very useful when implementing an standardized look and
* feel for a web site. The example below provides a BorderedPage base Page
@@ -1314,7 +1314,7 @@ public String getTemplate() {
/**
* Set the page border template path.
- *
+ *
* Note: if this value is not set, {@link #getTemplate()} will default
* to {@link #getPath()}.
*
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/PageInterceptor.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/PageInterceptor.java
index 42b4829629..ca145933a6 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/PageInterceptor.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/PageInterceptor.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click;
@@ -22,7 +23,7 @@
* Provides a Page life cycle interceptor. Classes implementing this interface
* can be used to listen for key page life cycle events and abort further page
* processing if required.
- *
+ *
* PageInterceptors can be used for many different purposes including:
*
* - enforcing application wide page security policies
@@ -31,37 +32,37 @@
*
*
* A Click application can define multiple page interceptors that are invoked in
- * the order in which they are returned by the ConfigService.
+ * the order in which they are returned by the ConfigService.
*
- * Scope
+ * Scope
*
* Page interceptors can be defined with a request level scope, whereby a new
* page interceptor will be created with each page request providing a thread
* safe programming model.
- *
+ *
* Please note, as new interceptor instances are created with each request, care
* should be taken to ensure that these objects are light weight and do not
* introduce a performance bottleneck into your application.
- *
+ *
* Alternatively, page interceptors can be defined with application level scope
* whereby a single instance is created for the application and is used for
* all requests.
- *
+ *
* Note application scope interceptors are more efficient that request scope
* interceptors, but you are responsible for ensuring that they are thread safe
* and support reentrant method invocations as multiple page requests are
* processed at the same time.
*
- *
Configuration
+ * Configuration
*
- * Application PageInterceptors are configured in the click.xml
+ * Application PageInterceptors are configured in the click.xml
* configuration file. PageInterceptors must support construction using a
* no-args public constructor.
- *
+ *
* Page interceptors can have multiple properties configured with their XML
* definition which are set after the constructor has been called. Properties
* are set using OGNL via {@link org.apache.click.util.PropertyUtils}.
- *
+ *
* An example configuration is provided below:
*
*
@@ -73,7 +74,7 @@
* The default scope for page interceptors is "request", but this can be configured
* as "application" as is done in the example configuration above.
*
- * Example
+ * Example
*
*
* public class SecurityInterceptor implements PageInterceptor {
@@ -93,7 +94,7 @@
*
* // TODO: user context check.
*
- * if (authentication != null && authentication.required()) {
+ * if (authentication != null && authentication.required()) {
* sendRedirect(getNotAuthenticatedPath(), context);
* return false;
* }
@@ -197,11 +198,11 @@ public interface PageInterceptor {
* Provides a post page object creation interceptor method, which is passed
* the instance of the newly created page. This interceptor method is called
* before the page {@link Page#onSecurityCheck()} method is invoked.
- *
+ *
* If this method returns true then the normal page processing is performed,
* otherwise if this method returns false the request is considered to have
* been handled.
- *
+ *
* Please note the page {@link Page#onDestroy()} method will still be invoked.
*
* @param page the newly instantiated page instance
@@ -213,11 +214,11 @@ public interface PageInterceptor {
/**
* Provides a page interceptor before response method. This method is invoked
* prior to the page redirect, forward or rendering phase.
- *
+ *
* If this method returns true then the normal page processing is performed,
* otherwise if this method returns false request is considered to have been
* handled.
- *
+ *
* Please note the page {@link Page#onDestroy()} method will still be invoked.
*
* @param page the newly instantiated page instance
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/ajax/AjaxBehavior.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/ajax/AjaxBehavior.java
index fac9f69b4e..6b6c64f315 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/ajax/AjaxBehavior.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/ajax/AjaxBehavior.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.ajax;
@@ -28,16 +29,16 @@
/**
* AjaxBehavior extends the basic Behavior functionality to allow Controls to
* handle and process incoming Ajax requests.
- *
+ *
* To handle an Ajax request, AjaxBehavior exposes the listener method:
* {@link #onAction(org.openidentityplatform.openam.click.Control) onAction}.
- * The onAction method returns an ActionResult that is rendered back
+ * The onAction method returns an ActionResult that is rendered back
* to the browser.
- *
- * Before Click invokes the onAction method it checks whether the request
+ *
+ * Before Click invokes the onAction method it checks whether the request
* is targeted at the AjaxBehavior by invoking the method
* {@link #isAjaxTarget(org.openidentityplatform.openam.click.Context) Behavior.isAjaxTarget()}.
- * Click will only invoke onAction if isAjaxTarget returns true.
+ * Click will only invoke onAction if isAjaxTarget returns true.
*/
public interface AjaxBehavior extends Behavior {
@@ -64,15 +65,15 @@ public interface AjaxBehavior extends Behavior {
/**
* Return true if the behavior is the request target, false otherwise.
- *
+ *
* This method is queried by Click to determine if the behavior's
* {@link #onAction(org.openidentityplatform.openam.click.Control)} method should be called in
* response to a request.
- *
+ *
* By exposing this method through the Behavior interface it provides
* implementers with fine grained control over whether the Behavior's
* {@link #onAction(org.openidentityplatform.openam.click.Control)} method should be invoked or not.
- *
+ *
* Below is an example implementation:
*
*
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/AbstractContainer.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/AbstractContainer.java
index fa553be154..ccda6c98af 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/AbstractContainer.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/AbstractContainer.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.control;
@@ -31,10 +32,10 @@
/**
* Provides a default implementation of the {@link org.openidentityplatform.openam.click.control.Container} interface
* to make it easier for developers to create their own containers.
- *
+ *
* Subclasses can override {@link #getTag()} to return a specific HTML element.
- *
- * The following example shows how to create an HTML div element:
+ *
+ * The following example shows how to create an HTML div element:
*
*
* public class Div extends AbstractContainer {
@@ -80,13 +81,14 @@ public AbstractContainer(String name) {
// Public Methods ---------------------------------------------------------
/**
- * @see org.openidentityplatform.openam.click.control.Container#add(Control).
- *
+ * Adds the given control to the container and returns it.
+ *
* Please note: if the container contains a control with the same name
* as the given control, that control will be
* {@link #replace(Control, Control) replaced}
* by the given control. If a control has no name defined it cannot be replaced.
*
+ * @see org.openidentityplatform.openam.click.control.Container#add(Control)
* @param control the control to add to the container
* @return the control that was added to the container
* @throws IllegalArgumentException if the control is null
@@ -98,12 +100,12 @@ public Control add(Control control) {
/**
* Add the control to the container at the specified index, and return the
* added instance.
- *
+ *
* Please note: if the container contains a control with the same name
* as the given control, that control will be
* {@link #replace(Control, Control) replaced}
* by the given control. If a control has no name defined it cannot be replaced.
- *
+ *
* Also note if the specified control already has a parent assigned,
* it will automatically be removed from that parent and inserted into this
* container.
@@ -118,7 +120,7 @@ public Control add(Control control) {
* and container is the same instance
*
* @throws IndexOutOfBoundsException if index is out of range
- * (index < 0 || index > getControls().size())
+ * (index < 0 || index > getControls().size())
*/
public Control insert(Control control, int index) {
// Check if panel already contains the control
@@ -146,7 +148,7 @@ public Control insert(Control control, int index) {
}
/**
- * @seeorg.openidentityplatform.openam.click.control.Container#remove(Control).
+ * @see org.openidentityplatform.openam.click.control.Container#remove(Control)
*
* @param control the control to remove from the container
* @return true if the control was removed from the container
@@ -181,7 +183,7 @@ public Control replace(Control currentControl, Control newControl) {
}
/**
- * @see org.apache.click.control.Container#getControls().
+ * @see org.apache.click.control.Container#getControls()
*
* @return the sequential list of controls held by the container
*/
@@ -227,7 +229,7 @@ public boolean hasControls() {
/**
* Return the map of controls where each map's key / value pair will consist
* of the control name and instance.
- *
+ *
* Controls added to the container that did not specify a {@link #name},
* will not be included in the returned map.
*
@@ -241,7 +243,7 @@ public Map getControlMap() {
}
/**
- * @see org.openidentityplatform.openam.click.control.AbstractControl#getControlSizeEst().
+ * @see org.openidentityplatform.openam.click.control.AbstractControl#getControlSizeEst()
*
* @return the estimated rendered control size in characters
*/
@@ -261,7 +263,7 @@ public int getControlSizeEst() {
}
/**
- * @see Control#onProcess().
+ * @see Control#onProcess()
*
* @return true to continue Page event processing or false otherwise
*/
@@ -319,10 +321,9 @@ public void onRender() {
/**
* Render the HTML representation of the container and all its child
* controls to the specified buffer.
- *
+ *
* If {@link #getTag()} returns null, this method will render only its
* child controls.
- *
* @see org.openidentityplatform.openam.click.control.AbstractControl#render(HtmlStringBuffer)
*
* @param buffer the specified buffer to render the control's output to
@@ -349,7 +350,7 @@ public void render(HtmlStringBuffer buffer) {
/**
* Returns the HTML representation of this control.
- *
+ *
* This method delegates the rendering to the method
* {@link #render(HtmlStringBuffer)}. The size of buffer
* is determined by {@link #getControlSizeEst()}.
@@ -368,7 +369,7 @@ public String toString() {
// Protected Methods ------------------------------------------------------
/**
- * @see AbstractControl#renderTagEnd(String, HtmlStringBuffer).
+ * @see AbstractControl#renderTagEnd(String, HtmlStringBuffer)
*
* @param tagName the name of the tag to close
* @param buffer the buffer to append the output to
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/AbstractControl.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/AbstractControl.java
index a651f26699..c4a212909c 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/AbstractControl.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/AbstractControl.java
@@ -17,6 +17,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
import java.text.MessageFormat;
@@ -48,13 +49,13 @@
/**
* Provides a default implementation of the {@link Control} interface
* to make it easier for developers to create their own controls.
- *
+ *
* Subclasses are expected to at least override {@link #getTag()}
* to differentiate the control. However some controls do not map cleanly
* to an html tag, in which case you can override
* {@link #render(org.openidentityplatform.openam.click.util.HtmlStringBuffer)} for complete control
* over the output.
- *
+ *
* Below is an example of creating a new control called MyField:
*
* public class MyField extends AbstractControl {
@@ -85,12 +86,12 @@
* }
*
* By overriding {@link #getTag()} one can specify the html tag to render.
- *
+ *
* Overriding {@link #onProcess()} allows one to bind the servlet request
* parameter to MyField value. The {@link #dispatchActionEvent()} method
* registers the listener for this control on the Context. Once the onProcess
* event has finished, all registered listeners will be fired.
- *
+ *
* To view the html rendered by MyField invoke the control's {@link #toString()}
* method:
*
@@ -115,7 +116,7 @@
* Also see {@link org.apache.click.Control} javadoc for an explanation of the
* Control execution sequence.
*
- *
Message Resources and Internationalization (i18n)
+ * Message Resources and Internationalization (i18n)
*
* Controls support a hierarchy of resource bundles for displaying messages.
* These localized messages can be accessed through the methods:
@@ -198,13 +199,13 @@ public AbstractControl(String name) {
/**
* Returns the controls html tag.
- *
+ *
* Subclasses should override this method and return the correct tag.
- *
- * This method returns null by default.
- *
- * Example tags include table, form, a and
- * input.
+ *
+ * This method returns null by default.
+ *
+ * Example tags include table, form, a and
+ * input.
*
* @return this controls html tag
*/
@@ -243,26 +244,26 @@ public void setActionListener(ActionListener listener) {
}
/**
- * Returns true if this control has any
- * Behaviors registered, false otherwise.
+ * Returns true if this control has any
+ * Behaviors registered, false otherwise.
*
- * @return true if this control has any Behaviors registered,
- * false otherwise
+ * @return true if this control has any Behaviors registered,
+ * false otherwise
*/
public boolean hasBehaviors() {
return (behaviors != null && !behaviors.isEmpty());
}
/**
- * Add the given Behavior to the control's Set of
+ * Add the given Behavior to the control's Set of
* {@link #getBehaviors() Behaviors}.
- *
+ *
* In addition, the Control will be registered with the
* {@link org.apache.click.ControlRegistry#registerAjaxTarget(org.apache.click.Control) ControlRegistry}
- * as a potential Ajax target control and to have it's
- * Behaviors processed by the Click runtime.
+ * as a potential Ajax target control and to have it's
+ * Behaviors processed by the Click runtime.
*
- * @param behavior the Behavior to add
+ * @param behavior the Behavior to add
*/
public void addBehavior(Behavior behavior) {
if (behavior == null) {
@@ -278,19 +279,19 @@ public void addBehavior(Behavior behavior) {
}
/**
- * Remove the given Behavior from the Control's Set of
+ * Remove the given Behavior from the Control's Set of
* {@link #getBehaviors() Behaviors}.
*
- * @param behavior the Behavior to remove
+ * @param behavior the Behavior to remove
*/
public void removeBehavior(Behavior behavior) {
getBehaviors().remove(behavior);
}
/**
- * Returns the Set of Behaviors for this control.
+ * Returns the Set of Behaviors for this control.
*
- * @return the Set of Behaviors for this control
+ * @return the Set of Behaviors for this control
*/
public Set getBehaviors() {
if (behaviors == null) {
@@ -300,14 +301,14 @@ public Set getBehaviors() {
}
/**
- * Returns true if this control is an AJAX target, false
+ * Returns true if this control is an AJAX target, false
* otherwise.
- *
+ *
* The control is defined as an Ajax target if the control {@link #getId() ID}
* is send as a request parameter.
*
* @param context the request context
- * @return true if this control is an AJAX target, false
+ * @return true if this control is an AJAX target, false
* otherwise
*/
public boolean isAjaxTarget(Context context) {
@@ -341,7 +342,7 @@ public String getAttribute(String name) {
* Set the control attribute with the given attribute name and value. You would
* generally use attributes if you were creating the entire Control
* programmatically and rendering it with the {@link #toString()} method.
- *
+ *
* For example given the ActionLink:
*
*
@@ -352,7 +353,7 @@ public String getAttribute(String name) {
*
* <a href=".." target="_blank">Add</a>
*
- * Note: for style and class attributes you can
+ * Note: for style and class attributes you can
* also use the methods {@link #setStyle(String, String)} and
* {@link #addStyleClass(String)}.
*
@@ -468,14 +469,14 @@ public void setId(String id) {
* Return the localized message for the given key or null if not found.
* The resource message returned will use the Locale obtained from the
* Context.
- *
+ *
* This method will attempt to lookup the localized message in the
* parent's messages, which resolves to the Page's resource bundle.
- *
+ *
* If the message was not found, this method will attempt to look up the
- * value in the /click-control.properties message properties file,
+ * value in the /click-control.properties message properties file,
* through the method {@link #getMessages()}.
- *
+ *
* If still not found, this method will return null.
*
* @param name the name of the message resource
@@ -501,7 +502,7 @@ public String getMessage(String name) {
* Return the formatted message for the given resource name and message
* format arguments or null if no message was found. The resource
* message returned will use the Locale obtained from the Context.
- *
+ *
* {@link #getMessage(java.lang.String)} is invoked to retrieve the message
* for the specified name.
*
@@ -546,7 +547,7 @@ public Object getParent() {
*
* @param parent the parent of the Control
* @throws IllegalArgumentException if the given parent instance is
- * referencing this object: if (parent == this)
+ * referencing this object: if (parent == this)
*/
public void setParent(Object parent) {
if (parent == this) {
@@ -567,13 +568,13 @@ public boolean onProcess() {
/**
* Set the controls event listener.
- *
+ *
* The method signature of the listener is:
* - must have a valid Java method name
* - takes no arguments
* - returns a boolean value
*
- *
+ *
* An example event listener method would be:
*
*
@@ -679,7 +680,7 @@ public String getStyle(String name) {
/**
* Set the control CSS style name and value pair.
- *
+ *
* For example given the ActionLink:
*
*
@@ -691,7 +692,7 @@ public String getStyle(String name) {
*
* <a href=".." style="color:red;border:1px solid black;">Add</a>
*
- * To remove an existing style, set the value to null.
+ * To remove an existing style, set the value to null.
*
* @param name the CSS style name
* @param value the CSS style value
@@ -781,7 +782,7 @@ public Map getStyles() {
/**
* Add the CSS class attribute. Null values will be ignored.
- *
+ *
* For example given the ActionLink:
*
*
@@ -878,10 +879,9 @@ public void removeStyleClass(String value) {
/**
* Render the control's output to the specified buffer.
- *
+ *
* If {@link #getTag()} returns null, this method will return an empty
* string.
- *
* @see org.apache.click.Control#render(org.apache.click.util.HtmlStringBuffer)
*
* @param buffer the specified buffer to render the control's output to
@@ -896,7 +896,7 @@ public void render(HtmlStringBuffer buffer) {
/**
* Returns the HTML representation of this control.
- *
+ *
* This method delegates the rendering to the method
* {@link #render(org.openidentityplatform.openam.click.util.HtmlStringBuffer)}. The size of buffer
* is determined by {@link #getControlSizeEst()}.
@@ -946,14 +946,14 @@ protected void appendAttributes(HtmlStringBuffer buffer) {
/**
* Render the tag and common attributes including {@link #getId() id},
- * class and style. The {@link #getName() name} attribute
+ * class and style. The {@link #getName() name} attribute
* is not rendered by this control. It is up to subclasses
* whether to render the name attribute or not. Generally only
* {@link org.apache.click.control.Field} controls render the name attribute.
- *
+ *
* Please note: the tag will not be closed by this method. This
* enables callers of this method to append extra attributes as needed.
- *
+ *
* For example the following example:
*
*
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/AbstractLink.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/AbstractLink.java
index e920367086..39bfe235cf 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/AbstractLink.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/AbstractLink.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.control;
@@ -34,9 +35,9 @@
/**
* Provides a Abstract Link control: <a href=""></a>.
- *
+ *
* See also the W3C HTML reference:
- * A Links
*
* @see ActionLink
@@ -53,9 +54,9 @@ public abstract class AbstractLink extends AbstractControl implements Stateful {
/**
* The image src path attribute. If the image src is defined then a
- * <img/> element will rendered inside the anchor link when
+ * <img/> element will rendered inside the anchor link when
* using the AbstractLink {@link #toString()} method.
- *
+ *
* If the image src value is prefixed with '/' then the request context path
* will be prefixed to the src value when rendered by the control.
*/
@@ -90,7 +91,7 @@ public AbstractLink(String name) {
/**
* Create an AbstractLink with no name defined.
- *
+ *
* Please note the control's name must be defined before it is valid.
*/
public AbstractLink() {
@@ -99,7 +100,7 @@ public AbstractLink() {
// Public Attributes ------------------------------------------------------
/**
- * Return the link html tag: a.
+ * Return the link html tag: a.
*
* @see AbstractControl#getTag()
*
@@ -134,7 +135,7 @@ public void setDisabled(boolean disabled) {
/**
* Return the AbstractLink anchor <a> tag href attribute.
* This method will encode the URL with the session ID
- * if required using HttpServletResponse.encodeURL().
+ * if required using HttpServletResponse.encodeURL().
*
* @return the AbstractLink HTML href attribute
*/
@@ -142,12 +143,12 @@ public void setDisabled(boolean disabled) {
/**
* Return the image src path attribute. If the image src is defined then a
- * <img/> element will be rendered inside the anchor link
+ * <img/> element will be rendered inside the anchor link
* when using the AbstractLink {@link #toString()} method.
- *
+ *
* Note: the label will not be rendered in this case (default behavior),
* unless the {@link #setRenderLabelAndImage(boolean)} flag is set to true.
- *
+ *
* If the src value is prefixed with '/' then the request context path will
* be prefixed to the src value when rendered by the control.
*
@@ -161,11 +162,11 @@ public String getImageSrc() {
* Set the image src path attribute. If the src value is prefixed with
* '/' then the request context path will be prefixed to the src value when
* rendered by the control.
- *
- * If the image src is defined then an <img/> element will
+ *
+ * If the image src is defined then an <img/> element will
* be rendered inside the anchor link when using the AbstractLink
* {@link #toString()} method.
- *
+ *
* Note: the label will not be rendered in this case (default behavior),
* unless the {@link #setRenderLabelAndImage(boolean)} flag is set to true.
*
@@ -193,19 +194,19 @@ public String getId() {
/**
* Return the label for the AbstractLink.
- *
+ *
* If the label value is null, this method will attempt to find a
* localized label message in the parent messages using the key:
*
- * getName() + ".label"
+ * getName() + ".label"
*
* If not found then the message will be looked up in the
- * /click-control.properties file using the same key.
+ * /click-control.properties file using the same key.
* If a value still cannot be found then the ActionLink name will be converted
* into a label using the method: {@link ClickUtils#toLabel(String)}
- *
- * For example given a OrderPage with the properties file
- * OrderPage.properties:
+ *
+ * For example given a OrderPage with the properties file
+ * OrderPage.properties:
*
*
* checkout.label=Checkout
@@ -224,7 +225,7 @@ public String getId() {
*
* When a label value is not set, or defined in any properties files, then
* its value will be created from the Fields name.
- *
+ *
* For example given the ActionLink code:
*
*
@@ -235,7 +236,7 @@ public String getId() {
* <a href="..">Delete Item</a>
*
* Note the ActionLink label can include raw HTML to render other elements.
- *
+ *
* For example the configured label:
*
*
@@ -302,7 +303,7 @@ public String getParameter(String name) {
* Set the link parameter with the given parameter name and value. You would
* generally use parameter if you were creating the entire AbstractLink
* programmatically and rendering it with the {@link #toString()} method.
- *
+ *
* For example given the ActionLink:
*
*
@@ -404,15 +405,15 @@ public void setParameters(Map parameters) {
* Defines a link parameter that will have its value bound to a matching
* request parameter. {@link #setParameter(String, Object) setParameter}
* implicitly defines a parameter as well.
- *
+ *
* Please note: parameters need only be defined for Ajax requests.
- * For non-Ajax requests, all incoming request parameters
+ * For non-Ajax requests, all incoming request parameters
* are bound, whether they are defined or not. This behavior may change in a
* future release.
- *
+ *
* Also note: link parameters are bound to request parameters
* during the {@link #onProcess()} event, so link parameters must be defined
- * in the Page constructor or onInit() event.
+ * in the Page constructor or onInit() event.
*
* @param name the name of the parameter to define
*/
@@ -457,17 +458,17 @@ public void setTabIndex(int tabindex) {
/**
* Return the 'title' attribute, or null if not defined. The title
* attribute acts like tooltip message over the link.
- *
+ *
* If the title value is null, this method will attempt to find a
* localized label message in the parent messages using the key:
*
- * getName() + ".title"
+ * getName() + ".title"
*
* If not found then the message will be looked up in the
- * /click-control.properties file using the same key.
- *
- * For examle given a ItemsPage with the properties file
- * ItemPage.properties:
+ * /click-control.properties file using the same key.
+ *
+ * For examle given a ItemsPage with the properties file
+ * ItemPage.properties:
*
*
* edit.label=Edit
@@ -584,10 +585,10 @@ public void setState(Object state) {
* will render the entire anchor link including the tags, the label and
* any attributes, see {@link #setAttribute(String, String)} for an
* example.
- *
- * If the image src is defined then a <img/> element will
+ *
+ * If the image src is defined then a <img/> element will
* rendered inside the anchor link instead of the label property.
- *
+ *
* This method invokes the abstract {@link #getHref()} method.
*
* @see #toString()
@@ -668,7 +669,7 @@ public void removeState(Context context) {
/**
* Restore the link state from the session for the given request context.
- *
+ *
* This method delegates to {@link #setState(Object)} to set the
* link restored state.
*
@@ -683,7 +684,7 @@ public void restoreState(Context context) {
/**
* Save the link state to the session for the given request context.
- *
+ *
* * This method delegates to {@link #getState()} to retrieve the link state
* to save.
*
@@ -728,13 +729,13 @@ protected void renderImgTag(HtmlStringBuffer buffer) {
/**
* Render the given link parameters to the buffer.
- *
+ *
* The parameters will be rendered as URL key/value pairs e.g:
- * "firstname=john&lastname=smith".
- *
+ * "firstname=john&lastname=smith".
+ *
* Multivalued parameters will be rendered with each value sharing the same
- * key e.g: "name=john&name=susan&name=mary".
- *
+ * key e.g: "name=john&name=susan&name=mary".
+ *
* The parameter value will be encoded through
* {@link ClickUtils#encodeUrl(Object, Context)}.
*
@@ -777,8 +778,8 @@ protected void renderParameters(HtmlStringBuffer buffer, Map par
/**
* This method binds the submitted request parameters to the link
* parameters.
- *
- * For non-Ajax requests this method will bind all incoming request
+ *
+ * For non-Ajax requests this method will bind all incoming request
* parameters to the link. For Ajax requests this method will only bind
* the parameters already defined on the link.
*
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/ActionLink.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/ActionLink.java
index c90f5f0423..20d6a15056 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/ActionLink.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/ActionLink.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.control;
@@ -27,19 +28,20 @@
/**
* Provides a Action Link control: <a href=""></a>.
*
- *
+ *
+ * Example
*
- * Action Link
+ * Action Link
*
*
*
* This control can render the "href" URL attribute using
* {@link #getHref()}, or the entire ActionLink anchor tag using
* {@link #toString()}.
- *
+ *
* ActionLink support invoking control listeners.
*
- *
ActionLink Example
+ * ActionLink Example
*
* An example of using ActionLink to call a logout method is illustrated below:
*
@@ -70,7 +72,7 @@
*
* ActionLink can also support a value parameter which is accessible
* using {@link #getValue()}.
- *
+ *
* For example a products table could include rows
* of products, each with a get product details ActionLink and add product
* ActionLink. The ActionLinks include the product's id as a parameter to
@@ -135,7 +137,7 @@
* }
*
* See also the W3C HTML reference:
- * A Links
*
* @see org.apache.click.control.AbstractLink
@@ -147,10 +149,10 @@ public class ActionLink extends AbstractLink {
private static final long serialVersionUID = 1L;
- /** The action link parameter name: actionLink. */
+ /** The action link parameter name: actionLink. */
public static final String ACTION_LINK = "actionLink";
- /** The value parameter name: value. */
+ /** The value parameter name: value. */
public static final String VALUE = "value";
// Instance Variables -----------------------------------------------------
@@ -162,7 +164,7 @@ public class ActionLink extends AbstractLink {
/**
* Create an ActionLink for the given name.
- *
+ *
* Please note the name 'actionLink' is reserved as a control request
* parameter name and cannot be used as the name of the control.
*
@@ -175,7 +177,7 @@ public ActionLink(String name) {
/**
* Create an ActionLink for the given name and label.
- *
+ *
* Please note the name 'actionLink' is reserved as a control request
* parameter name and cannot be used as the name of the control.
*
@@ -210,7 +212,7 @@ public ActionLink(Object listener, String method) {
/**
* Create an ActionLink for the given name, listener object and listener
* method.
- *
+ *
* Please note the name 'actionLink' is reserved as a control request
* parameter name and cannot be used as the name of the control.
*
@@ -234,7 +236,7 @@ public ActionLink(String name, Object listener, String method) {
/**
* Create an ActionLink for the given name, label, listener object and
* listener method.
- *
+ *
* Please note the name 'actionLink' is reserved as a control request
* parameter name and cannot be used as the name of the control.
*
@@ -280,7 +282,7 @@ public boolean isClicked() {
/**
* Return the ActionLink anchor <a> tag href attribute for the
* given value. This method will encode the URL with the session ID
- * if required using HttpServletResponse.encodeURL().
+ * if required using HttpServletResponse.encodeURL().
*
* @param value the ActionLink value parameter
* @return the ActionLink HTML href attribute
@@ -348,7 +350,7 @@ public String getHref() {
/**
* Set the name of the Control. Each control name must be unique in the
* containing Page model or the containing Form.
- *
+ *
* Please note the name 'actionLink' is reserved as a control request
* parameter name and cannot be used as the name of the control.
*
@@ -375,7 +377,7 @@ public void setName(String name) {
* @param parent the parent of the Control
* @throws IllegalStateException if {@link #name} is not defined
* @throws IllegalArgumentException if the given parent instance is
- * referencing this object: if (parent == this)
+ * referencing this object: if (parent == this)
*/
@Override
public void setParent(Object parent) {
@@ -400,10 +402,10 @@ public String getValue() {
}
/**
- * Returns the action link Double value if the action link was
+ * Returns the action link Double value if the action link was
* processed and has a value, or null otherwise.
*
- * @return the action link Double value if the action link was processed
+ * @return the action link Double value if the action link was processed
*
* @throws NumberFormatException if the value cannot be parsed into a Double
*/
@@ -417,10 +419,10 @@ public Double getValueDouble() {
}
/**
- * Returns the ActionLink Integer value if the ActionLink was
+ * Returns the ActionLink Integer value if the ActionLink was
* processed and has a value, or null otherwise.
*
- * @return the ActionLink Integer value if the action link was processed
+ * @return the ActionLink Integer value if the action link was processed
*
* @throws NumberFormatException if the value cannot be parsed into an Integer
*/
@@ -434,10 +436,10 @@ public Integer getValueInteger() {
}
/**
- * Returns the ActionLink Long value if the ActionLink was
+ * Returns the ActionLink Long value if the ActionLink was
* processed and has a value, or null otherwise.
*
- * @return the ActionLink Long value if the action link was processed
+ * @return the ActionLink Long value if the action link was processed
*
* @throws NumberFormatException if the value cannot be parsed into a Long
*/
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Button.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Button.java
index bdf74b6e4b..cd268a8901 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Button.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Button.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.control;
@@ -26,9 +27,10 @@
/**
* Provides a Button control: <input type='button'/>.
*
- *
+ *
+ * Example
*
- *
+ * <input type='button' value='Button'/>
*
*
*
@@ -36,24 +38,24 @@
* perform client side logic. The Button control provides no server side
* processing. If server side processing is required use {@link Submit} instead.
*
- * Button Example
+ * Button Example
*
* The example below adds a back button to a form, which when clicked returns
* to the previous page.
*
*
- * Button backButton = new Button("back", " < Back ");
+ * Button backButton = new Button("back", " < Back ");
* backButton.setOnClick("history.back();");
* backButton.setTitle("Return to previous page");
* form.add(backButton);
*
* HTML output:
*
- * <input type='button' name='back' value=' < Back ' onclick='history.back();'
+ * <input type='button' name='back' value=' < Back ' onclick='history.back();'
* title='Return to previous page'/>
*
* See also W3C HTML reference
- * INPUT
*
* @see Reset
@@ -90,7 +92,7 @@ public Button(String name, String label) {
/**
* Create a button with no name defined.
- *
+ *
* Please note the control's name must be defined before it is valid.
*/
public Button() {
@@ -99,7 +101,7 @@ public Button() {
// Public Attributes ------------------------------------------------------
/**
- * Return the button's html tag: input.
+ * Return the button's html tag: input.
*
* @see org.apache.click.control.AbstractControl#getTag()
*
@@ -133,9 +135,9 @@ public void setOnClick(String value) {
}
/**
- * Return the input type: 'button'.
+ * Return the input type: 'button'.
*
- * @return the input type: 'button'
+ * @return the input type: 'button'
*/
public String getType() {
return "button";
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Column.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Column.java
index a9adbcf431..ac163258ba 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Column.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Column.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.control;
@@ -36,10 +37,12 @@
* Provides the Column table data <td> and table header <th>
* renderer.
*
- *
+ *
+ * Example
*
*
*
+ * Example
*
*
* Id
@@ -65,11 +68,11 @@
*
*
*
- *
+ *
*
* The Column object provide column definitions for the {@link org.apache.click.control.Table} object.
*
- *
Column Options
+ * Column Options
*
* The Column class supports a number of rendering options which include:
*
@@ -80,7 +83,7 @@
* {@link #dataClass} - the CSS class for the table data cell
* {@link #dataStyles} - the CSS styles for the table data cell
* {@link #decorator} - the custom column value renderer
- * {@link #format} - the MessageFormat pattern rendering
+ * {@link #format} - the MessageFormat pattern rendering
* the column value
* {@link #headerClass} - the CSS class for the table header cell
* {@link #headerStyles} - the CSS styles for the table header cell
@@ -89,7 +92,7 @@
* {@link #width} - the table cell width property
*
*
- * Format Pattern
+ * Format Pattern
*
* The {@link #format} property which specifies {@link MessageFormat} pattern
* a is very useful for formatting column values. For example to render
@@ -115,10 +118,10 @@
* Column orderIdColumn = new Column("order.id", "Order ID");
* table.addColumn(orderIdColumn);
*
- * Column Decorators
+ * Column Decorators
*
* The support custom column value rendering you can specify a {@link Decorator}
- * class on columns. The decorator render method is passed the table
+ * class on columns. The decorator render method is passed the table
* row object and the page request Context. Using the table row you can access
* all the column values enabling you to render a compound value composed of
* multiple column values. For example:
@@ -137,7 +140,7 @@
*
* table.addColumn(column);
- * The Context parameter of the decorator render() method enables you to
+ * The Context parameter of the decorator render() method enables you to
* render controls to provide additional functionality. For example:
*
*
@@ -178,19 +181,18 @@
* }
* }
*
- * Internationalization
+ * Internationalization
*
* Column header titles can be localized using the controls parent messages.
* If the column header title value is null, the column will attempt to find a
* localized message in the parent messages using the key:
*
- * getName() + ".headerTitle"
+ * getName() + ".headerTitle"
*
* If not found then the message will be looked up in the
- * /click-control.properties file using the same key.
+ * /click-control.properties file using the same key.
* If a value still cannot be found then the Column name will be converted
* into a header title using the method: {@link ClickUtils#toLabel(String)}.
- *
*
* @see Decorator
* @see org.apache.click.control.Table
@@ -206,7 +208,7 @@ public class Column implements Serializable {
/**
* The automatically hyperlink column URL and email address values flag,
- * default value is false.
+ * default value is false.
*/
protected boolean autolink;
@@ -238,9 +240,9 @@ public class Column implements Serializable {
* The maximum column length. If maxLength is greater than 0 and the column
* data string length is greater than maxLength, the rendered value will be
* truncated with an eclipse(...).
- *
+ *
* Autolinked email or URL values will not be constrained.
- *
+ *
* The default value is 0.
*/
protected int maxLength;
@@ -312,7 +314,7 @@ public Column(String name, String title) {
/**
* Create a Column with no name defined.
- *
+ *
* Please note the control's name must be defined before it is valid.
*/
public Column() {
@@ -334,7 +336,7 @@ public String getAttribute(String name) {
/**
* Set the Column with the given HTML attribute name and value. These
* attributes will be rendered as HTML attributes, for example:
- *
+ *
* If there is an existing named attribute in the Column it will be replaced
* with the new value. If the given attribute value is null, any existing
* attribute will be removed.
@@ -553,15 +555,16 @@ public String getFormat() {
* Column dateColumn = new Column("purchaseDate", "Date");
* dateColumn.setFormat("{0,date,dd MMM yyyy}");
*
- *
MesssageFormat Patterns
+ * MesssageFormat Patterns
*
- *
- *
+ *
+ * Example
+ *
* Format Type
* Format Style
* Subformat Created
- *
- * number
+ *
+ * number
* (none)
* NumberFormat.getInstance(getLocale())
*
@@ -577,7 +580,7 @@ public String getFormat() {
* SubformatPattern
* new DecimalFormat(subformatPattern, new DecimalFormatSymbols(getLocale()))
*
- * date
+ * date
* (none)
* DateFormat.getDateInstance(DateFormat.DEFAULT, getLocale())
*
@@ -596,7 +599,7 @@ public String getFormat() {
* SubformatPattern
* new SimpleDateFormat(subformatPattern, getLocale())
*
- * time
+ * time
* (none)
* DateFormat.getTimeInstance(DateFormat.DEFAULT, getLocale())
*
@@ -615,66 +618,67 @@ public String getFormat() {
* SubformatPattern
* new SimpleDateFormat(subformatPattern, getLocale())
*
- * choice
+ * choice
* SubformatPattern
* new ChoiceFormat(subformatPattern)
*
*
- * DecimalFormat Pattern Characters
+ * DecimalFormat Pattern Characters
*
- *
- *
- * Symbol
- * Location
- * Localized?
- * Meaning
- *
+ *
+ * Example
+ *
+ * Symbol
+ * Location
+ * Localized?
+ * Meaning
+ *
* 0
* Number
* Yes
* Digit
- *
+ *
* #
* Number
* Yes
* Digit, zero shows as absent
- *
+ *
* .
* Number
* Yes
* Decimal separator or monetary decimal separator
- *
+ *
* -
* Number
* Yes
* Minus sign
- *
+ *
* ,
* Number
* Yes
* Grouping separator
- *
+ *
* E
* Number
* Yes
* Separates mantissa and exponent in scientific notation.
* Need not be quoted in prefix or suffix.
- *
+ *
* ;
* Subpattern boundary
* Yes
* Separates positive and negative subpatterns
- *
+ *
* %
* Prefix or suffix
* Yes
* Multiply by 100 and show as percentage
- *
+ *
* \u2030
* Prefix or suffix
* Yes
* Multiply by 1000 and show as per mille
- *
+ *
* ¤ (\u00A4)
* Prefix or suffix
* No
@@ -682,7 +686,7 @@ public String getFormat() {
* doubled, replaced by international currency symbol.
* If present in a pattern, the monetary decimal separator
* is used instead of the decimal separator.
- *
+ *
* '
* Prefix or suffix
* No
@@ -692,20 +696,21 @@ public String getFormat() {
* itself, use two in a row: "# o''clock".
*
*
- * SimpleDateFormat Pattern Characters
+ * SimpleDateFormat Pattern Characters
*
- *
- *
- * Letter
- * Date or Time Component
- * Presentation
- * Examples
+ *
+ * Example
+ *
+ * Letter
+ * Date or Time Component
+ * Presentation
+ * Examples
*
* G
* Era designator
* Text
* AD
- *
+ *
* y
* Year
* Year
@@ -715,7 +720,7 @@ public String getFormat() {
* Month in year
* Month
* July; Jul; 07
- *
+ *
* w
* Week in year
* Number
@@ -725,7 +730,7 @@ public String getFormat() {
* Week in month
* Number
* 2
- *
+ *
* D
* Day in year
* Number
@@ -735,7 +740,7 @@ public String getFormat() {
* Day in month
* Number
* 10
- *
+ *
* F
* Day of week in month
* Number
@@ -745,7 +750,7 @@ public String getFormat() {
* Day in week
* Text
* Tuesday; Tue
- *
+ *
* a
* Am/pm marker
* Text
@@ -755,7 +760,7 @@ public String getFormat() {
* Hour in day (0-23)
* Number
* 0
- *
+ *
* k
* Hour in day (1-24)
* Number
@@ -765,7 +770,7 @@ public String getFormat() {
* Hour in am/pm (0-11)
* Number
* 0
- *
+ *
* h
* Hour in am/pm (1-12)
* Number
@@ -775,7 +780,7 @@ public String getFormat() {
* Minute in hour
* Number
* 30
- *
+ *
* s
* Second in minute
* Number
@@ -785,7 +790,7 @@ public String getFormat() {
* Millisecond
* Number
* 978
- *
+ *
* z
* Time zone
* General time zone
@@ -936,17 +941,16 @@ public Map getHeaderStyles() {
/**
* Return the table header <th> title.
- *
+ *
* If the header title value is null, this method will attempt to find a
* localized message in the parent messages using the key:
*
- * getName() + ".headerTitle"
+ * getName() + ".headerTitle"
*
* If not found then the message will be looked up in the
- * /click-control.properties file using the same key.
+ * /click-control.properties file using the same key.
* If a value still cannot be found then the Column name will be converted
* into a header title using the method: {@link ClickUtils#toLabel(String)}
- *
*
* @return the table header title
*/
@@ -970,8 +974,8 @@ public void setHeaderTitle(String title) {
}
/**
- * Return the Table and Column id appended: "table-column"
- *
+ * Return the Table and Column id appended: "table-column"
+ *
* Use the field the "id" attribute value if defined, or the name otherwise.
*
* @return HTML element identifier attribute "id" value
@@ -1065,9 +1069,9 @@ public Table getTable() {
}
/**
- * Set the Column's the parent Table.
+ * Set the Column's the parent Table.
*
- * @param table Column's parent Table
+ * @param table Column's parent Table
*/
public void setTable(Table table) {
this.table = table;
@@ -1076,9 +1080,9 @@ public void setTable(Table table) {
/**
* Set the column CSS "text-align" style for the header <th> and
* data <td> elements. Valid values include:
- * [left, right, center]
+ * [left, right, center]
*
- * @param align the CSS "text-align" value: [left, right, center]
+ * @param align the CSS "text-align" value: [left, right, center]
*/
public void setTextAlign(String align) {
if (align != null && "middle".equalsIgnoreCase(align)) {
@@ -1114,8 +1118,8 @@ public void setTitleProperty(String property) {
/**
* Set the column CSS "vertical-align" style for the header <th> and
* data <td> elements. Valid values include:
- * [baseline | sub | super | top | text-top | middle | bottom |
- * text-bottom | <percentage> | <length> | inherit]
+ * [baseline | sub | super | top | text-top | middle | bottom |
+ * text-bottom | <percentage> | <length> | inherit]
*
* @param align the CSS "vertical-align" value
*/
@@ -1263,14 +1267,14 @@ public void renderTableHeader(HtmlStringBuffer buffer, Context context) {
/**
* Return the column name property value from the given row object.
- *
- * If the row object is a Map this method will attempt to return
+ *
+ * If the row object is a Map this method will attempt to return
* the map value for the column name. The row map lookup will be performed
* using the property name, if a value is not found the property name in
* uppercase will be used, if a value is still not found the property name
* in lowercase will be used. If a map value is still not found then this
* method will return null.
- *
+ *
* Object property values can also be specified using a path expression.
*
* @param row the row object to obtain the property from
@@ -1283,14 +1287,14 @@ public Object getProperty(Object row) {
/**
* Return the column property value from the given row object and property name.
- *
- * If the row object is a Map this method will attempt to return
+ *
+ * If the row object is a Map this method will attempt to return
* the map value for the column. The row map lookup will be performed using
* the property name, if a value is not found the property name in uppercase
* will be used, if a value is still not found the property name in lowercase
* will be used. If a map value is still not found then this method will
* return null.
- *
+ *
* Object property values can also be specified using a path expression.
*
* @param name the name of the property
@@ -1389,8 +1393,8 @@ protected void renderTableDataContent(Object row, HtmlStringBuffer buffer,
}
/**
- * Render the given table cell value to the buffer as a mailto:
- * or http: hyperlink, or as an ordinary string if the value is
+ * Render the given table cell value to the buffer as a mailto:
+ * or http: hyperlink, or as an ordinary string if the value is
* determined not be linkable.
*
* @param value the table cell value to render
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Container.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Container.java
index c960e6239f..ae7891e8af 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Container.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Container.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.control;
@@ -25,12 +26,12 @@
/**
* Provides the interface for a container which holds a list of child controls.
- *
+ *
* Container extends {@link org.apache.click.Control} and enables the creation of
* nested controls.
- *
+ *
* Container allows one to add, remove and retrieve child controls.
- *
+ *
* Please note {@link AbstractContainer} provides
* a default implementation of the Container interface to make it easier for
* developers to create their own containers.
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Decorator.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Decorator.java
index 275aa8ca16..9db202e42c 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Decorator.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Decorator.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.control;
@@ -23,7 +24,7 @@
/**
* Provides a decorator interface for delegating object rendering.
*
- *
Decorator Example
+ * Decorator Example
*
* The following example illustrates how to render a email hyperlink in a
* email table column.
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Field.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Field.java
index 400beee427..b3b1405ede 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Field.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Field.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.control;
@@ -36,18 +37,18 @@
* rendering of the contained fields. All Form field controls must extend this
* abstract class.
*
- * Field Processing
+ * Field Processing
*
- * Post Requests
+ * Post Requests
*
* When processing POST requests forms typically invoke the {@link #onProcess()}
- * method on all its fields. The Field onProcess() method is used
+ * method on all its fields. The Field onProcess() method is used
* to bind the fields request value, validate the submission and invoke any
- * control listener method. If the onProcess() method returns true
+ * control listener method. If the onProcess() method returns true
* the form will continue processing fields, otherwise the form will abort
* further processing.
- *
- * The body of the Field onProcess() method is detailed below.
+ *
+ * The body of the Field onProcess() method is detailed below.
*
*
* public boolean onProcess() {
@@ -62,7 +63,7 @@
* return true;
* }
*
- * The Field methods called by onProcess() include:
+ * The Field methods called by onProcess() include:
*
*
* - {@link #bindRequestValue()}
@@ -84,31 +85,31 @@
*
*
*
- * Field subclasses generally only have to override the validate()
- * method, and possibly the bindRequestValue() method, to provide their
+ * Field subclasses generally only have to override the validate()
+ * method, and possibly the bindRequestValue() method, to provide their
* own behaviour.
*
- * Get Requests
+ * Get Requests
*
* When processing GET requests a Page's Form will typically perform no
* processing and simply render itself and its Fields.
*
- * Rendering
+ * Rendering
*
* Field subclasses must override the {@link #render(org.openidentityplatform.openam.click.util.HtmlStringBuffer)}
* method to enable themselves to be rendered as HTML. With the increasing use of
* AJAX, Fields should render themselves as valid XHTML, so that they may be parsed
- * correctly and used as the innerHtml in the DOM.
- *
+ * correctly and used as the innerHtml in the DOM.
+ *
* When a Form object renders a Field using autolayout, it renders the
* Field in a table row using the Field's {@link #label} attribute, its
* {@link #error} attribute if defined, and the Fields
* {@link #render(org.openidentityplatform.openam.click.util.HtmlStringBuffer)} method.
- *
+ *
* To assist with rendering valid HTML Field subclasses can use the
* {@link org.apache.click.util.HtmlStringBuffer} class.
*
- *
Message Resources and Internationalization (i18n)
+ * Message Resources and Internationalization (i18n)
*
* Fields support a hierarchy of resource bundles for displaying validation
* error messages and display messages. These localized messages can be accessed
@@ -132,12 +133,12 @@
* {@link #setErrorMessage(String, Object)}
*
*
- *
+ *
* The order in which localized messages resolve are:
*
* - Page scope messages
* - Message lookups are first resolved to the Pages message bundle if it
- * exists. For example a Login page may define the message properties:
+ * exists. For example a
Login page may define the message properties:
*
*
* /com/mycorp/page/Login.properties
@@ -159,7 +160,7 @@
*
* - Control scope messages
* - Next message lookups are resolved to the Control message bundle if it
- * exists. For example a CustomTextField control may define the
+ * exists. For example a
CustomTextField control may define the
* message properties:
*
*
@@ -176,7 +177,7 @@
*
* You can modify these properties by copying this file into your applications
* root class path and editing these properties.
- *
+ *
* Note when customizing the message properties you must include all the
* properties, not just the ones you want to override.
*
@@ -236,7 +237,7 @@ public abstract class Field extends AbstractControl implements Stateful {
protected boolean trim = true;
/**
- * The validate Field value onProcess() invocation flag.
+ * The validate Field value onProcess() invocation flag.
*/
protected Boolean validate;
@@ -281,7 +282,7 @@ public Field(String name, String label) {
* @param parent the parent of the Control
* @throws IllegalStateException if {@link #name} is not defined
* @throws IllegalArgumentException if the given parent instance is
- * referencing this object: if (parent == this)
+ * referencing this object: if (parent == this)
*/
@Override
public void setParent(Object parent) {
@@ -333,18 +334,18 @@ public boolean isDisabled() {
/**
* Set the Field disabled flag. Disabled fields are not processed nor
* validated and their action event is not fired.
- *
+ *
* Important Note: an HTML form POST does not submit disabled fields
* values. Similarly disabled Click fields do not get processed or validated.
- * However, JavaScript is often used to enable fields prior to
+ * However, JavaScript is often used to enable fields prior to
* submission. Click is smart enough to recognize when a field was enabled
* this way by checking if the field has an incoming request parameter.
* If a field is disabled but has an incoming request parameter, Click will
- * "enable" the field and process it.
- *
+ * "enable" the field and process it.
+ *
* Caveat: Unfortunately the above behavior does not apply to
* {@link Checkbox} and {@link Radio} buttons. An HTML form POST for a
- * disabled checkbox/radio is the same as for an unchecked
+ * disabled checkbox/radio is the same as for an unchecked
* checkbox/radio. In neither case is a value submitted to the server and
* Click cannot make the distinction whether the checkbox/radio is disabled
* or unchecked.
@@ -423,9 +424,9 @@ public Form getForm() {
}
/**
- * Set the Field's the parent Form.
+ * Set the Field's the parent Form.
*
- * @param form Field's parent Form
+ * @param form Field's parent Form
*/
public void setForm(Form form) {
this.form = form;
@@ -433,17 +434,17 @@ public void setForm(Form form) {
/**
* Return the field help text.
- *
+ *
* If the help value is null, this method will attempt to find a
* localized help message in the parent messages using the key:
*
- * getName() + ".help"
+ * getName() + ".help"
*
* If not found then the message will be looked up in the
- * /click-control.properties file using the same key.
- *
- * For example given a CustomerPage with the properties file
- * CustomerPage.properties:
+ * /click-control.properties file using the same key.
+ *
+ * For example given a CustomerPage with the properties file
+ * CustomerPage.properties:
*
*
* name.label=Customer Name
@@ -501,8 +502,8 @@ public boolean isHidden() {
}
/**
- * Return the Form and Field id appended: "form-field"
- *
+ * Return the Form and Field id appended: "form-field"
+ *
* Use the field the "id" attribute value if defined, or the name otherwise.
*
* @see org.apache.click.Control#getId()
@@ -548,19 +549,19 @@ public String getId() {
/**
* Return the field display label.
- *
+ *
* If the label value is null, this method will attempt to find a
* localized label message in the parent messages using the key:
*
- * getName() + ".label"
+ * getName() + ".label"
*
* If not found then the message will be looked up in the
- * /click-control.properties file using the same key.
+ * /click-control.properties file using the same key.
* If a value is still not found, the Field name will be converted
* into a label using the method: {@link ClickUtils#toLabel(String)}
- *
- * For example given a CustomerPage with the properties file
- * CustomerPage.properties:
+ *
+ * For example given a CustomerPage with the properties file
+ * CustomerPage.properties:
*
*
* name.label=Customer Name
@@ -580,7 +581,7 @@ public String getId() {
*
* When a label value is not set, or defined in any properties files, then
* its value will be created from the Fields name.
- *
+ *
* For example given the TextField code:
*
*
@@ -625,11 +626,10 @@ public String getLabelStyle() {
/**
* Set the field label "style" attribute value.
- *
+ *
* Please note: the label is rendered by the containing Form
* or container, not the field itself. It is up to the parent Form
* (or container) on how to apply the label style.
- *
*
* nameField.setLabelStyle("color: green; font-weight: bold");
*
@@ -652,7 +652,7 @@ public String getLabelStyleClass() {
/**
* Set the field label "class" attribute value.
- *
+ *
* Please note: the label is rendered by the containing Form
* or container, not the field itself. It is up to the parent Form
* (or container) on how to apply the label style class.
@@ -676,7 +676,6 @@ public String getParentStyleHint() {
/**
* Set the field's parent "style" attribute hint.
- *
*
* nameField.setParentStyleHint("margin-bottom; 10px");
*
@@ -705,7 +704,7 @@ public String getParentStyleClassHint() {
/**
* Set the field's parent "class" attribute hint.
- *
+ *
* Please note:The parent style class provides a hint to Forms
* (or other containers) which CSS class to render, but it is up to the
* Form (or container) implementation how the style class will be applied.
@@ -821,7 +820,7 @@ public String getTextAlign() {
/**
* Set the field CSS horizontal "text-align" style.
*
- * @param align the CSS "text-align" value: ["left", "right", "center"]
+ * @param align the CSS "text-align" value: ["left", "right", "center"]
*/
public void setTextAlign(String align) {
setStyle("text-align", align);
@@ -830,18 +829,18 @@ public void setTextAlign(String align) {
/**
* Return the 'title' attribute, or null if not defined. The title
* attribute acts like tooltip message over the Field.
- *
+ *
* If the title value is null, this method will attempt to find a
* localized title message in the parent messages using the key:
*
- * getName() + ".title"
+ * getName() + ".title"
*
* If not found then the message will be looked up in the
- * /click-control.properties file using the same key. If still
+ * /click-control.properties file using the same key. If still
* not found the title will be left as null and will not be rendered.
- *
- * For example given a CustomerPage with the properties file
- * CustomerPage.properties:
+ *
+ * For example given a CustomerPage with the properties file
+ * CustomerPage.properties:
*
*
* name.label=Customer Name
@@ -879,7 +878,7 @@ public void setTitle(String value) {
/**
* Return true if the Field request value should be trimmed, false otherwise.
- * The default value is "true".
+ * The default value is "true".
*
* @return true if the Field request value should be trimmed, false otherwise
*/
@@ -900,12 +899,12 @@ public void setTrim(boolean trim) {
/**
* Return true if the Field should validate itself when being processed.
- *
+ *
* If the validate attribute for the Field is not explicitly set, this
* method will return the validation status of its parent Form, see
* {@link Form#getValidate()}. If the Field validate attribute is not set
* and the parent Form is not set this method will return true.
- *
+ *
* This method is called by the {@link #onProcess()} method to determine
* whether the the Field {@link #validate()} method should be invoked.
*
@@ -934,8 +933,8 @@ public void setValidate(boolean validate) {
/**
* Return the field JavaScript client side validation function.
- *
- * The function name must follow the format validate_[id], where
+ *
+ * The function name must follow the format validate_[id], where
* the id is the DOM element id of the fields focusable HTML element, to
* ensure the function has a unique name.
*
@@ -979,10 +978,10 @@ public void setValue(String value) {
* Return the object representation of the Field value. This method will
* return a string value, or null if the string value is null or is zero
* length.
- *
+ *
* Specialized object field subclasses should override this method to
- * return a non string object. For examples a DoubleField would
- * return a Double value instead.
+ * return a non string object. For examples a DoubleField would
+ * return a Double value instead.
*
* @return the object representation of the Field value
*/
@@ -1027,10 +1026,10 @@ public void setWidth(String value) {
/**
* This method binds the submitted request value to the Field's value.
- *
+ *
* Please note: while it is possible to explicitly bind the field
* value by invoking this method directly, it is recommended to use the
- * "bind" utility methods in {@link org.apache.click.util.ClickUtils}
+ * "bind" utility methods in {@link org.apache.click.util.ClickUtils}
* instead. See {@link org.apache.click.util.ClickUtils#bind(org.apache.click.control.Field)}
* for more details.
*/
@@ -1070,13 +1069,13 @@ public void setState(Object state) {
/**
* This method processes the page request returning true to continue
- * processing or false otherwise. The Field onProcess() method is
- * typically invoked by the Form onProcess() method when
+ * processing or false otherwise. The Field onProcess() method is
+ * typically invoked by the Form onProcess() method when
* processing POST request.
- *
+ *
* This method will bind the Field request parameter value to the field,
* validate the submission and invoke its callback listener if defined.
- *
+ *
* Below is a typical onProcess implementation:
*
*
@@ -1128,7 +1127,7 @@ public void removeState(Context context) {
/**
* Restore the Field state from the session for the given request context.
- *
+ *
* This method delegates to {@link #setState(java.lang.Object)} to set the
* field restored state.
*
@@ -1143,7 +1142,7 @@ public void restoreState(Context context) {
/**
* Save the Field state to the session for the given request context.
- *
+ *
* * This method delegates to {@link #getState()} to retrieve the field state
* to save.
*
@@ -1157,10 +1156,10 @@ public void saveState(Context context) {
}
/**
- * The validate method is invoked by onProcess() to validate
+ * The validate method is invoked by onProcess() to validate
* the request submission. Field subclasses should override this method
* to implement request validation logic.
- *
+ *
* If the field determines that the submission is invalid it should set the
* {@link #error} property with the error message.
*/
@@ -1171,7 +1170,7 @@ public void validate() {
/**
* Return a normalized label for display in error messages.
- *
+ *
* The error label is a normalized version of {@link #getLabel()}.
*
* @return a normalized label for error message display
@@ -1187,23 +1186,23 @@ protected String getErrorLabel() {
* Set the error with the a label formatted message specified by the given
* message bundle key. The message will be formatted with the field label
* using {@link #getErrorLabel()}.
- *
+ *
* setErrorMessage will attempt to find a localized error message as
* described here, using the following
* lookup strategy:
*
* -
* an error message is looked up for a specific Field instance by
- * prefixing the key with the Field's name:
+ * prefixing the
key with the Field's name:
*
- * getMessage(getName() + "." + key);
+ * getMessage(getName() + "." + key);
*
*
* -
* if no message is found for a specific Field instance, an error
- * message is looked up for the Field class based on the key:
+ * message is looked up for the Field class based on the
key:
*
- * getMessage(key);
+ * getMessage(key);
*
*
*
@@ -1223,7 +1222,7 @@ protected void setErrorMessage(String key) {
* Set the error with the a label and value formatted message specified by
* the given message bundle key. The message will be formatted with the
* field label {0} using {@link #getErrorLabel()} and the given value {1}.
- *
+ *
* Also see {@link #setErrorMessage(java.lang.String)} on how to
* specify error messages for specific Field instances.
*
@@ -1258,7 +1257,7 @@ protected String getRequestValue() {
/**
* Render the Field tag and common attributes including {@link #getName() name},
- * {@link #getId() id}, class and style.
+ * {@link #getId() id}, class and style.
*
* @see org.openidentityplatform.openam.click.control.AbstractControl#renderTagBegin(java.lang.String, HtmlStringBuffer)
*
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/FileField.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/FileField.java
index 91c6b007af..34d4c70b5f 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/FileField.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/FileField.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.control;
@@ -28,24 +29,25 @@
/**
* Provides a File Field control: <input type='file'>.
*
- *
+ *
+ * Example
*
* File Field
- *
+ * <input type='file' value=''/>
*
*
*
* The FileField control uses the Jakarta Commons
* FileUpload
* library to provide file processing functionality.
- *
+ *
* You can control the {@link org.apache.click.service.CommonsFileUploadService#sizeMax maximum request size}
* and {@link org.apache.click.service.CommonsFileUploadService#fileSizeMax maximum file size}
* by configuring {@link org.apache.click.service.CommonsFileUploadService}.
- *
- * Note Browsers enforce the JavaScript value property as readonly
+ *
+ * Note Browsers enforce the JavaScript value property as readonly
* to prevent script based stealing of users files.
- *
+ *
* You can make the file field invisible by setting the CSS display attribute, for
* example:
*
@@ -56,7 +58,7 @@
* <input type="button" value="show value" onclick="alert(fileName)">
* </form>
*
- *
+ *
* Please also see the references:
*
* - Apache Commons - Using FileUpload
@@ -160,7 +162,7 @@ public FileField(String name, String label, int size) {
/**
* Create an FileField with no name defined.
- *
+ *
* Please note the control's name must be defined before it is valid.
*/
public FileField() {
@@ -170,7 +172,7 @@ public FileField() {
// ------------------------------------------------------ Public Attributes
/**
- * Return the FileField's html tag: input.
+ * Return the FileField's html tag: input.
*
* @see org.apache.click.control.AbstractControl#getTag()
*
@@ -185,7 +187,7 @@ public String getTag() {
* Return the FileItem
* after processing the request, or null otherwise.
*
- * @return the FileItem after processing a request
+ * @return the FileItem after processing a request
*/
public FileItem getFileItem() {
return fileItem;
@@ -210,9 +212,9 @@ public void setSize(int size) {
}
/**
- * Return the input type: 'file'.
+ * Return the input type: 'file'.
*
- * @return the input type: 'file'
+ * @return the input type: 'file'
*/
public String getType() {
return "file";
@@ -330,7 +332,7 @@ public void render(HtmlStringBuffer buffer) {
/**
* Validate the FileField request submission.
- *
+ *
* A field error message is displayed if a validation error occurs.
* These messages are defined in the resource bundle:
*
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Form.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Form.java
index c53a15c637..36e61f146c 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Form.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Form.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.control;
@@ -48,23 +49,26 @@
/**
* Provides a Form control: <form method='post'>.
*
- *
+ *
+ * Example
*
*
*
*
+ * Example
*
- * *
- *
+ * <label>Username</label>*
+ * <input type='text' name='username' value='' size='20' maxlength='20'>
*
*
- * *
- *
+ * <label>Password</label>*
+ * <input type='password' name='password' value='' size='20' maxlength='20'>
*
*
*
+ * Example
*
- *
+ * <input type='submit' name='ok' value=' OK '> <input type='submit' name='cancel' value=' Cancel '>
*
*
*
@@ -77,7 +81,7 @@
* {@link Button} controls in the added order. Once all the Fields have been
* processed the form will invoke its action listener if defined.
*
- * Form Example
+ * Form Example
*
* The example below illustrates a Form being used in a login Page.
*
@@ -124,25 +128,25 @@
* any of its Fields have validation errors they will be automatically
* rendered, and the {@link #isValid()} method will return false.
*
- *
- * Data Binding
+ *
+ * Data Binding
*
* To bind value objects to a forms fields use the copy methods:
*
- * - value object -> form fields
+ *
- value object -> form fields
* {@link #copyFrom(Object)}
- * - form fields -> value object
+ *
- form fields -> value object
* {@link #copyTo(Object)}
*
* To debug the data binding being performed, use the Click application mode to
- * "debug" or use the debug copy methods.
- *
+ * "debug" or use the debug copy methods.
+ *
* Binding of nested data objects is supported using the
* OGNL library. To use
* nested objects in your form, simply specify the object path as the Field
* name. Note in the object path you exclude the root object, so the path
- * customer.address.state is specified as address.state.
- *
+ * customer.address.state is specified as address.state.
+ *
* For example:
*
*
@@ -163,37 +167,37 @@
* When populating an object from a form post Click will automatically create
* any null nested objects so their properties can be set. To do this Click
* uses the no-args constructor of the nested objects class.
- *
+ *
* {@link #copyTo(Object)} and {@link #copyFrom(Object)} also supports
- * java.util.Map as an argument. Examples of using
- * java.util.Map are shown in the respective method descriptions.
+ * java.util.Map as an argument. Examples of using
+ * java.util.Map are shown in the respective method descriptions.
*
- *
- *
Form Validation
+ *
+ * Form Validation
*
* The Form control supports automatic field validation. By default when a POST
* request is made the form will validate the field values. To disable
* automatic validation set {@link #setValidate(boolean)} to false.
- *
+ *
* Form also provides a {@link #validate()} method where subclasses can provide
* custom cross-field validation.
- *
+ *
* File Upload Validation
- *
+ *
* The Form's {@link #validateFileUpload()} provides validation for multipart
* requests (multipart requests are used for uploading files from the browser).
* The {@link #validateFileUpload()} method checks that files being uploaded do not exceed the
* {@link org.apache.click.service.CommonsFileUploadService#sizeMax maximum request size}
* or the {@link org.apache.click.service.CommonsFileUploadService#fileSizeMax maximum file size}.
- *
- * Note: if the maximum request size or maximum file size
+ *
+ * Note: if the maximum request size or maximum file size
* is exceeded, the request is deemed invalid ({@link #hasPostError hasPostError}
* will return true), and no further processing is performed on the form or fields.
* Instead the form will display the appropriate error message for the invalid request.
* See {@link #validateFileUpload()} for details of the error message properties.
- *
+ *
* JavaScript Validation
- *
+ *
* The Form control also supports client side JavaScript validation. By default
* JavaScript validation is not enabled. To enable JavaScript validation set
* {@link #setJavaScriptValidation(boolean)} to true. For example:
@@ -217,15 +221,15 @@
* prevents JavaScript form validation being performed when the cancel button is
* clicked.
*
- *
- *
CSS and JavaScript resources
+ *
+ * CSS and JavaScript resources
*
* The Form control makes use of the following resources (which Click automatically
- * deploys to the application directory, /click):
+ * deploys to the application directory, /click):
*
*
- * - click/control.css
- * - click/control.js
+ * click/control.css
+ * click/control.js
*
*
* To import these files and any form control imports simply reference
@@ -245,48 +249,49 @@
* </body>
* </html>
*
- *
- * Form Layout
+ *
+ * Form Layout
* The Form control supports rendering using automatic and manual layout
* techniques.
*
- *
- * Auto Layout
+ *
+ * Auto Layout
*
* If you include a form variable in your template the form will be
* automatically laid out and rendered. Auto layout, form and field rendering
* options include:
*
- *
+ *
+ * Example
*
- * {@link #buttonAlign} button alignment: ["left", "center", "right"]
+ * {@link #buttonAlign} button alignment: ["left", "center", "right"]
*
* {@link #buttonStyle} button <td> "style" attribute value
*
* {@link #columns} number of form table columns, the default value number is 1
*
- * {@link #errorsAlign} validation error messages alignment: ["left", "center", "right"]
+ * {@link #errorsAlign} validation error messages alignment: ["left", "center", "right"]
*
- * {@link #errorsPosition} validation error messages position: ["top", "middle", "bottom"]
+ * {@link #errorsPosition} validation error messages position: ["top", "middle", "bottom"]
*
* {@link #errorsStyle} errors <td> "style" attribute value
*
* {@link #fieldStyle} field <td> "style" attribute value
*
- * {@link #labelAlign} field label alignment: ["left", "center", "right"]
+ * {@link #labelAlign} field label alignment: ["left", "center", "right"]
*
- * {@link #labelsPosition} label position relative to field: ["left", "top"]
+ * {@link #labelsPosition} label position relative to field: ["left", "top"]
*
* {@link #labelStyle} label <td> "style" attribute value
*
- * click/control.css control CSS styles, automatically deployed to the click web directory
+ * click/control.css control CSS styles, automatically deployed to the click web directory
*
* /click-control.properties form and field messages and HTML, located under classpath
*
*
*
- *
- * Manual Layout
+ *
+ * Manual Layout
*
* You can also manually layout the Form in the page template specifying
* the fields using the named field notation:
@@ -298,7 +303,7 @@
* always specify:
*
* - method
- * - the form submission method ["post" | "get"]
+ * - the form submission method ["post" | "get"]
* - name
* - the name of your form, important when using JavaScript
* - action
@@ -308,10 +313,10 @@
*
* The hidden field is used by Click to determine which form was posted on
* a page which may contain multiple forms.
- *
+ *
* Alternatively you can use the Form {@link #startTag()} and {@link #endTag()}
* methods to render this information.
- *
+ *
* An example of a manually laid out Login form is provided below:
*
*
@@ -358,21 +363,21 @@
* As you can see in this example most of the code and markup is generic and
* could be reused. This is where Velocity Macros come in.
*
- *
- * Velocity Macros
+ *
+ * Velocity Macros
*
* Velocity Macros
* (velocimacros)
* are a great way to encapsulate customized forms.
- *
+ *
* To create a generic form layout you can use the Form {@link #getFieldList()} and
* {@link #getButtonList()} properties within a Velocity macro. If you want to
* access all Form Controls from within a Velocity template or macro use
* {@link #getControls()}.
- *
+ *
* The example below provides a generic writeForm()
* macro which you could use through out an application. This Velocity macro code
- * would be contained in a macro file, e.g. macro.vm.
+ * would be contained in a macro file, e.g. macro.vm.
*
*
#* Custom Form Macro Code *#
* #macro( writeForm[$form] )
@@ -423,39 +428,39 @@
* At render time Velocity will execute the macro using the given form and render
* the results to the response output stream.
*
- * Configuring Macros
+ * Configuring Macros
*
* To configure your application to use your macros you can:
*
* -
- * Put your macros if a file called macro.vm
+ * Put your macros if a file called
macro.vm
* in your applications root directory.
*
* -
* Put your macros in the auto deployed
- * click/VM_global_macro.vm file.
+ *
click/VM_global_macro.vm file.
*
* -
* Create a custom named macro file and reference it in a
- * WEB-INF/velocity.properties
+ *
WEB-INF/velocity.properties
* file under the property named
- * velocimacro.library.
+ * velocimacro.library.
*
*
*
- *
- * Preventing Accidental Form Posts
+ *
+ * Preventing Accidental Form Posts
*
* Users may accidentally make multiple form submissions by refreshing a page
* or by pressing the back button.
- *
+ *
* To prevent multiple form posts from page refreshes use the Post
* Redirect pattern. With this pattern once the user has posted a form you
* redirect to another page. If the user then presses the refresh button, they
* will making a GET request on the current page. Please see the
* Redirect After Post
* article for more information on this topic.
- *
+ *
* To prevent multiple form posts from use of the browser back button use one
* of the Form {@link #onSubmitCheck(Page, String)} methods. For example:
*
@@ -471,14 +476,14 @@
* The form submit check methods store a special token in the users session
* and in a hidden field in the form to ensure a form post isn't replayed.
*
- *
- *
Dynamic Forms and not validating a request
+ *
+ * Dynamic Forms and not validating a request
*
* A common use case for web applications is to create Form fields dynamically
* based upon user selection. For example if a checkbox is ticked another Field
* is added to the Form. A simple way to achieve this is using JavaScript
* to submit the Form when the Field is changed or clicked.
- *
+ *
* When submitting a Form using JavaScript, it is often desirable to not
* validate the fields since the user is still filling out the form.
* To cater for this use case, Form provides the {@link #setValidate(boolean)}
@@ -496,14 +501,14 @@
* ClickUtils.bind(submit);
*
* // If submit was not clicked, don't validate
- * if(form.isFormSubmission() && !submit.isClicked()) {
+ * if(form.isFormSubmission() && !submit.isClicked()) {
* form.setValidate(false);
* }
* }
*
- *
+ *
* See also the W3C HTML reference:
- * FORM
*
* @see org.openidentityplatform.openam.click.control.Field
@@ -515,41 +520,41 @@ public class Form extends AbstractContainer implements Stateful {
private static final long serialVersionUID = 1L;
- /** The align left, form layout constant: "left". */
+ /** The align left, form layout constant: "left". */
public static final String ALIGN_LEFT = "left";
- /** The align center, form layout constant: "center". */
+ /** The align center, form layout constant: "center". */
public static final String ALIGN_CENTER = "center";
- /** The align right, form layout constant: "right". */
+ /** The align right, form layout constant: "right". */
public static final String ALIGN_RIGHT = "right";
/**
* The position top, errors and labels form layout constant:
- * "top".
+ * "top".
*/
public static final String POSITION_TOP = "top";
/**
* The position middle, errors in middle form layout constant:
- * "middle".
+ * "middle".
*/
public static final String POSITION_MIDDLE = "middle";
/**
* The position bottom, errors on bottom form layout constant:
- * "top".
+ * "top".
*/
public static final String POSITION_BOTTOM = "bottom";
/**
* The position left, labels of left form layout constant:
- * "left".
+ * "left".
*/
public static final String POSITION_LEFT = "left";
/**
- * The form name parameter for multiple forms: "form_name".
+ * The form name parameter for multiple forms: "form_name".
*/
public static final String FORM_NAME = "form_name";
@@ -558,7 +563,7 @@ public class Form extends AbstractContainer implements Stateful {
/**
* The submit check reserved request parameter prefix:
- * SUBMIT_CHECK_.
+ * SUBMIT_CHECK_.
*/
public static final String SUBMIT_CHECK = "SUBMIT_CHECK_";
@@ -587,8 +592,8 @@ public class Form extends AbstractContainer implements Stateful {
protected final List fieldList = new ArrayList<>();
/**
- * The form method ["post, "get"], default value:
- * post.
+ * The form method ["post, "get"], default value:
+ * post.
*/
protected String method = "post";
@@ -598,7 +603,7 @@ public class Form extends AbstractContainer implements Stateful {
/** The form validate fields when processing flag. */
protected boolean validate = true;
- /** The button align, default value is "left". */
+ /** The button align, default value is "left". */
protected String buttonAlign = ALIGN_LEFT;
/** The ordered list of button values. */
@@ -608,27 +613,27 @@ public class Form extends AbstractContainer implements Stateful {
protected String buttonStyle;
/**
- * The number of form layout table columns, default value: 1.
- *
+ * The number of form layout table columns, default value: 1.
+ *
* This property is used to layout the number of table columns the form
* is rendered with using a flow layout style.
*/
protected int columns = 1;
/**
- * The default field size, default value: 0.
- *
+ * The default field size, default value: 0.
+ *
* If the form default field size is greater than 0, when fields are added
* to the form the field's size will be set to the default value.
*/
protected int defaultFieldSize;
- /** The errors block align, default value is "left". */
+ /** The errors block align, default value is "left". */
protected String errorsAlign = ALIGN_LEFT;
/**
- * The form errors position ["top", "middle", "bottom"] default
- * value: "top".
+ * The form errors position ["top", "middle", "bottom"] default
+ * value: "top".
*/
protected String errorsPosition = POSITION_TOP;
@@ -650,12 +655,12 @@ public class Form extends AbstractContainer implements Stateful {
*/
protected boolean javaScriptValidation;
- /** The label align, default value is "left". */
+ /** The label align, default value is "left". */
protected String labelAlign = ALIGN_LEFT;
/**
- * The form labels position ["left", "top"] default value:
- * "left".
+ * The form labels position ["left", "top"] default value:
+ * "left".
*/
protected String labelsPosition = POSITION_LEFT;
@@ -682,7 +687,7 @@ public Form(String name) {
/**
* Create a form with no name.
- *
+ *
* Please note the control's name must be defined before it is valid.
*/
public Form() {
@@ -693,23 +698,23 @@ public Form() {
/**
* Add the control to the form at the specified index, and return the
* added instance.
- *
+ *
* Please note: if the form contains a control with the same name as
* the given control, that control will be
* {@link #replace(Control, Control) replaced}
* by the given control. If a control has no name defined it cannot be replaced.
- *
+ *
* Controls can be retrieved from the Map {@link #getControlMap() controlMap}
* where the key is the Control name and value is the Control instance.
- *
+ *
* All controls are available on the {@link #getControls() controls} list
* at the index they were inserted. If you are only interested in Fields,
* note that Buttons are available on the {@link #getButtonList() buttonList}
* while other fields are available on {@link #getFieldList() fieldList}.
- *
+ *
* The specified index only applies to {@link #getControls() controls}, not
* {@link #getButtonList() buttonList} or {@link #getFieldList() fieldList}.
- *
+ *
* Please note if the specified control already has a parent assigned,
* it will automatically be removed from that parent and inserted into the
* form.
@@ -724,7 +729,7 @@ public Form() {
* and container is the same instance or if the Field name is not defined
*
* @throws IndexOutOfBoundsException if index is out of range
- * (index < 0 || index > getControls().size())
+ * (index < 0 || index > getControls().size())
*/
@Override
public Control insert(Control control, int index) {
@@ -788,15 +793,15 @@ public Control insert(Control control, int index) {
/**
* Add a Control to the form and return the added instance.
- *
+ *
* Please note: if the form contains a control with the same name as
* the given control, that control will be
* {@link #replace(Control, Control) replaced}
* by the given control. If a control has no name defined it cannot be replaced.
- *
+ *
* Controls can be retrieved from the Map {@link #getControlMap() controlMap}
* where the key is the Control name and value is the Control instance.
- *
+ *
* All controls are available on the {@link #getControls() controls} list
* in the order they were added. If you are only interested in Fields,
* note that Buttons are available on the {@link #getButtonList() buttonList}
@@ -817,15 +822,15 @@ public Control add(Control control) {
/**
* Add the field to the form, and set the fields form property.
- *
+ *
* Please note: if the form contains a control with the same name as
* the given control, that control will be
* {@link #replace(Control, Control) replaced}
* by the given control. If a control has no name defined it cannot be replaced.
- *
+ *
* Fields can be retrieved from the Map {@link #getFields() fields} where
* the key is the Field name and value is the Field instance.
- *
+ *
* Buttons are available on the {@link #getButtonList() buttonList} while
* other fields are available on {@link #getFieldList() fieldList}.
*
@@ -843,17 +848,17 @@ public Field add(Field field) {
/**
* Add the field to the form and specify the field's width in columns.
- *
+ *
* Please note: if the form contains a control with the same name as
* the given control, that control will be
* {@link #replace(Control, Control) replaced}
* by the given control. If a control has no name defined it cannot be replaced.
- *
+ *
* Fields can be retrieved from the Map {@link #getFields() fields} where
* the key is the Field name and value is the Field instance.
- *
+ *
* Fields are available on {@link #getFieldList() fieldList}.
- *
+ *
* Note Button and HiddenField types are not valid arguments for this method.
*
* @see #add(Control)
@@ -872,17 +877,17 @@ public Field add(Field field, int width) {
/**
* Add the control to the form and specify the control's width in columns.
- *
+ *
* Please note: if the form contains a control with the same name as
* the given control, that control will be
* {@link #replace(Control, Control) replaced}
* by the given control. If a control has no name defined it cannot be replaced.
- *
+ *
* Controls can be retrieved from the Map {@link #getControlMap() controlMap}
* where the key is the Control name and value is the Control instance.
- *
+ *
* Controls are available on the {@link #getControls() controls} list.
- *
+ *
* Note Button and HiddenField types are not valid arguments for this method.
*
* @see #add(Control)
@@ -1042,7 +1047,7 @@ public void removeFields(List fieldNames) {
// Public Attributes ------------------------------------------------------
/**
- * Return the form's html tag: form.
+ * Return the form's html tag: form.
*
* @see org.apache.click.control.AbstractControl#getTag()
*
@@ -1059,12 +1064,12 @@ public String getTag() {
* page containing the form. This is the default behaviour for most scenarios.
* However if you explicitly specify the form "action" URL attribute, this
* value will be used instead.
- *
+ *
* Setting the form action attribute is useful for situations where you want
* a form to submit to a different page. This can also be used to have a
* form submit to the J2EE Container for authentication, by setting the
- * action URL to "j_security_check".
- *
+ * action URL to "j_security_check".
+ *
* The action URL will always be encoded by the response to ensure it includes
* the Session ID if required.
*
@@ -1086,11 +1091,11 @@ public String getActionURL() {
* Return the form "action" attribute URL value. By setting this value you
* will override the default action URL which points to the page containing
* the form.
- *
+ *
* Setting the form action attribute is useful for situations where you want
* a form to submit to a different page. This can also be used to have a
* form submit to the J2EE Container for authentication, by setting the
- * action URL to "j_security_check".
+ * action URL to "j_security_check".
*
* @param value the form "action" attribute URL value
*/
@@ -1225,8 +1230,8 @@ public String getFieldValue(String name) {
* The following resources are returned:
*
*
- * - click/control.css
- * - click/control.js
+ * click/control.css
+ * click/control.js
*
*
* @see Control#getHeadElements()
@@ -1248,8 +1253,8 @@ public List getHeadElements() {
}
/**
- * Return the form method ["post" | "get"], default value is
- * post.
+ * Return the form method ["post" | "get"], default value is
+ * post.
*
* @return the form method
*/
@@ -1258,7 +1263,7 @@ public String getMethod() {
}
/**
- * Set the form method ["post" | "get"].
+ * Set the form method ["post" | "get"].
*
* @param value the form method
*/
@@ -1268,14 +1273,14 @@ public void setMethod(String value) {
/**
* Return true if the page request is a submission from this form.
- *
+ *
* A form submission requires the following criteria:
*
* - the Form name must be present as a request parameter (Form
* automatically adds a HiddenField which value is set to the Form name.
* This ensures the Form name is present when submitting the form)
* - the request method must equal the Form {@link #method}, for example
- * both must be GET or POST
+ * both must be GET or POST
*
*
* @return true if the page request is a submission from this form
@@ -1360,9 +1365,9 @@ public boolean isValid() {
/**
* Return the ordered list of form fields, excluding buttons.
- *
+ *
* The order of the fields is the same order they were added to the form.
- *
+ *
* The returned list includes only fields added directly to the Form.
*
* @return the ordered List of form fields, excluding buttons
@@ -1374,7 +1379,7 @@ public List getFieldList() {
/**
* Return the Map of form fields (including buttons), keyed
* on field name.
- *
+ *
* The returned map includes only fields added directly to the Form.
*
* @see #getControlMap()
@@ -1399,7 +1404,7 @@ public boolean getValidate() {
/**
* Set the Form field validation flag, telling the Fields to validate
- * themselves when their onProcess() method is invoked.
+ * themselves when their onProcess() method is invoked.
*
* @param validate the Form field validation flag
*/
@@ -1408,8 +1413,8 @@ public void setValidate(boolean validate) {
}
/**
- * Return the buttons <td> HTML horizontal alignment: "left",
- * "center", "right".
+ * Return the buttons <td> HTML horizontal alignment: "left",
+ * "center", "right".
*
* @return the field label HTML horizontal alignment
*/
@@ -1418,8 +1423,8 @@ public String getButtonAlign() {
}
/**
- * Set the button <td> HTML horizontal alignment: "left",
- * "center", "right".
+ * Set the button <td> HTML horizontal alignment: "left",
+ * "center", "right".
* Note the given align is not validated.
*
* @param align the field label HTML horizontal alignment
@@ -1430,9 +1435,9 @@ public void setButtonAlign(String align) {
/**
* Return the ordered list of {@link Button}s.
- *
+ *
* The order of the buttons is the same order they were added to the form.
- *
+ *
* The returned list includes only buttons added directly to the Form.
*
* @return the ordered list of {@link Button}s.
@@ -1502,8 +1507,8 @@ public void setDefaultFieldSize(int size) {
}
/**
- * Return the errors block HTML horizontal alignment: "left",
- * "center", "right".
+ * Return the errors block HTML horizontal alignment: "left",
+ * "center", "right".
*
* @return the errors block HTML horizontal alignment
*/
@@ -1512,8 +1517,8 @@ public String getErrorsAlign() {
}
/**
- * Set the errors block HTML horizontal alignment: "left",
- * "center", "right".
+ * Set the errors block HTML horizontal alignment: "left",
+ * "center", "right".
* Note the given align is not validated.
*
* @param align the errors block HTML horizontal alignment
@@ -1523,7 +1528,7 @@ public void setErrorsAlign(String align) {
}
/**
- * Return the form errors position ["top", "middle", "bottom"].
+ * Return the form errors position ["top", "middle", "bottom"].
*
* @return form errors position
*/
@@ -1532,7 +1537,7 @@ public String getErrorsPosition() {
}
/**
- * Set the form errors position ["top", "middle", "bottom"].
+ * Set the form errors position ["top", "middle", "bottom"].
*
* @param position the form errors position
*/
@@ -1627,8 +1632,8 @@ public void setJavaScriptValidation(boolean validate) {
}
/**
- * Return the field label HTML horizontal alignment: "left",
- * "center", "right".
+ * Return the field label HTML horizontal alignment: "left",
+ * "center", "right".
*
* @return the field label HTML horizontal alignment
*/
@@ -1637,8 +1642,8 @@ public String getLabelAlign() {
}
/**
- * Set the field label HTML horizontal alignment: "left",
- * "center", "right".
+ * Set the field label HTML horizontal alignment: "left",
+ * "center", "right".
* Note the given align is not validated.
*
* @param align the field label HTML horizontal alignment
@@ -1648,7 +1653,7 @@ public void setLabelAlign(String align) {
}
/**
- * Return the form labels position ["left", "top"].
+ * Return the form labels position ["left", "top"].
*
* @return form labels position
*/
@@ -1657,7 +1662,7 @@ public String getLabelsPosition() {
}
/**
- * Set the form labels position ["left", "top"].
+ * Set the form labels position ["left", "top"].
*
* @param position the form labels position
*/
@@ -1680,7 +1685,7 @@ public String getLabelStyle() {
/**
* Set the label <td> "style" attribute value.
- *
+ *
* This value can be overridden by Fields through their
* {@link Field#setParentStyleHint(String)} property.
*
@@ -1734,7 +1739,7 @@ public void clearValues() {
* Copy the given object's attributes into the Form's field values. In
* other words automatically populate Form's field values with the
* given objects attributes.
- *
+ *
* The following example populates the Form field with Customer
* attributes:
*
@@ -1745,12 +1750,12 @@ public void clearValues() {
* form.copyFrom(customer);
* }
*
- * copyForm also supports java.util.Map as an argument.
- *
+ * copyForm also supports java.util.Map as an argument.
+ *
* By specifying a map, the Form's field values will be populated by
* matching key/value pairs. A match occurs when the map's key is equal to
* a field's name.
- *
+ *
* The following example populates the Form fields with a map's
* key/value pairs:
*
@@ -1781,8 +1786,8 @@ public void copyFrom(Object object) {
/**
* Copy the given object's attributes into the Form's field values. In other
* words automatically populate Forms field values with the given objects
- * attributes. copyFrom also supports java.util.Map as an argument.
- *
+ * attributes. copyFrom also supports java.util.Map as an argument.
+ *
* If the debug parameter is true, debugging messages will be
* logged.
*
@@ -1800,7 +1805,7 @@ public void copyFrom(Object object, boolean debug) {
* Copy the Form's field values into the given object's attributes. In
* other words automatically populate Object attributes with the Form's
* field values.
- *
+ *
* The following example populates the Customer attributes with the
* Form's field values:
*
@@ -1814,12 +1819,12 @@ public void copyFrom(Object object, boolean debug) {
* return true;
* }
*
- * copyTo also supports java.util.Map as an argument.
- *
+ * copyTo also supports java.util.Map as an argument.
+ *
* By specifying a map, the map's key/value pairs are populated from
* matching Form field names. A match occurs when a field's name is
* equal to a map's key.
- *
+ *
* The following example populates the map with the Form field values:
*
*
@@ -1852,8 +1857,8 @@ public void copyTo(Object object) {
/**
* Copy the Form's field values into the given object's attributes. In other
* words automatically populate Object attributes with the Forms field
- * values. copyTo also supports java.util.Map as an argument.
- *
+ * values. copyTo also supports java.util.Map as an argument.
+ *
* If the debug parameter is true, debugging messages will be
* logged.
*
@@ -1921,10 +1926,10 @@ public void setState(Object state) {
/**
* Process the Form and its child controls only if the Form was submitted
* by the user.
- *
+ *
* This method invokes {@link #isFormSubmission()} to check whether the form
* was submitted or not.
- *
+ *
* The Forms processing order is:
*
* - All {@link Field} controls in the order they were added
@@ -1997,7 +2002,7 @@ public void onDestroy() {
* The validate method is invoked by {@link #onProcess()} to validate
* the request submission. A Form subclass can override this method
* to implement cross-field validation logic.
- *
+ *
* If the Form determines that the submission is invalid it should set the
* {@link #error} property with an appropriate error message. For example:
*
@@ -2025,10 +2030,10 @@ public void validate() {
* clicking the Form submit button twice, in quick succession. If the form
* submit is valid this method will return true, otherwise set the page to
* redirect to the given redirectPath and return false.
- *
+ *
* This method will add a token to the user's session and a hidden field
* to the form to validate future submits.
- *
+ *
* Form submit checks should be performed before the pages controls are
* processed in the Page onSecurityCheck method. For example:
*
@@ -2043,7 +2048,7 @@ public void validate() {
*
* Form submit checks should generally be combined with the Post-Redirect
* pattern which provides a better user experience when pages are refreshed.
- *
+ *
* Please note: a call to onSubmitCheck always succeeds for Ajax
* requests.
*
@@ -2075,10 +2080,10 @@ public boolean onSubmitCheck(Page page, String redirectPath) {
* form submission by using the browser back button. If the form submit
* is valid this method will return true, otherwise set the page to
* redirect to the given Page class and return false.
- *
+ *
* This method will add a token to the user's session and a hidden field
* to the form to validate future submits.
- *
+ *
* Form submit checks should be performed before the pages controls are
* processed in the Page onSecurityCheck method. For example:
*
@@ -2093,7 +2098,7 @@ public boolean onSubmitCheck(Page page, String redirectPath) {
*
* Form submit checks should generally be combined with the Post-Redirect
* pattern which provides a better user experience when pages are refreshed.
- *
+ *
* Please note: a call to onSubmitCheck always succeeds for Ajax
* requests.
*
@@ -2125,10 +2130,10 @@ public boolean onSubmitCheck(Page page, Class extends Page> pageClass) {
* form submission by using the browser back button. If the form submit
* is valid this method will return true, otherwise the given listener
* object and method will be invoked.
- *
+ *
* This method will add a token to the users session and a hidden field
* to the form to validate future submit's.
- *
+ *
* Form submit checks should be performed before the pages controls are
* processed in the Page onSecurityCheck method. For example:
*
@@ -2149,7 +2154,7 @@ public boolean onSubmitCheck(Page page, Class extends Page> pageClass) {
*
* Form submit checks should generally be combined with the Post-Redirect
* pattern which provides a better user experience when pages are refreshed.
- *
+ *
* Please note: a call to onSubmitCheck always succeeds for Ajax
* requests.
*
@@ -2199,7 +2204,7 @@ public void removeState(Context context) {
/**
* Restore the Form state from the session for the given request context.
- *
+ *
* This method delegates to {@link #setState(Object)} to set the
* form restored state.
*
@@ -2214,7 +2219,7 @@ public void restoreState(Context context) {
/**
* Save the Form state to the session for the given request context.
- *
+ *
* * This method delegates to {@link #getState()} to retrieve the form state
* to save.
*
@@ -2262,7 +2267,7 @@ public String endTag() {
/**
* Render the HTML representation of the Form.
- *
+ *
* If the form contains errors after processing, these errors will be
* rendered.
*
@@ -2447,7 +2452,7 @@ protected void renderHeader(HtmlStringBuffer buffer, List formFields) {
/**
* Render the non hidden Form Fields to the string buffer.
- *
+ *
* This method delegates the rendering of the form fields to
* {@link #renderControls(HtmlStringBuffer, Container, List, Map, int)}.
*
@@ -2478,7 +2483,7 @@ protected void renderFields(HtmlStringBuffer buffer) {
/**
* Render the specified controls of the container to the string buffer.
- *
+ *
* fieldWidths is a map specifying the width for specific fields contained
* in the list of controls. The fieldWidths map is keyed on field name.
*
@@ -2828,9 +2833,9 @@ protected void renderButtons(HtmlStringBuffer buffer) {
/**
* Close the form tag and render any additional content after the Form.
- *
- * Additional content includes javascript validation and
- * javascript focus scripts.
+ *
+ * Additional content includes javascript validation and
+ * javascript focus scripts.
*
* @param formFields all fields contained within the form
* @param buffer the buffer to render to
@@ -2972,7 +2977,7 @@ protected boolean hasPostError() {
/**
* Validate the request for any file upload (multipart) errors.
- *
+ *
* A form error message is displayed if a file upload error occurs.
* These messages are defined in the resource bundle:
*
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/HiddenField.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/HiddenField.java
index c910ec2e36..836120c43a 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/HiddenField.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/HiddenField.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.control;
@@ -29,7 +30,7 @@
/**
* Provides a Hidden Field control: <input type='hidden'>.
- *
+ *
* The HiddenField control is useful for storing state information in a Form,
* such as object ids, instead of using the Session object. This control is
* capable of supporting the following classes:
@@ -43,13 +44,13 @@
* - String
* - Serializable
*
- *
+ *
* Serializable non-primitive objects will be serialized, compressed and
* Base64 encoded, using {@link ClickUtils#encode(Object)}
* method, and decoded using the corresponding
* {@link ClickUtils#decode(String)} method.
*
- *
HiddenField Example
+ * HiddenField Example
*
* An example is provided below which uses a hidden field to count the number of
* times a form is consecutively submitted. The count is displayed in the
@@ -81,7 +82,7 @@
* }
*
* See also W3C HTML reference
- * INPUT
*/
public class HiddenField extends Field {
@@ -145,7 +146,7 @@ public HiddenField() {
// ------------------------------------------------------ Public Attributes
/**
- * Return the hiddenfield's html tag: input.
+ * Return the hiddenfield's html tag: input.
*
* @see AbstractControl#getTag()
*
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Label.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Label.java
index 695b9c2c87..b1b64f2251 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Label.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Label.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.control;
@@ -25,7 +26,7 @@
* processing, and is used primarily to add descriptive labels or horizontal
* rules to auto rendered forms.
*
- * Label Example
+ * Label Example
*
* A Label example:
*
@@ -47,11 +48,11 @@ public class Label extends Field {
/**
* Create a Label display control.
- *
+ *
* Note the Label control will attempt to find a localized label message
* in the parent messages, and if not found then in the field messages
- * using the key name of getName() + ".label".
- *
+ * using the key name of getName() + ".label".
+ *
* If a value cannot be found in the parent or control messages then the
* Field name will be converted into a label using the
* {@link org.apache.click.util.ClickUtils#toLabel(String)} method.
@@ -74,7 +75,7 @@ public Label(String name, String label) {
/**
* Create a Label with no label/name defined.
- *
+ *
* Please note the control's name must be defined before it is valid.
*/
public Label() {
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Radio.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Radio.java
index 11bb18d328..3f8bfc0d3a 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Radio.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Radio.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.control;
@@ -25,9 +26,10 @@
/**
* Provides a Radio control: <input type='radio'>.
*
- *
+ *
+ * Example
*
- * Radio
+ * <input type='radio' name='header' value='Radio Control'>Radio</input>
*
*
*
@@ -36,9 +38,9 @@
* When used with a RadioGroup the Radio control will derive its name from the
* parent RadioGroup, if the Radio's name is not defined.
*
- *
+ *
* See also W3C HTML reference
- * INPUT
*
* @see RadioGroup
@@ -96,7 +98,7 @@ public Radio() {
// ------------------------------------------------------ Public Attributes
/**
- * Return the radio's html tag: input.
+ * Return the radio's html tag: input.
*
* @see AbstractControl#getTag()
*
@@ -175,7 +177,7 @@ public String getId() {
*
* @param parent the parent of the Control
* @throws IllegalArgumentException if the given parent instance is
- * referencing this object: if (parent == this)
+ * referencing this object: if (parent == this)
*/
@Override
public void setParent(Object parent) {
@@ -187,25 +189,25 @@ public void setParent(Object parent) {
/**
* Return the field display label.
- *
+ *
* If the label value is null, this method will attempt to find a
* localized label message in the parent messages using the key:
- *
+ *
* If the Radio name attribute is not null:
*
- * super.getName() + ".label"
+ * super.getName() + ".label"
*
* If the Radio name attribute is null and the parent of the Radio is the RadioGroup:
*
- * parent.getName() + "." + getValue() + ".label"
+ * parent.getName() + "." + getValue() + ".label"
*
* If not found then the message will be looked up in the
- * /click-control.properties file using the same key.
+ * /click-control.properties file using the same key.
* If a value still cannot be found then the Field name will be
* the radio value.
- *
- * For example given a CustomerPage with the properties file
- * CustomerPage.properties:
+ *
+ * For example given a CustomerPage with the properties file
+ * CustomerPage.properties:
*
*
* gender.M.label=Male
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/RadioGroup.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/RadioGroup.java
index 45aac06899..9cd5ce1cfb 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/RadioGroup.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/RadioGroup.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.control;
@@ -33,13 +34,14 @@
/**
* Provides a RadioGroup control.
*
- *
+ *
+ * Example
*
* Radio Group
*
- * Red
- * Green
- * Blue
+ * <input type='radio' name='header' value='R'>Red </input>
+ * <input type='radio' name='header' checked value='G'>Green </input>
+ * <input type='radio' name='header' value='B'>Blue</input>
*
*
*
@@ -49,7 +51,7 @@
* the RadioGroup. This will ensure the buttons will toggle together so that
* only one button is selected at a time.
*
- * RadioGroup Example
+ * RadioGroup Example
*
* The example below illustrates a RadioGroup being added to a form.
*
@@ -75,18 +77,19 @@
* This radio group field would be render as:
*
*
+ * Example
*
* Packaging
*
- * Standard
- * Protective
- * Gift Wrap
+ * <input type='radio' name='group' checked value='STD'>Standard</input>
+ * <input type='radio' name='group' value='PRO'>Protective</input>
+ * <input type='radio' name='group' value='GFT'>Gift Wrap</input>
*
*
*
*
* See also W3C HTML reference
- * INPUT
*
* @see Radio
@@ -174,7 +177,7 @@ public RadioGroup(String name, String label, boolean required) {
/**
* Create a RadioGroup field with no name.
- *
+ *
* Please note the control's name must be defined before it is valid.
*/
public RadioGroup() {
@@ -223,8 +226,8 @@ public void addAll(Collection options) {
* Add the given Map of radio values and labels to the RadioGroup.
* The Map entry key will be used as the radio value and the Map entry
* value will be used as the radio label.
- *
- * It is recommended that LinkedHashMap is used as the Map
+ *
+ * It is recommended that LinkedHashMap is used as the Map
* parameter to maintain the order of the radio items.
*
* @param options the Map of radio option values and labels to add
@@ -324,7 +327,7 @@ public String getFocusJavaScript() {
/**
* @see Field#setForm(Form)
*
- * @param form Field's parent Form
+ * @param form Field's parent Form
*/
@Override
public void setForm(Form form) {
@@ -543,11 +546,11 @@ public String toString() {
/**
* Validate the RadioGroup request submission.
- *
+ *
* A field error message is displayed if a validation error occurs.
* These messages are defined in the resource bundle:
* org.apache.click.control.MessageProperties
- *
+ *
* Error message bundle key names include:
* - select-error
*
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Renderable.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Renderable.java
index fe12dca543..7844080d0e 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Renderable.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Renderable.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.control;
@@ -24,7 +25,7 @@
/**
* Provides an interface for rendering output to an efficient string buffer.
- *
+ *
* Implementations of this interface will normally render HTML markup.
*/
public interface Renderable extends Serializable {
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Table.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Table.java
index 61497b65b2..2eb35d42d9 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Table.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/Table.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.control;
@@ -44,10 +45,11 @@
/**
* Provides a HTML Table control: <table>.
*
- *
+ *
+ * Example
*
*
- *
+ *
*
*
*
@@ -57,7 +59,7 @@
* like functionality. The design of the Table control has been informed by
* the excellent DisplayTag library.
*
- * Table Example
+ * Table Example
*
* An example Table usage is provided below:
*
@@ -102,21 +104,21 @@
* }
* }
*
- * DataProvider
+ * DataProvider
* In the example above a {@link DataProvider}
* is used to populate the Table {@link #setRowList(List) row list}
* from. DataProviders are used to provide data on demand to controls. For very
- * large data sets use a {@link PagingDataProvider}
+ * large data sets use a {@link PagingDataProvider}
* instead. See the section large data sets for
* details.
*
- * CSS and JavaScript resources
+ * CSS and JavaScript resources
*
* The Table control makes use of the following resources (which Click automatically
- * deploys to the application directory, /click):
+ * deploys to the application directory, /click):
*
*
- * - click/table.css
+ * click/table.css
*
*
* To import the Table CSS styles and any control JavaScript simply reference
@@ -136,9 +138,9 @@
* </body>
* </html>
*
- * Table Styles
+ * Table Styles
*
- * The table CSS style sheet is adapted from the DisplayTag screen.css
+ * The table CSS style sheet is adapted from the DisplayTag screen.css
* style sheet and includes the styles:
*
*
@@ -166,36 +168,36 @@
* }
*
* An alternative method of specifying the table class to use globally for your
- * application is to define a table-default-class message property
- * in your applications click-pages.properties file. For example:
+ * application is to define a table-default-class message property
+ * in your applications click-pages.properties file. For example:
*
*
* table-default-class=blue2
*
- * Paging
+ * Paging
*
* Table provides out-of-the-box paging.
- *
+ *
* To enable Paging set the table's page size: {@link #setPageSize(int)} and
* optionally make the Table Banner visible: {@link #setShowBanner(boolean)}.
- *
+ *
* Table supports rendering different paginators through the method
* {@link #setPaginator(Renderable) setPaginator}.
* The default Table Paginator is {@link TablePaginator}.
*
- *
Sorting
+ * Sorting
* Table also has built in column sorting.
- *
+ *
* To enable/disable sorting use {@link #setSortable(boolean)}.
*
- *
Custom Parameters - preserve state when paging and sorting
+ * Custom Parameters - preserve state when paging and sorting
*
* Its often necessary to add extra parameters on the Table links in order to
* preserve state when navigating between pages or sorting columns.
- *
+ *
* One can easily add extra parameters to links generated by the Table through
* the Table's {@link #getControlLink() controlLink}.
- *
+ *
* For example:
*
*
@@ -225,30 +227,30 @@
* ...
* }
*
- * Row Attributes
+ * Row Attributes
*
* Sometimes it is useful to add HTML attributes on individual rows. For these
* cases one can override the method {@link #addRowAttributes(Map, Object, int)}
* and add custom attributes to the row's attribute Map.
*
- * Large Datasets
+ * Large Datasets
*
* For large data sets use a {@link PagingDataProvider}.
- *
+ *
* A PagingDataProvider has two responsibilities. First, it must load
* only those rows to be displayed on the current page e.g. rows 50 - 59.
- * Second, it must return the total number of rows represented by the
+ * Second, it must return the total number of rows represented by the
* PagingDataProvider.
- *
+ *
* The Table methods {@link #getFirstRow()}, {@link #getLastRow()}
* and {@link #getPageSize()} provides the necessary information to limit
* the rows to the selected page. For sorting, the Table methods
* {@link #getSortedColumn()} and {@link #isSortedAscending()} provides the
* necessary information to sort the data.
- *
+ *
* Please note: when using a PagingDataProvider, you are responsible
* for sorting the data, as the Table does not have access to all the data.
- *
+ *
* Example usage:
*
*
@@ -281,13 +283,13 @@
*
* For a live demonstration see the
* Large Dataset Demo.
- *
+ *
*
* See the W3C HTML reference
- * Tables
* and the W3C CSS reference
- * Tables.
*
* @see Column
@@ -326,49 +328,49 @@ public class Table extends AbstractControl implements Stateful {
/** The table top and bottom pagination banner position. */
public static final int POSITION_BOTH = 3;
- /** The control ActionLink page number parameter name: "ascending". */
+ /** The control ActionLink page number parameter name: "ascending". */
public static final String ASCENDING = "ascending";
- /** The control ActionLink sorted column parameter name: "column". */
+ /** The control ActionLink sorted column parameter name: "column". */
public static final String COLUMN = "column";
- /** The control ActionLink page number parameter name: "page". */
+ /** The control ActionLink page number parameter name: "page". */
public static final String PAGE = "page";
- /** The control ActionLink sort number parameter name: "sort". */
+ /** The control ActionLink sort number parameter name: "sort". */
public static final String SORT = "sort";
- /** The table CSS style: "blue1". */
+ /** The table CSS style: "blue1". */
public static final String CLASS_BLUE1 = "blue1";
- /** The table CSS style: "blue2". */
+ /** The table CSS style: "blue2". */
public static final String CLASS_BLUE2 = "blue2";
- /** The table CSS style: "complex". */
+ /** The table CSS style: "complex". */
public static final String CLASS_COMPLEX = "complex";
- /** The table CSS style: "isi". */
+ /** The table CSS style: "isi". */
public static final String CLASS_ISI = "isi";
- /** The table CSS style: "its". */
+ /** The table CSS style: "its". */
public static final String CLASS_ITS = "its";
- /** The table CSS style: "mars". */
+ /** The table CSS style: "mars". */
public static final String CLASS_MARS = "mars";
- /** The table CSS style: "nocol". */
+ /** The table CSS style: "nocol". */
public static final String CLASS_NOCOL = "nocol";
- /** The table CSS style: "orange1". */
+ /** The table CSS style: "orange1". */
public static final String CLASS_ORANGE1 = "orange1";
- /** The table CSS style: "orange2". */
+ /** The table CSS style: "orange2". */
public static final String CLASS_ORANGE2 = "orange2";
- /** The table CSS style: "report". */
+ /** The table CSS style: "report". */
public static final String CLASS_REPORT = "report";
- /** The table CSS style: "simple". */
+ /** The table CSS style: "simple". */
public static final String CLASS_SIMPLE = "simple";
/** The array of pre-defined table CSS class styles. */
@@ -383,8 +385,8 @@ public class Table extends AbstractControl implements Stateful {
/**
* The table pagination banner position:
- * [ POSITION_TOP | POSITION_BOTTOM | POSITION_BOTH ].
- * The default position is POSITION_BOTTOM.
+ * [ POSITION_TOP | POSITION_BOTTOM | POSITION_BOTH ].
+ * The default position is POSITION_BOTTOM.
*/
protected int bannerPosition = POSITION_BOTTOM;
@@ -424,9 +426,9 @@ public class Table extends AbstractControl implements Stateful {
protected boolean hoverRows;
/**
- * Flag indicating if rowList is nullified when
- * onDestroy() is invoked, default is true. This flag only applies
- * to stateful pages.
+ * Flag indicating if rowList is nullified when
+ * onDestroy() is invoked, default is true. This flag only applies
+ * to stateful pages.
*
* @see #setNullifyRowListOnDestroy(boolean)
*
@@ -452,8 +454,8 @@ public class Table extends AbstractControl implements Stateful {
/**
* The paginator attachment style:
- * [ PAGINATOR_ATTACHED | PAGINATOR_DETACHED | PAGINATOR_INLINE ].
- * The default paginator attachment type is PAGINATOR_ATTACHED.
+ * [ PAGINATOR_ATTACHED | PAGINATOR_DETACHED | PAGINATOR_INLINE ].
+ * The default paginator attachment type is PAGINATOR_ATTACHED.
*/
protected int paginatorAttachment = PAGINATOR_ATTACHED;
@@ -508,7 +510,7 @@ public Table(String name) {
/**
* Create a Table with no name defined.
- *
+ *
* Please note the control's name must be defined before it is valid.
*/
public Table() {
@@ -518,7 +520,7 @@ public Table() {
// Public Attributes ------------------------------------------------------
/**
- * Return the table's html tag: table.
+ * Return the table's html tag: table.
*
* @see org.apache.click.control.AbstractControl#getTag()
*
@@ -537,7 +539,7 @@ public String getTag() {
* @param parent the parent of the Table
* @throws IllegalStateException if {@link #name} is not defined
* @throws IllegalArgumentException if the given parent instance is
- * referencing this object: if (parent == this)
+ * referencing this object: if (parent == this)
*/
@Override
public void setParent(Object parent) {
@@ -552,8 +554,8 @@ public void setParent(Object parent) {
/**
* Return the Table pagination banner position. Banner position values:
- * [ POSITION_TOP | POSITION_BOTTOM | POSITION_BOTH ].
- * The default banner position is POSITION_BOTTOM.
+ * [ POSITION_TOP | POSITION_BOTTOM | POSITION_BOTH ].
+ * The default banner position is POSITION_BOTTOM.
*
* @return the table pagination banner position
*/
@@ -563,7 +565,7 @@ public int getBannerPosition() {
/**
* Set Table pagination banner position. Banner position values:
- * [ POSITION_TOP | POSITION_BOTTOM | POSITION_BOTH ].
+ * [ POSITION_TOP | POSITION_BOTTOM | POSITION_BOTH ].
*
* @param value the table pagination banner position
*/
@@ -572,10 +574,10 @@ public void setBannerPosition(int value) {
}
/**
- * Return the content of the table <caption> element, or null
+ * Return the content of the table <caption> element, or null
* if not defined.
*
- * @return the content of the table caption element, or null if not
+ * @return the content of the table caption element, or null if not
* defined.
*/
public String getCaption() {
@@ -583,7 +585,7 @@ public String getCaption() {
}
/**
- * Set the content of the table <caption> element.
+ * Set the content of the table <caption> element.
*
* @param caption the content of the caption element.
*/
@@ -593,10 +595,10 @@ public void setCaption(String caption) {
/**
* Set the HTML class attribute.
- *
- * Note: this method will replace the existing "class"
+ *
+ * Note: this method will replace the existing "class"
* attribute value.
- *
+ *
* Predefined table CSS classes include:
*
* - complex
@@ -680,8 +682,8 @@ public void removeColumns(List columnNames) {
}
/**
- * Return true if the Table will nullify the rowList when the
- * onDestroy() method is invoked.
+ * Return true if the Table will nullify the rowList when the
+ * onDestroy() method is invoked.
*
* @return true if the rowList is nullified when onDestroy is invoked
*/
@@ -690,13 +692,13 @@ public boolean getNullifyRowListOnDestroy() {
}
/**
- * Set the flag to nullify the rowList when the onDestroy()
+ * Set the flag to nullify the rowList when the onDestroy()
* method is invoked.
- *
- * This option only applies to stateful pages.
- *
+ *
+ * This option only applies to stateful pages.
+ *
* If this option is false, the rowList will be persisted between requests.
- * If this option is true (the default), the rowList must be set
+ * If this option is true (the default), the rowList must be set
* each request.
*
* @param value the flag value to nullify the table rowList when onDestroy
@@ -790,7 +792,7 @@ public boolean hasControls() {
/**
* Return the table paging and sorting control action link.
- *
+ *
* Note you can set parameters on the returned ActionLink in order
* to preserve state when paging or sorting columns. A common use case is
* to filter out Table rows on specified criteria. See
@@ -818,10 +820,10 @@ public DataProvider getDataProvider() {
/**
* Set the table row list {@link DataProvider}.
* The Table will retrieve its data from the DataProvider on demand.
- *
+ *
* Please note: setting the dataProvider will nullify the table
* {@link #setRowList(List) rowList}.
- *
+ *
* Example usage:
*
*
@@ -840,16 +842,16 @@ public DataProvider getDataProvider() {
*
* For large data sets use a {@link PagingDataProvider}
* instead.
- *
+ *
* The Table methods {@link #getFirstRow()}, {@link #getLastRow()}
* and {@link #getPageSize()} provides the necessary information to limit
* the rows to the selected page. For sorting, the Table methods
* {@link #getSortedColumn()} and {@link #isSortedAscending()} provides the
* necessary information to sort the data.
- *
+ *
* Please note: when using a PagingDataProvider, you are responsible
* for sorting the data, as the Table does not have access to all the data.
- *
+ *
* Example usage:
*
*
@@ -942,7 +944,7 @@ public void setHoverRows(boolean hoverRows) {
* Return the Table HTML HEAD elements for the following resource:
*
*
- * - click/table.css
+ * click/table.css
*
*
* Additionally, the HEAD elements of the {@link #getControlLink()} will
@@ -1101,8 +1103,8 @@ public void setPaginator(Renderable value) {
/**
* Return the paginator attachment style. Renderable attachment style values:
- * [ PAGINATOR_ATTACHED | PAGINATOR_DETACHED | PAGINATOR_INLINE ].
- * The default paginator attachment type is PAGINATOR_ATTACHED.
+ * [ PAGINATOR_ATTACHED | PAGINATOR_DETACHED | PAGINATOR_INLINE ].
+ * The default paginator attachment type is PAGINATOR_ATTACHED.
*
* @return the paginator attachment style
*/
@@ -1112,7 +1114,7 @@ public int getPaginatorAttachment() {
/**
* Set Table pagination attachment style. Renderable attachment style values:
- * [ PAGINATOR_ATTACHED | PAGINATOR_DETACHED | PAGINATOR_INLINE ].
+ * [ PAGINATOR_ATTACHED | PAGINATOR_DETACHED | PAGINATOR_INLINE ].
*
* @param value the table pagination attachment style
*/
@@ -1152,7 +1154,7 @@ public void setRenderId(boolean renderId) {
/**
* Return the list of table rows. Please note the rowList is cleared in
* table {@link #onDestroy()} method at the end of each request.
- *
+ *
* If the rowList is null, this method delegates to {@link #createRowList()}
* to create a new row list.
*
@@ -1169,12 +1171,12 @@ public List getRowList() {
/**
* Set the list of table rows. Each row can either be a value object
- * (JavaBean) or an instance of a Map.
- *
+ * (JavaBean) or an instance of a Map.
+ *
* Although possible to set the table rows directly with this method, best
* practice is to use a {@link #setDataProvider(DataProvider)}
* instead.
- *
+ *
* Please note the rowList is cleared in table {@link #onDestroy()} method
* at the end of each request.
*
@@ -1385,7 +1387,7 @@ public void setWidth(String value) {
* The total possible number of rows of the table. This value
* could be much larger than the number of entries in the {@link #rowList},
* indicating that some rows have not been loaded yet.
- *
+ *
* This property is automatically set by the table to the appropriate value.
*
* @return the total possible number of rows of the table
@@ -1396,7 +1398,7 @@ public final int getRowCount() {
/**
* Return the index of the first row to display. Index starts from 0.
- *
+ *
* Note: {@link #setPageSize(int) page size} must be set for this
* method to correctly calculate the first row, otherwise this method will
* return 0.
@@ -1417,7 +1419,7 @@ public int getFirstRow() {
/**
* Return the index of the last row to display. Index starts from 0.
- *
+ *
* Note: the Table {@link #setRowList(List) row list} and
* {@link #setPageSize(int) page size} must be set for this method to
* correctly calculate the last row, otherwise this method will return 0.
@@ -1525,8 +1527,8 @@ public boolean onProcess() {
}
/**
- * This method will clear the rowList, if the property
- * nullifyRowListOnDestroy is true, set the sorted flag to false and
+ * This method will clear the rowList, if the property
+ * nullifyRowListOnDestroy is true, set the sorted flag to false and
* will invoke the onDestroy() method of any child controls.
*
* @see Control#onDestroy()
@@ -1660,7 +1662,7 @@ public void removeState(Context context) {
/**
* Restore the Table state from the session for the given request context.
- *
+ *
* This method delegates to {@link #setState(Object)} to set the
* table restored state.
*
@@ -1675,7 +1677,7 @@ public void restoreState(Context context) {
/**
* Save the Table state to the session for the given request context.
- *
+ *
* * This method delegates to {@link #getState()} to retrieve the table state
* to save.
*
@@ -1778,7 +1780,7 @@ protected void renderHeaderRow(HtmlStringBuffer buffer) {
}
/**
- * Render the table body rows for each of the rows in getRowList.
+ * Render the table body rows for each of the rows in getRowList.
*
* @param buffer the StringBuffer to render the table body rows in
*/
@@ -1905,7 +1907,7 @@ protected void renderBodyRows(HtmlStringBuffer buffer) {
/**
* Override this method to set HTML attributes for each Table row.
- *
+ *
* For example:
*
*
@@ -1928,8 +1930,8 @@ protected void renderBodyRows(HtmlStringBuffer buffer) {
* }
*
* Please note that in order to enable alternate background colors
- * for rows, Click will automatically add a CSS class attribute
- * to each row with a value of either odd or even. You are
+ * for rows, Click will automatically add a CSS class attribute
+ * to each row with a value of either odd or even. You are
* free to add other CSS class attributes as illustrated in the example
* above.
*
@@ -1943,9 +1945,9 @@ protected void addRowAttributes(Map attributes, Object row, int
/**
* Render the table header footer row. This method is designed to be
* overridden by Table subclasses which include a custom footer row.
- *
+ *
* By default this method does not render a table footer.
- *
+ *
* An example:
*
* private Table table;
@@ -1965,7 +1967,7 @@ protected void addRowAttributes(Map attributes, Object row, int
*
* public void renderTotalHoldingsFooter(HtmlStringBuffer buffer,) {
* double total = 0;
- * for (int i = 0; i < table.getRowList().size(); i++) {
+ * for (int i = 0; i < table.getRowList().size(); i++) {
* Customer customer = (Customer) table.getRowList().get(i);
* if (customer.getHoldings() != null) {
* total += customer.getHoldings().doubleValue();
@@ -1975,9 +1977,9 @@ protected void addRowAttributes(Map attributes, Object row, int
* String format = "<b>Total Holdings</b>: ${0,number,#,##0.00}";
* String totalDisplay = MessageFormat.format(format, new Object[] { new Double(total) });
*
- * buffer.append("<foot><tr><td colspan='4' style='text-align:right'>");
+ * buffer.append("<foot><tr><td colspan='4' style='text-align:right'>");
* buffer.append(totalDisplay);
- * buffer.append("</td></tr></tfoot>");
+ * buffer.append("</td></tr></tfoot>");
* }
*
*
@@ -2030,9 +2032,9 @@ protected void renderPaginator(HtmlStringBuffer buffer) {
/**
* Render the table banner detailing number of rows and number displayed.
- *
- * See the /click-controls.properties for the HTML templates:
- * table-page-banner and table-page-banner-nolinks
+ *
+ * See the /click-controls.properties for the HTML templates:
+ * table-page-banner and table-page-banner-nolinks
*
* @deprecated use {@link #renderPaginator(HtmlStringBuffer)} instead, this
* method is provided to support backward compatibility older Click 1.4
@@ -2072,9 +2074,9 @@ protected void renderTableBanner(HtmlStringBuffer buffer) {
/**
* Render the table paging action link controls.
- *
- * See the /click-controls.properties for the HTML templates:
- * table-page-links and table-page-links-nobanner
+ *
+ * See the /click-controls.properties for the HTML templates:
+ * table-page-links and table-page-links-nobanner
*
* @deprecated use {@link #renderPaginator(HtmlStringBuffer)} instead, this
* method is provided to support backward compatibility older Click 1.4
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/TablePaginator.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/TablePaginator.java
index 96cb60105c..5bae8ac148 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/TablePaginator.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/TablePaginator.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.control;
@@ -23,10 +24,11 @@
/**
* Provides the default Table Paginator.
*
- *
+ *
+ * Example
*
*
- *
+ *
*
*
*
@@ -198,7 +200,7 @@ public void render(HtmlStringBuffer buffer) {
/**
* Returns the HTML representation of this paginator.
- *
+ *
* This method delegates the rendering to the method
* {@link #render(HtmlStringBuffer)}.
*
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/TextArea.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/TextArea.java
index d6719f7b58..4ca617aaf8 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/TextArea.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/TextArea.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.control;
@@ -25,14 +26,15 @@
/**
* Provides a TextArea control: <textarea></textarea>.
*
- *
+ *
+ * Example
*
* Text Area
- *
+ * <textarea>Rather lengthy text</textarea>
*
*
*
- * TextArea Example
+ * TextArea Example
*
* The example below shows how to a TextArea to a Form:
*
@@ -47,7 +49,7 @@
* <textarea name="comments" rows="6" cols="40"/></textarea>
*
* See also the W3C HTML reference:
- * TEXTAREA
*/
public class TextArea extends Field {
@@ -199,7 +201,7 @@ public TextArea(String name, String label, int cols, int rows,
/**
* Create a TextArea with no name defined.
- *
+ *
* Please note the control's name must be defined before it is valid.
*/
public TextArea() {
@@ -209,7 +211,7 @@ public TextArea() {
// ------------------------------------------------------- Public Attributes
/**
- * Return the textarea's html tag: textarea.
+ * Return the textarea's html tag: textarea.
*
* @see org.apache.click.control.AbstractControl#getTag()
*
@@ -365,11 +367,11 @@ public void render(HtmlStringBuffer buffer) {
/**
* Validate the TextArea request submission.
- *
+ *
* A field error message is displayed if a validation error occurs.
* These messages are defined in the resource bundle:
* org.apache.click.control.MessageProperties
- *
+ *
* Error message bundle key names include:
* - field-maxlength-error
* - field-minlength-error
@@ -404,8 +406,8 @@ public void validate() {
/**
* Return the field JavaScript client side validation function.
- *
- * The function name must follow the format validate_[id], where
+ *
+ * The function name must follow the format validate_[id], where
* the id is the DOM element id of the fields focusable HTML element, to
* ensure the function has a unique name.
*
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/TextField.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/TextField.java
index 31cacfb082..a8cb7bbb52 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/control/TextField.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/control/TextField.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.control;
@@ -25,14 +26,15 @@
/**
* Provides a Text Field control: <input type='text'>.
*
- *
+ *
+ * Example
*
* Text Field
- *
+ * <input type='text' value='string'/>
*
*
*
- * TextField Example
+ * TextField Example
*
* The example below shows how to a TextField to a Form, and how it will be
* rendered as HTML.
@@ -52,9 +54,9 @@
*
* For another example using TextField see the {@link org.apache.click.control.Form}
* Javadoc example.
- *
+ *
* See also the W3C HTML reference:
- * INPUT
*/
public class TextField extends Field {
@@ -91,7 +93,7 @@ public class TextField extends Field {
/**
* The maximum field length validation constraint. If the value is zero this
* validation constraint is not applied. The default value is zero.
- *
+ *
* If maxLength is greater than zero, then maxLength is rendered as the
* HTML attribute 'maxlength'.
*/
@@ -183,7 +185,7 @@ public TextField(String name, String label, int size, boolean required) {
/**
* Create a TextField with no name defined.
- *
+ *
* Please note the control's name must be defined before it is valid.
*/
public TextField() {
@@ -192,7 +194,7 @@ public TextField() {
// ------------------------------------------------------ Public Attributes
/**
- * Return the textfield's html tag: input.
+ * Return the textfield's html tag: input.
*
* @see org.apache.click.control.AbstractControl#getTag()
*
@@ -207,7 +209,7 @@ public String getTag() {
* Returns the maximum field length validation constraint. If the
* {@link #maxLength} property is greater than zero, the Field values length
* will be validated against this constraint when processed.
- *
+ *
* If maxLength is greater than zero, it is rendered as the field
* attribute 'maxlength'
*
@@ -221,7 +223,7 @@ public int getMaxLength() {
* Sets the maximum field length. If the {@link #maxLength} property is
* greater than zero, the Field values length will be validated against
* this constraint when processed.
- *
+ *
* If maxLength is greater than zero, it is rendered as the field
* attribute 'maxlength'
*
@@ -272,9 +274,9 @@ public void setSize(int size) {
}
/**
- * Return the input type: 'text'.
+ * Return the input type: 'text'.
*
- * @return the input type: 'text'
+ * @return the input type: 'text'
*/
public String getType() {
return "text";
@@ -346,11 +348,11 @@ public void render(HtmlStringBuffer buffer) {
/**
* Validate the TextField request submission.
- *
+ *
* A field error message is displayed if a validation error occurs.
* These messages are defined in the resource bundle:
* org.apache.click.control.MessageProperties
- *
+ *
* Error message bundle key names include:
* - field-maxlength-error
* - field-minlength-error
@@ -384,8 +386,8 @@ public void validate() {
/**
* Return the field JavaScript client side validation function.
- *
- * The function name must follow the format validate_[id], where
+ *
+ * The function name must follow the format validate_[id], where
* the id is the DOM element id of the fields focusable HTML element, to
* ensure the function has a unique name.
*
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/element/CssImport.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/element/CssImport.java
index 46f75caefd..f4a1f56351 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/element/CssImport.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/element/CssImport.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.element;
@@ -26,9 +27,9 @@
import java.util.Map;
/**
- * Provides a Css HEAD element for importing external Cascading
+ * Provides a Css HEAD element for importing external Cascading
* Stylesheet files using the <link> tag.
- *
+ *
* Example usage:
*
* public class MyPage extends Page {
@@ -47,8 +48,8 @@
* }
* }
*
- * The cssImport instance will be rendered as follows (assuming the
- * context path is myApp):
+ * The cssImport instance will be rendered as follows (assuming the
+ * context path is myApp):
*
* <link type="text/css" rel="stylesheet" href="/myApp/css/style.css"/>
*/
@@ -60,7 +61,7 @@ public class CssImport extends ResourceElement {
/**
* Constructs a new Css import element.
- *
+ *
* The CssImport {@link #setVersionIndicator(String) version indicator}
* will automatically be set to the
* {@link ClickUtils#getApplicationResourceVersionIndicator() application version indicator}.
@@ -70,16 +71,16 @@ public CssImport() {
}
/**
- * Construct a new Css import element with the specified href
+ * Construct a new Css import element with the specified href
* attribute.
- *
+ *
* The CssImport {@link #setVersionIndicator(String) version indicator}
* will automatically be set to the
* {@link ClickUtils#getApplicationResourceVersionIndicator() application version indicator}.
- *
- * Please note if the given href begins with a
- * "/" character the href will be prefixed with the web
- * application context path.
+ *
+ * Please note if the given href begins with a
+ * "/" character the href will be prefixed with the web
+ * application context path.
*
* @param href the Css import href attribute
*/
@@ -88,17 +89,17 @@ public CssImport(String href) {
}
/**
- * Construct a new Css import element with the specified href
+ * Construct a new Css import element with the specified href
* attribute.
- *
+ *
* If useApplicationVersionIndicator is true the
* CssImport {@link #setVersionIndicator(String) version indicator}
* will automatically be set to the
* {@link ClickUtils#getApplicationResourceVersionIndicator() application version indicator}.
- *
- * Please note if the given href begins with a
- * "/" character the href will be prefixed with the web
- * application context path.
+ *
+ * Please note if the given href begins with a
+ * "/" character the href will be prefixed with the web
+ * application context path.
*
* @param href the Css import href attribute
* @param useApplicationVersionIndicator indicates whether the version
@@ -112,12 +113,12 @@ public CssImport(String href, boolean useApplicationVersionIndicator) {
}
/**
- * Construct a new Css import element with the specified href
+ * Construct a new Css import element with the specified href
* attribute and version indicator.
- *
- * Please note if the given href begins with a
- * "/" character the href will be prefixed with the web
- * application context path.
+ *
+ * Please note if the given href begins with a
+ * "/" character the href will be prefixed with the web
+ * application context path.
*
* @param href the Css import href attribute
* @param versionIndicator the version indicator to add to the href path
@@ -143,12 +144,12 @@ public String getTag() {
/**
* This method always return true because Css import must be unique based on
- * its href attribute. In other words the Page HEAD should only
- * contain a single CSS import for the specific href.
+ * its href attribute. In other words the Page HEAD should only
+ * contain a single CSS import for the specific href.
*
* @see ResourceElement#isUnique()
*
- * @return true because Css import must unique based on its href
+ * @return true because Css import must unique based on its href
* attribute
*/
@Override
@@ -157,12 +158,12 @@ public boolean isUnique() {
}
/**
- * Sets the href attribute. If the given href argument is
- * null, the href attribute will be removed.
- *
- * If the given href begins with a "/" character
- * the href will be prefixed with the web applications context path.
- * Note if the given href is already prefixed with the context path,
+ * Sets the href attribute. If the given href argument is
+ * null, the href attribute will be removed.
+ *
+ * If the given href begins with a "/" character
+ * the href will be prefixed with the web applications context path.
+ * Note if the given href is already prefixed with the context path,
* Click won't add it a second time.
*
* @param href the new href attribute
@@ -189,7 +190,7 @@ public void setHref(String href) {
}
/**
- * Return the href attribute.
+ * Return the href attribute.
*
* @return the href attribute
*/
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/element/CssStyle.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/element/CssStyle.java
index 6446e0d406..56d1b30011 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/element/CssStyle.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/element/CssStyle.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.element;
@@ -26,9 +27,9 @@
import java.util.Map;
/**
- * Provides a Css HEAD element for including inline Cascading
+ * Provides a Css HEAD element for including inline Cascading
* Stylesheets using the <style> tag.
- *
+ *
* Example usage:
*
*
@@ -48,7 +49,7 @@
* }
* }
*
- * The cssStyle instance will render as follows:
+ * The cssStyle instance will render as follows:
*
*
* <style type="text/css">
@@ -57,10 +58,10 @@
*
* Below is an example showing how to render inline CSS from a Velocity
* template.
- *
- * First we create a Velocity template (/css/style-template.css) which
- * contains the variable $context that must be replaced at runtime with
- * the application context path:
+ *
+ * First we create a Velocity template (/css/style-template.css) which
+ * contains the variable $context that must be replaced at runtime with
+ * the application context path:
*
*
* .blue {
@@ -95,8 +96,8 @@
* }
* }
*
- * The Css above will render as follows (assuming the context path is
- * myApp):
+ * The Css above will render as follows (assuming the context path is
+ * myApp):
*
*
* <style type="text/css">
@@ -105,9 +106,9 @@
* }
* </style>
*
- * Character data (CDATA) support
+ * Character data (CDATA) support
*
- * Sometimes it is necessary to wrap inline {@link CssStyle Css} in
+ * Sometimes it is necessary to wrap inline {@link CssStyle Css} in
* CDATA tags. Two use cases are common for doing this:
*
* - For XML parsing: When using Ajax one often send back partial
@@ -138,7 +139,7 @@
* Notice the CDATA tags are commented out which ensures older browsers that
* don't understand the CDATA tag, will ignore it and only process the actual
* content.
- *
+ *
* For an overview of XHTML validation and CDATA tags please see
* http://javascript.about.com/library/blxhtml.htm.
*/
@@ -186,11 +187,11 @@ public CssStyle(String content) {
/**
* Construct a new Css style element for the given template path
* and template model.
- *
+ *
* When the CssStyle is rendered the template and model will be merged and
* the result will be rendered together with any CssStyle
* {@link #setContent(String) content}.
- *
+ *
*
* For example:
*
@@ -283,7 +284,7 @@ public String getTemplate() {
/**
* Set the path of the template to render.
- *
+ *
* If the {@link #template} property is set, the template and {@link #model}
* will be merged and the result will be rendered together with any CssStyle
* {@link #setContent(String) content}.
@@ -308,7 +309,7 @@ public Map getModel() {
/**
* Set the model of the template to render.
- *
+ *
* If the {@link #template} property is set, the template and {@link #model}
* will be merged and the result will be rendered together with any CssStyle
* {@link #setContent(String) content}.
@@ -408,7 +409,7 @@ public int hashCode() {
/**
* Render the CssStyle {@link #setContent(String) content}
* to the specified buffer.
- *
+ *
* Please note: if the {@link #setTemplate(String) template}
* property is set, this method will merge the {@link #setTemplate(String) template}
* and {@link #setModel(Map) model} and the result will be
@@ -440,7 +441,7 @@ protected void renderContent(HtmlStringBuffer buffer) {
/**
* Render the CDATA tag prefix to the specified buffer if
* {@link #isCharacterData()} returns true. The default value is
- * /∗<![CDATA[∗/.
+ * /∗<![CDATA[∗/.
*
* @param buffer buffer to append the conditional comment prefix
*/
@@ -454,7 +455,7 @@ void renderCharacterDataPrefix(HtmlStringBuffer buffer) {
/**
* Render the CDATA tag suffix to the specified buffer if
* {@link #isCharacterData()} returns true. The default value is
- * /∗]]>∗/.
+ * /∗]]>∗/.
*
* @param buffer buffer to append the conditional comment prefix
*/
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/element/Element.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/element/Element.java
index d4f3cdc236..974d8a665c 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/element/Element.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/element/Element.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.element;
@@ -29,7 +30,7 @@
* Provides a base class for rendering HTML elements, for example
* JavaScript (<script>) and Cascading Stylesheets
* (<link> / <style>).
- *
+ *
* Subclasses should override {@link #getTag()} to return a specific HTML tag.
*/
public class Element implements Serializable {
@@ -44,8 +45,8 @@ public class Element implements Serializable {
// Public Properties ------------------------------------------------------
/**
- * Returns the Element HTML tag, the default value is null.
- *
+ * Returns the Element HTML tag, the default value is null.
+ *
* Subclasses should override this method and return the correct tag.
*
* @return this Element HTML tag
@@ -154,7 +155,7 @@ public Context getContext() {
/**
* Render the HTML representation of the Element to the specified buffer.
- *
+ *
* If {@link #getTag()} returns null, this method will return an empty
* string.
*
@@ -201,10 +202,10 @@ protected void appendAttributes(HtmlStringBuffer buffer) {
/**
* Render the specified {@link #getTag() tag} and {@link #getAttributes()}.
- *
+ *
* Please note: the tag will not be closed by this method. This
* enables callers of this method to append extra attributes as needed.
- *
+ *
* For example the result of calling:
*
* Field field = new TextField("mytext");
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/element/JsImport.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/element/JsImport.java
index 8c2b84fb30..26fcc12ecd 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/element/JsImport.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/element/JsImport.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.element;
@@ -26,9 +27,9 @@
import java.util.Map;
/**
- * Provides a JavaScript HEAD element for importing external JavaScript
+ * Provides a JavaScript HEAD element for importing external JavaScript
* files using the <script> tag.
- *
+ *
* Example usage:
*
* public class MyPage extends Page {
@@ -47,8 +48,8 @@
* }
* }
*
- * The jsImport instance will be rendered as follows (assuming the context
- * path is myApp):
+ * The jsImport instance will be rendered as follows (assuming the context
+ * path is myApp):
*
* <script type="text/javascript" href="/myApp/js/js-library.js"></script>
*/
@@ -60,7 +61,7 @@ public class JsImport extends ResourceElement {
/**
* Constructs a new JavaScript import element.
- *
+ *
* The JsImport {@link #setVersionIndicator(String) version indicator}
* will automatically be set to the
* {@link ClickUtils#getApplicationResourceVersionIndicator() application version indicator}.
@@ -71,15 +72,15 @@ public JsImport() {
/**
* Construct a new JavaScript import element with the specified
- * src attribute.
- *
+ * src attribute.
+ *
* The JsImport {@link #setVersionIndicator(String) version indicator}
* will automatically be set to the
* {@link ClickUtils#getApplicationResourceVersionIndicator() application version indicator}.
- *
- * Please note if the given src begins with a
- * "/" character the src will be prefixed with the web
- * application context path.
+ *
+ * Please note if the given src begins with a
+ * "/" character the src will be prefixed with the web
+ * application context path.
*
* @param src the JavaScript import src attribute
*/
@@ -88,17 +89,17 @@ public JsImport(String src) {
}
/**
- * Construct a new JavaScript import element with the specified src
+ * Construct a new JavaScript import element with the specified src
* attribute.
- *
+ *
* If useApplicationVersionIndicator is true the
* {@link #setVersionIndicator(String) version indicator} will
* automatically be set to the
* {@link ClickUtils#getApplicationResourceVersionIndicator() application version indicator}.
- *
- * Please note if the given src begins with a
- * "/" character the src will be prefixed with the web
- * application context path.
+ *
+ * Please note if the given src begins with a
+ * "/" character the src will be prefixed with the web
+ * application context path.
*
* @param src the JavaScript import src attribute
* @param useApplicationVersionIndicator indicates whether the version
@@ -112,12 +113,12 @@ public JsImport(String src, boolean useApplicationVersionIndicator) {
}
/**
- * Construct a new JavaScript import element with the specified src
+ * Construct a new JavaScript import element with the specified src
* attribute and version indicator.
- *
- * Please note if the given src begins with a
- * "/" character the src will be prefixed with the web
- * application context path.
+ *
+ * Please note if the given src begins with a
+ * "/" character the src will be prefixed with the web
+ * application context path.
*
* @param src the JsImport src attribute
* @param versionIndicator the version indicator to add to the src path
@@ -142,13 +143,13 @@ public String getTag() {
/**
* This method always return true because a JavaScript import must be unique
- * based on its src attribute. In other words the Page HEAD should
- * only contain a single JavaScript import for the specific src.
+ * based on its src attribute. In other words the Page HEAD should
+ * only contain a single JavaScript import for the specific src.
*
* @see ResourceElement#isUnique()
*
* @return true because JavaScript import must unique based on its
- * src attribute
+ * src attribute
*/
@Override
public boolean isUnique() {
@@ -156,12 +157,12 @@ public boolean isUnique() {
}
/**
- * Sets the src attribute. If the given src argument is
- * null, the src attribute will be removed.
- *
- * If the given src begins with a "/" character
- * the src will be prefixed with the web application context path.
- * Note if the given src is already prefixed with the context path,
+ * Sets the src attribute. If the given src argument is
+ * null, the src attribute will be removed.
+ *
+ * If the given src begins with a "/" character
+ * the src will be prefixed with the web application context path.
+ * Note if the given src is already prefixed with the context path,
* Click won't add it a second time.
*
* @param src the new src attribute
@@ -188,7 +189,7 @@ public void setSrc(String src) {
}
/**
- * Return the src attribute.
+ * Return the src attribute.
*
* @return the src attribute
*/
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/element/JsScript.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/element/JsScript.java
index 92f8f98ec9..0ccee93ee0 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/element/JsScript.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/element/JsScript.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.element;
@@ -26,9 +27,9 @@
import java.util.Map;
/**
- * Provides a HEAD element for including inline JavaScript using the
+ * Provides a HEAD element for including inline JavaScript using the
* <script> tag.
- *
+ *
* Example usage:
*
*
@@ -48,7 +49,7 @@
* }
* }
*
- * The jsScript instance will be rendered as follows:
+ * The jsScript instance will be rendered as follows:
*
*
* <script type="text/javascript">
@@ -57,9 +58,9 @@
*
* Below is an example showing how to render inline Javascript from a
* Velocity template.
- *
- * First we create a Velocity template (/js/mycorp-template.js) which
- * contains the variable $divId that must be replaced at runtime with
+ *
+ * First we create a Velocity template (/js/mycorp-template.js) which
+ * contains the variable $divId that must be replaced at runtime with
* the real Div ID attribute:
*
*
@@ -97,8 +98,8 @@
* }
* }
*
- * The jsScript instance will render as follows (assuming the context
- * path is myApp):
+ * The jsScript instance will render as follows (assuming the context
+ * path is myApp):
*
*
* <script type="text/javascript">
@@ -108,9 +109,9 @@
* }
* </style>
*
- * Character data (CDATA) support
+ * Character data (CDATA) support
*
- * Sometimes it is necessary to wrap inline {@link JsScript JavaScript}
+ * Sometimes it is necessary to wrap inline {@link JsScript JavaScript}
* in CDATA tags. Two use cases are common for doing this:
*
* - For XML parsing: When using Ajax one often send back partial
@@ -139,7 +140,7 @@
* Notice the CDATA tags are commented out which ensures older browsers that
* don't understand the CDATA tag, will ignore it and only process the actual
* content.
- *
+ *
* For an overview of XHTML validation and CDATA tags please see
* http://javascript.about.com/library/blxhtml.htm.
*/
@@ -193,11 +194,11 @@ public JsScript(String content) {
/**
* Construct a new inline JavaScript element for the given template path
* and template model.
- *
+ *
* When the JsScript is rendered the template and model will be merged and
* the result will be rendered together with any JsScript
* {@link #setContent(String) content}.
- *
+ *
*
* For example:
*
@@ -292,18 +293,18 @@ public boolean isExecuteOnDomReady() {
/**
* Sets whether the JsScript content must be executed as soon as the browser
* DOM is ready.
- *
+ *
* If this flag is true, the JsScript content will be registered with
- * the "Click.addLoadEvent" function from the JavaScript file
- * "/click/control.js".
- *
+ * the "Click.addLoadEvent" function from the JavaScript file
+ * "/click/control.js".
+ *
* Please note: when setting this flag to true, the JavaScript
- * file "/click/control.js" must already be included in the Page or
+ * file "/click/control.js" must already be included in the Page or
* Control, it won't be included automatically.
- *
+ *
* Also note: for {@link Context#isAjaxRequest() Ajax}
* requests the JsScript content won't be registered with the
- * "Click.addLoadEvent" function because Ajax requests does not trigger
+ * "Click.addLoadEvent" function because Ajax requests does not trigger
* the browser's DOM loaded event. Instead the JsScript content will be
* evaluated immediately by the browser.
*
@@ -327,7 +328,7 @@ public String getTemplate() {
/**
* Set the path of the template to render.
- *
+ *
* If the {@link #template} property is set, the template and {@link #model}
* will be merged and the result will be rendered together with any JsScript
* {@link #setContent(String) content}.
@@ -352,7 +353,7 @@ public Map getModel() {
/**
* Set the model of the template to render.
- *
+ *
* If the {@link #template} property is set, the template and {@link #model}
* will be merged and the result will be rendered together with any JsScript
* {@link #setContent(String) content}.
@@ -466,7 +467,7 @@ public int hashCode() {
/**
* Render the JsScript {@link #setContent(String) content}
* to the specified buffer.
- *
+ *
* Please note: if the {@link #setTemplate(String) template}
* property is set, this method will merge the {@link #setTemplate(String) template}
* and {@link #setModel(Map) model} and the result will be
@@ -494,9 +495,9 @@ protected void renderContent(HtmlStringBuffer buffer, Context context) {
}
/**
- * Render the "Click.addLoadEvent" function prefix to ensure the script
+ * Render the "Click.addLoadEvent" function prefix to ensure the script
* is executed as soon as the browser DOM is available. The prefix is
- * "Click.addLoadEvent(function(){".
+ * "Click.addLoadEvent(function(){".
*
* @see #renderDomReadySuffix(HtmlStringBuffer)
*
@@ -510,8 +511,8 @@ protected void renderDomReadyPrefix(HtmlStringBuffer buffer) {
}
/**
- * Render the "Click.addLoadEvent" function suffix. The suffix is
- * "});".
+ * Render the "Click.addLoadEvent" function suffix. The suffix is
+ * "});".
*
* @see #renderDomReadyPrefix(HtmlStringBuffer)
*
@@ -529,7 +530,7 @@ protected void renderDomReadySuffix(HtmlStringBuffer buffer) {
/**
* Render the CDATA tag prefix to the specified buffer if
* {@link #isCharacterData()} returns true. The prefix is
- * /∗<![CDATA[∗/.
+ * /∗<![CDATA[∗/.
*
* @see #renderCharacterDataSuffix(HtmlStringBuffer)
*
@@ -545,7 +546,7 @@ void renderCharacterDataPrefix(HtmlStringBuffer buffer) {
/**
* Render the CDATA tag suffix to the specified buffer if
* {@link #isCharacterData()} returns true. The prefix is
- * /∗]]>∗/.
+ * /∗]]>∗/.
*
* @see #renderCharacterDataPrefix(HtmlStringBuffer)
*
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/element/ResourceElement.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/element/ResourceElement.java
index bb5468620e..329fad7f77 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/element/ResourceElement.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/element/ResourceElement.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.element;
@@ -28,28 +29,28 @@
* Provides a base class for rendering HEAD resources of an HTML page, for
* example JavaScript (<script>) and Cascading Stylesheets
* (<link>/<style>).
- *
+ *
* Subclasses should override {@link #getTag()} to return a specific HTML tag.
- *
+ *
* Below are some example Resource elements:
*
- * - {@link JsImport}, for importing external JavaScript using the
+ *
- {@link JsImport}, for importing
external JavaScript using the
* <script> element.
- * - {@link JsScript}, for including inline JavaScript using the
+ *
- {@link JsScript}, for including
inline JavaScript using the
* <script> element.
- * - {@link org.apache.click.element.CssImport}, for importing external Cascading Stylesheets
+ *
- {@link org.apache.click.element.CssImport}, for importing
external Cascading Stylesheets
* using the <link> element.
- * - {@link CssStyle}, for including inline Cascading Stylesheets
+ *
- {@link CssStyle}, for including
inline Cascading Stylesheets
* using the <style> element.
*
*
- *
- * Remove duplicates
+ *
+ * Remove duplicates
* Click will ensure that duplicate Resource elements are removed by checking
* the {@link #isUnique()} property. Thus if the same Resource is imported
* multiple times by the Page or different Controls, only one Resource will be
- * rendered, if {@link #isUnique()} returns true.
- *
+ * rendered, if {@link #isUnique()} returns true.
+ *
* The rules for defining a unique Resource is as follows:
*
* - {@link JsImport} and {@link org.apache.click.element.CssImport} is unique based on the
@@ -101,8 +102,8 @@
* }
* }
*
- *
- * Automatic Resource versioning
+ *
+ * Automatic Resource versioning
*
* ResourceElement provides the ability to automatically version elements
* according to Yahoo Performance Rule: Add an Expires or a Cache-Control Header.
@@ -111,15 +112,15 @@
* suggests versioning the resources so that each new release of the
* web application renders resources with different paths, forcing the browser
* to download the new resources.
- *
+ *
* For detailed information on versioning JavaScript, Css and image resources
* see the PerformanceFilter.
- *
+ *
* To enable versioning of JavaScript, Css and image resources the following
* conditions must be met:
*
* - the {@link org.apache.click.util.ClickUtils#ENABLE_RESOURCE_VERSION}
- * request attribute must be set to true
+ * request attribute must be set to true
* - the application mode must be either "production" or "profile"
* - the {@link org.apache.click.util.ClickUtils#setApplicationVersion(String)
* application version} must be set
@@ -127,19 +128,19 @@
* Please note: PerformanceFilter
* handles the above steps for you.
*
- *
- * Conditional comment support for Internet Explorer
+ *
+ * Conditional comment support for Internet Explorer
*
* Sometimes it is necessary to provide additional JavaScript and Css for
* Internet Explorer because it deviates quite often from the standards.
- *
+ *
* Conditional comments allows you to wrap the resource in a special comment
* which only IE understands, meaning other browsers won't process the resource.
- *
+ *
* You can read more about conditional comments
* here
* and here
- *
+ *
* It has to be said that IE7 and up has much better support for Css, thus
* conditional comments are mostly used for IE6 and below.
*
@@ -178,31 +179,31 @@ public class ResourceElement extends Element {
/**
* A predefined conditional comment to test if browser is IE. Value:
- * [if IE].
+ * [if IE].
*/
public static final String IF_IE = "[if IE]";
/**
* A predefined conditional comment to test if browser is less than IE7.
- * Value: [if lt IE 7].
+ * Value: [if lt IE 7].
*/
public static final String IF_LESS_THAN_IE7 = "[if lt IE 7]";
/**
* A predefined conditional comment to test if browser is IE7. Value:
- * [if IE 7].
+ * [if IE 7].
*/
public static final String IF_IE7 = "[if IE 7]";
/**
* A predefined conditional comment to test if browser is less than
- * or equal to IE7. Value: [if lte IE 7].
+ * or equal to IE7. Value: [if lte IE 7].
*/
public static final String IF_LESS_THAN_OR_EQUAL_TO_IE7 = "[if lte IE 7]";
/**
* A predefined conditional comment to test if browser is less than IE9.
- * Value: [if lt IE 9].
+ * Value: [if lt IE 9].
*/
public static final String IF_LESS_THAN_IE9 = "[if lt IE 9]";
@@ -215,22 +216,22 @@ public class ResourceElement extends Element {
/**
* Indicates whether the {@link #getId() ID} attribute should be rendered
- * or not, default value is true.
+ * or not, default value is true.
*/
private boolean renderId = true;
/**
- * The version indicator to append to the Resource element.
+ * The version indicator to append to the Resource element.
*/
private String versionIndicator;
// ------------------------------------------------------ Public properties
/**
- * Return the version indicator to be appended to the resource
+ * Return the version indicator to be appended to the resource
* path.
*
- * @return the version indicator to be appended to the resource
+ * @return the version indicator to be appended to the resource
* path.
*/
public String getVersionIndicator() {
@@ -238,7 +239,7 @@ public String getVersionIndicator() {
}
/**
- * Set the version indicator to be appended to the resource path.
+ * Set the version indicator to be appended to the resource path.
*
* @param versionIndicator the version indicator to be appended to the
* resource path
@@ -249,7 +250,7 @@ public void setVersionIndicator(String versionIndicator) {
/**
* Returns whether or not the Resource unique. This method returns
- * true if the {@link #getId() ID} attribute is defined,
+ * true if the {@link #getId() ID} attribute is defined,
* false otherwise.
*
* @return true if the Resource should be unique, false otherwise.
@@ -279,7 +280,7 @@ public boolean isRenderId() {
/**
* Set the element render {@link #getId() ID} attribute status.
- *
+ *
* If renderId is false the element {@link #getId() ID} attribute will not
* be rendered.
*
@@ -290,7 +291,7 @@ public void setRenderId(boolean renderId) {
}
/**
- * Return Internal Explorer's conditional comment to wrap the
+ * Return Internal Explorer's conditional comment to wrap the
* Resource with.
*
* @return Internal Explorer's conditional comment to wrap the Resource with.
@@ -314,7 +315,7 @@ public void setConditionalComment(String conditionalComment) {
/**
* Render the HTML representation of the Resource element to the specified
* buffer.
- *
+ *
* If {@link #getTag()} returns null, this method will return an empty
* string.
*
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/service/ClickResourceService.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/service/ClickResourceService.java
index 27c63ad070..a58bcc8696 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/service/ClickResourceService.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/service/ClickResourceService.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.service;
@@ -39,7 +40,7 @@
* serve static resources contained in the web applications JARs, under the
* resource path META-INF/resources and which are contained under the WAR file
* web root.
- *
+ *
* This service is useful for application servers which do not allow Click to
* automatically deploy resources to the web root directory.
*/
@@ -131,17 +132,17 @@ public void renderResource(HttpServletRequest request, HttpServletResponse respo
/**
* Return the list of directories that contains cacheable resources.
- *
- * By default only resource packaged under the "/click" directory
+ *
+ * By default only resource packaged under the "/click" directory
* will be processed. To serve resources from other directories you need to
* override this method and return a list of directories to process.
- *
+ *
* For example:
*
*
* public class MyResourceService extends ClickResourceService {
*
- * protected List getCacheableDirs() {
+ * protected List<String> getCacheableDirs() {
* // Get default dirs which includes /click
* List list = super.getCacheableDirs();
*
@@ -152,7 +153,7 @@ public void renderResource(HttpServletRequest request, HttpServletResponse respo
* }
* }
*
- * You also need to add a mapping in your web.xml to forward
+ * You also need to add a mapping in your web.xml to forward
* requests for these resources on to Click:
*
*
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/service/ConfigService.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/service/ConfigService.java
index 52454c380c..5189e374ff 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/service/ConfigService.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/service/ConfigService.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.service;
@@ -32,28 +33,28 @@
/**
* Provides a Click application configuration service interface.
- *
+ *
* A single application ConfigService instance is created by the ClickServlet at
* startup. Once the ConfigService has been initialized it is stored in the
* ServletContext using the key {@value #CONTEXT_NAME}.
*
- *
- *
Configuration
+ *
+ * Configuration
* The default ConfigService is {@link XmlConfigService}.
- *
+ *
* However it is possible to specify a different implementation.
- *
+ *
* For example you can subclass XmlConfigService and override methods such as
* {@link #onInit(jakarta.servlet.ServletContext)} to alter initialization
* behavior.
- *
+ *
* For Click to recognize your custom service class you must set the
* context initialization parameter,
* {@link org.openidentityplatform.openam.click.ClickServlet#CONFIG_SERVICE_CLASS config-service-class}
- * in your web.xml file.
- *
+ * in your web.xml file.
+ *
* Below is an example of a custom service class
- * com.mycorp.service.CustomConfigService:
+ * com.mycorp.service.CustomConfigService:
*
*
* package com.mycorp.service;
@@ -75,8 +76,8 @@
*
* Please note that the custom ConfigService implementation must have a
* no-argument constructor so Click can instantiate the service.
- *
- * Also define the new service in your web.xml as follows:
+ *
+ * Also define the new service in your web.xml as follows:
*
*
* {@code
@@ -113,10 +114,10 @@ public interface ConfigService {
/** The profile application mode. */
public static final String MODE_PRODUCTION = "production";
- /** The error page file path: "/click/error.htm". */
+ /** The error page file path: "/click/error.htm". */
static final String ERROR_PATH = "/click/error.htm";
- /** The page not found file path: "/click/not-found.htm". */
+ /** The page not found file path: "/click/not-found.htm". */
public static final String NOT_FOUND_PATH = "/click/not-found.htm";
/** The page auto binding mode. */
@@ -131,7 +132,7 @@ public enum AutoBinding { DEFAULT, ANNOTATION, NONE };
/**
* Initialize the ConfigurationService with the given application servlet context.
- *
+ *
* This method is invoked after the ConfigurationService has been constructed.
*
* @param servletContext the application servlet context
@@ -141,9 +142,9 @@ public enum AutoBinding { DEFAULT, ANNOTATION, NONE };
/**
* Destroy the ConfigurationService. This method will also invoke the
- * onDestroy() methods on the FileUploadService,
- * TemplateService, ResourceService and the
- * LogService in that order.
+ * onDestroy() methods on the FileUploadService,
+ * TemplateService, ResourceService and the
+ * LogService in that order.
*/
public void onDestroy();
@@ -185,7 +186,7 @@ public enum AutoBinding { DEFAULT, ANNOTATION, NONE };
/**
* Return the Click application mode value:
- * ["production", "profile", "development", "debug", "trace"].
+ * ["production", "profile", "development", "debug", "trace"].
*
* @return the application mode value
*/
@@ -199,9 +200,9 @@ public enum AutoBinding { DEFAULT, ANNOTATION, NONE };
public String getCharset();
/**
- * Return the error handling page Page Class.
+ * Return the error handling page Page Class.
*
- * @return the error handling page Page Class
+ * @return the error handling page Page Class
*/
public Class extends Page> getErrorPageClass();
@@ -223,8 +224,8 @@ public enum AutoBinding { DEFAULT, ANNOTATION, NONE };
/**
* Return true if the given resource is a Page class template, false
* otherwise.
- *
- * Below is an example showing how to map .htm and .jsp
+ *
+ * Below is an example showing how to map .htm and .jsp
* files as Page class templates.
*
*
@@ -289,8 +290,8 @@ public enum AutoBinding { DEFAULT, ANNOTATION, NONE };
public String getPagePath(Class extends Page> pageClass);
/**
- * Return the page Class for the given path. The path must start
- * with a "/".
+ * Return the page Class for the given path. The path must start
+ * with a "/".
*
* @param path the page path
* @return the page class for the given path
@@ -348,9 +349,9 @@ public enum AutoBinding { DEFAULT, ANNOTATION, NONE };
public List getPageInterceptors();
/**
- * Return the page not found Page Class.
+ * Return the page not found Page Class.
*
- * @return the page not found Page Class
+ * @return the page not found Page Class
*/
public Class extends Page> getNotFoundPageClass();
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/service/ConsoleLogService.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/service/ConsoleLogService.java
index bd134dd20b..00e58c8d3c 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/service/ConsoleLogService.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/service/ConsoleLogService.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.service;
@@ -23,10 +24,10 @@
/**
* Provides a Log Service class which will log messages to the console or
- * System.out.
- *
+ * System.out.
+ *
* ConsoleLogService is the default {@link LogService} for Click.
- *
+ *
* However you can instruct Click to use a different log service implementation.
* Please see {@link LogService} for more details.
*/
@@ -80,7 +81,7 @@ public void onDestroy() {
/**
* Set the logging level
- * [ TRACE_LEVEL | DEBUG_LEVEL | INFO_LEVEL | WARN_LEVEL | ERROR_LEVEL ].
+ * [ TRACE_LEVEL | DEBUG_LEVEL | INFO_LEVEL | WARN_LEVEL | ERROR_LEVEL ].
*
* @param level the logging level
*/
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/service/FileUploadService.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/service/FileUploadService.java
index 5fc61f5c02..ea48d96490 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/service/FileUploadService.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/service/FileUploadService.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.service;
@@ -37,9 +38,9 @@ public interface FileUploadService {
/**
* Initialize the FileUploadService with the given application servlet context.
- *
+ *
* This method is invoked after the FileUploadService has been constructed.
- *
+ *
* Note you can access {@link ConfigService} by invoking
* {@link org.openidentityplatform.openam.click.util.ClickUtils#getConfigService(jakarta.servlet.ServletContext)}
*
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/service/LogService.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/service/LogService.java
index 75495344af..2c1a1ac86c 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/service/LogService.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/service/LogService.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.service;
@@ -24,11 +25,11 @@
/**
* Provides a logging service for the Click runtime.
*
- *
Configuration
+ * Configuration
* The default {@link org.apache.click.service.LogService} implementation is {@link ConsoleLogService}.
- *
+ *
* You can instruct Click to use a different implementation by adding
- * the following element to your click.xml configuration file.
+ * the following element to your click.xml configuration file.
*
*
* <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
@@ -40,7 +41,7 @@
*
* </click-app>
*
- * The class com.mycorp.CustomLogService might be defined as follows:
+ * The class com.mycorp.CustomLogService might be defined as follows:
*
*
* package com.mycorp;
@@ -59,7 +60,7 @@ public interface LogService {
/**
* Initialize the LogService with the given application servlet context.
- *
+ *
* This method is invoked after the LogService has been constructed.
*
* @param servletContext the application servlet context
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/service/MessagesMapService.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/service/MessagesMapService.java
index 8cd1ec13f2..f7933ba22c 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/service/MessagesMapService.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/service/MessagesMapService.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.service;
@@ -28,11 +29,11 @@
/**
* Provides a messages map factory service for the Click runtime.
*
- *
Configuration
+ * Configuration
* The default {@link org.apache.click.service.MessagesMapService} implementation is {@link DefaultMessagesMapService}.
- *
+ *
* You can instruct Click to use a different implementation by adding
- * the following element to your click.xml configuration file.
+ * the following element to your click.xml configuration file.
*
*
* <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
@@ -44,14 +45,14 @@
*
* </click-app>
*
- * The class com.mycorp.CustomMessagesMapService might be defined as follows:
+ * The class com.mycorp.CustomMessagesMapService might be defined as follows:
*
*
* package com.mycorp;
*
* public class CustomMessagesMapService implements MessagesMapService {
*
- * public Map createMessagesMap(Class<?> baseClass, String globalResource, Locale locale) {
+ * public Map<String, String> createMessagesMap(Class<?> baseClass, String globalResource, Locale locale) {
* return new MyMessagesMap(baseClass, globalResource, locale);
* }
* }
@@ -60,7 +61,7 @@ public interface MessagesMapService {
/**
* Initialize the MessagesMapService with the given application servlet context.
- *
+ *
* This method is invoked after the MessagesMapService has been constructed.
*
* @param servletContext the application servlet context
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/service/ResourceService.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/service/ResourceService.java
index 50c6cf5c2e..a3c6a060d1 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/service/ResourceService.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/service/ResourceService.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.service;
@@ -29,11 +30,11 @@
/**
* Provides a static resource service interface.
*
- *
Configuration
+ * Configuration
* The default ResourceService is {@link ClickResourceService}.
- *
+ *
* However you can instruct Click to use a different implementation by adding
- * the following element to your click.xml configuration file.
+ * the following element to your click.xml configuration file.
*
*
* <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
@@ -50,7 +51,7 @@ public interface ResourceService {
/**
* Initialize the ResourceService with the given application configuration
* service instance.
- *
+ *
* This method is invoked after the ResourceService has been constructed.
*
* @param servletContext the application servlet context
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/service/TemplateService.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/service/TemplateService.java
index 0aee0e7c61..39bb8b852d 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/service/TemplateService.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/service/TemplateService.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.service;
@@ -33,11 +34,11 @@
/**
* Provides a templating service interface.
*
- *
Configuration
+ * Configuration
* The default TemplateService is {@link VelocityTemplateService}.
- *
+ *
* However you can instruct Click to use a different implementation by adding
- * the following element to your click.xml configuration file.
+ * the following element to your click.xml configuration file.
*
*
* <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
@@ -54,9 +55,9 @@ public interface TemplateService {
/**
* Initialize the TemplateService with the given application configuration
* service instance.
- *
+ *
* This method is invoked after the TemplateService has been constructed.
- *
+ *
* Note you can access {@link ConfigService} by invoking
* {@link org.openidentityplatform.openam.click.util.ClickUtils#getConfigService(jakarta.servlet.ServletContext)}
*
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/service/VelocityTemplateService.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/service/VelocityTemplateService.java
index f6d95b62f4..05ae8ba966 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/service/VelocityTemplateService.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/service/VelocityTemplateService.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.service;
@@ -53,29 +54,29 @@
/**
* Provides a Velocity TemplateService class.
- *
+ *
* Velocity provides a simple to use, but powerful and performant templating engine
* for the Click Framework. The Velocity templating engine is configured and accessed
* by this VelocityTemplateService class.
* Velocity is the default templating engine used by Click and the Velocity class
* dependencies are included in the standard Click JAR file.
- *
+ *
* You can also instruct Click to use a different template service implementation.
* Please see {@link org.apache.click.service.TemplateService} for more details.
- *
+ *
* To see how to use the Velocity templating language please see the
* Velocity Users Guide.
*
- *
Velocity Configuration
+ * Velocity Configuration
* The VelocityTemplateService is the default template service used by Click,
* so it does not require any specific configuration.
* However if you wanted to configure this service specifically in your
- * click.xml configuration file you would add the following XML element.
+ * click.xml configuration file you would add the following XML element.
*
*
* <template-service classname="VelocityTemplateService"/>
*
- * Velocity Properties
+ * Velocity Properties
*
* The Velocity runtime engine is configured through a series of properties when the
* VelocityTemplateService is initialized. The default Velocity properties set are:
@@ -98,19 +99,19 @@
* This service uses the Velocity Tools WebappResourceLoader for loading templates.
* This avoids issues associate with using the Velocity FileResourceLoader on JEE
* application servers.
- *
+ *
* See the Velocity
- * Developer Guide
- * for details about these properties. Note when the application is in trace mode
+ * Developer Guide
+ * for details about these properties. Note when the application is in trace mode
* the Velocity properties used will be logged on startup.
- *
+ *
* If you want to add some of your own Velocity properties, or replace Click's
- * properties, add a velocity.properties file in the WEB-INF
+ * properties, add a velocity.properties file in the WEB-INF
* directory. Click will automatically pick up this file and load these properties.
- *
+ *
* As a example say we have our own Velocity macro library called
- * mycorp.vm we can override the default velocimacro.library
- * property by adding a WEB-INF/velocity.properties file to our web
+ * mycorp.vm we can override the default velocimacro.library
+ * property by adding a WEB-INF/velocity.properties file to our web
* application. In this file we would then define the property as:
*
*
@@ -118,19 +119,19 @@
*
* Note do not place Velocity macros under the WEB-INF directory as the Velocity
* ResourceManager will not be able to load them.
- *
- * The simplest way to set your own macro file is to add a file named macro.vm
+ *
+ * The simplest way to set your own macro file is to add a file named macro.vm
* under your web application's root directory. At startup Click will first check to see
- * if this file exists, and if it does it will use it instead of click/VM_global_library.vm.
+ * if this file exists, and if it does it will use it instead of click/VM_global_library.vm.
*
- *
Application Modes and Caching
+ * Application Modes and Caching
*
- * Production and Profile Mode
+ * Production and Profile Mode
*
- * When the Click application is in production or profile mode Velocity caching
+ * When the Click application is in production or profile mode Velocity caching
* is enabled. With caching enables page templates and macro files are loaded and
* parsed once and then are cached for use with later requests. When in
- * production or profile mode the following Velocity runtime
+ * production or profile mode the following Velocity runtime
* properties are set:
*
*
@@ -145,9 +146,9 @@
* When running in these modes the {@link org.apache.click.service.ConsoleLogService} will be configured
* to use
*
- * Development and Debug Modes
+ * Development and Debug Modes
*
- * When the Click application is in development, debug or trace
+ * When the Click application is in development, debug or trace
* modes Velocity caching is disabled. When caching is disabled page templates
* and macro files are reloaded and parsed when ever they changed. With caching
* disabled the following Velocity
@@ -162,27 +163,27 @@
*
* Disabling caching is useful for application development where you can edit page
* templates on a running application server and see the changes immediately.
- *
+ *
* Please Note Velocity caching should be used for production as Velocity
* template reloading is much much slower and the process of parsing and
* introspecting templates and macros can use a lot of memory.
*
- *
Velocity Logging
+ * Velocity Logging
* Velocity logging is very verbose at the best of times, so this service
- * keeps the logging level at ERROR in all modes except trace
- * mode where the Velocity logging level is set to WARN.
- *
+ * keeps the logging level at ERROR in all modes except trace
+ * mode where the Velocity logging level is set to WARN.
+ *
* If you are having issues with some Velocity page templates or macros please
- * switch the application mode into trace so you can see the warning
+ * switch the application mode into trace so you can see the warning
* messages provided.
- *
- * To support the use of Click LogService classes inside the Velocity
+ *
+ * To support the use of Click LogService classes inside the Velocity
* runtime a {@link VelocityTemplateService.LogChuteAdapter} class is provided. This class wraps the
- * Click LogService with a Velocity LogChute so the Velocity runtime can
+ * Click LogService with a Velocity LogChute so the Velocity runtime can
* use it for logging messages to.
- *
+ *
* If you are using LogServices other than {@link ConsoleLogService} you will
- * probably configure that service to filter out Velocity's verbose INFO
+ * probably configure that service to filter out Velocity's verbose INFO
* level messages.
*/
public class VelocityTemplateService implements TemplateService {
@@ -199,7 +200,7 @@ public class VelocityTemplateService implements TemplateService {
/**
* The default velocity properties filename:
- * "/WEB-INF/velocity.properties".
+ * "/WEB-INF/velocity.properties".
*/
protected static final String DEFAULT_TEMPLATE_PROPS = "/WEB-INF/velocity.properties";
@@ -207,7 +208,7 @@ public class VelocityTemplateService implements TemplateService {
protected static final String ERROR_PAGE_PATH = "/click/error.htm";
/**
- * The user supplied macro file name: "macro.vm".
+ * The user supplied macro file name: "macro.vm".
*/
protected static final String MACRO_VM_FILE_NAME = "macro.vm";
@@ -216,7 +217,7 @@ public class VelocityTemplateService implements TemplateService {
/**
* The global Velocity macro file path:
- * "/click/VM_global_library.vm".
+ * "/click/VM_global_library.vm".
*/
protected static final String VM_FILE_PATH = "/click/VM_global_library.vm";
@@ -633,13 +634,13 @@ protected void internalRenderTemplate(String templatePath,
// Inner Classes ----------------------------------------------------------
/**
- * Provides a Velocity LogChute adapter class around the application
+ * Provides a Velocity LogChute adapter class around the application
* log service to enable the Velocity Runtime to log to the application
* LogService.
- *
+ *
* Please see the {@link VelocityTemplateService} class for more details on
* Velocity logging.
- *
+ *
* PLEASE NOTE this class is not for public use.
*/
public static class LogChuteAdapter implements LogChute {
@@ -745,7 +746,7 @@ public void log(int level, String message) {
/**
* Log the given message and optional error at the specified logging level.
- *
+ *
* If you need to customise the Click and Velocity runtime logging for your
* application modify this method.
*
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/service/XmlConfigService.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/service/XmlConfigService.java
index e3a79d2105..3f6fd07acb 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/service/XmlConfigService.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/service/XmlConfigService.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.service;
@@ -64,21 +65,21 @@
/**
* Provides a Click XML configuration service class.
- *
+ *
* This class reads Click configuration information from a file named
- * click.xml. The service will first lookup the click.xml
- * under the applications WEB-INF directory, and if not found
+ * click.xml. The service will first lookup the click.xml
+ * under the applications WEB-INF directory, and if not found
* attempt to load the configuration file from the classpath root.
- *
- * Configuring Click through the click.xml file is the most common
+ *
+ * Configuring Click through the click.xml file is the most common
* technique.
- *
+ *
* However you can instruct Click to use a different service implementation.
* Please see {@link org.apache.click.service.ConfigService} for more details.
*/
public class XmlConfigService implements ConfigService, EntityResolver {
- /** The name of the Click logger: "org.apache.click". */
+ /** The name of the Click logger: "org.apache.click". */
static final String CLICK_LOGGER = "org.apache.click";
/** The click deployment directory path: "/click". */
@@ -89,21 +90,21 @@ public class XmlConfigService implements ConfigService, EntityResolver {
/**
* The default velocity properties filename:
- * "/WEB-INF/velocity.properties".
+ * "/WEB-INF/velocity.properties".
*/
static final String DEFAULT_VEL_PROPS = "/WEB-INF/velocity.properties";
- /** The click DTD file name: "click.dtd". */
+ /** The click DTD file name: "click.dtd". */
static final String DTD_FILE_NAME = "click.dtd";
/**
* The resource path of the click DTD file:
- * "/org/apache/click/click.dtd".
+ * "/org/apache/click/click.dtd".
*/
static final String DTD_FILE_PATH = "/org/apache/click/" + DTD_FILE_NAME;
/**
- * The user supplied macro file name: "macro.vm".
+ * The user supplied macro file name: "macro.vm".
*/
static final String MACRO_VM_FILE_NAME = "macro.vm";
@@ -128,13 +129,13 @@ public class XmlConfigService implements ConfigService, EntityResolver {
private static final Object PAGE_LOAD_LOCK = new Object();
/**
- * The name of the Velocity logger: "org.apache.velocity".
+ * The name of the Velocity logger: "org.apache.velocity".
*/
static final String VELOCITY_LOGGER = "org.apache.velocity";
/**
* The global Velocity macro file name:
- * "VM_global_library.vm".
+ * "VM_global_library.vm".
*/
static final String VM_FILE_NAME = "VM_global_library.vm";
@@ -316,8 +317,8 @@ public void onDestroy() {
// --------------------------------------------------------- Public Methods
/**
- * Return the application mode String value: ["production",
- * "profile", "development", "debug"].
+ * Return the application mode String value: ["production",
+ * "profile", "development", "debug"].
*
* @return the application mode String value
*/
@@ -447,14 +448,14 @@ public boolean isJspPage(String path) {
/**
* Return true if the given path is a Page class template, false
* otherwise. By default this method returns true if the path has a
- * .htm or .jsp extension.
- *
- * If you want to map alternative templates besides .htm and
- * .jsp files you can override this method and provide extra
+ * .htm or .jsp extension.
+ *
+ * If you want to map alternative templates besides .htm and
+ * .jsp files you can override this method and provide extra
* checks against the given path whether it should be added as a
* template or not.
- *
- * Below is an example showing how to allow .xml paths to
+ *
+ * Below is an example showing how to allow .xml paths to
* be recognized as Page class templates.
*
*
@@ -472,9 +473,9 @@ public boolean isJspPage(String path) {
* }
* }
*
- * Here is an example web.xml showing how to configure a custom
- * ConfigService through the context parameter config-service-class.
- * We also map *.xml requests to be routed through ClickServlet:
+ * Here is an example web.xml showing how to configure a custom
+ * ConfigService through the context parameter config-service-class.
+ * We also map *.xml requests to be routed through ClickServlet:
*
*
* <web-app xmlns="http://java.sun.com/xml/ns/j2ee"
@@ -512,11 +513,11 @@ public boolean isJspPage(String path) {
*
* Please note: even though you can add extra template mappings by
* overriding this method, it is still recommended to keep the default
- * .htm mapping by invoking super.isTemplate(String).
+ * .htm mapping by invoking super.isTemplate(String).
* The reason being that Click ships with some default templates such as
* {@link org.apache.click.service.ConfigService#ERROR_PATH} and {@link org.apache.click.service.ConfigService#NOT_FOUND_PATH}
- * that must be mapped as .htm.
- *
+ * that must be mapped as .htm.
+ *
* Please see the ConfigService javadoc for details
* on how to configure a custom ConfigService implementation.
*
@@ -679,7 +680,7 @@ public Map getPageHeaders(String path) {
/**
* @see org.apache.click.service.ConfigService#getNotFoundPageClass()
*
- * @return the page not found Page Class
+ * @return the page not found Page Class
*/
public Class extends Page> getNotFoundPageClass() {
XmlConfigService.PageElm page = (XmlConfigService.PageElm) pageByPathMap.get(NOT_FOUND_PATH);
@@ -695,7 +696,7 @@ public Class extends Page> getNotFoundPageClass() {
/**
* @see org.apache.click.service.ConfigService#getErrorPageClass()
*
- * @return the error handling page Page Class
+ * @return the error handling page Page Class
*/
public Class extends Page> getErrorPageClass() {
PageElm page = (XmlConfigService.PageElm) pageByPathMap.get(ERROR_PATH);
@@ -797,7 +798,7 @@ public ServletContext getServletContext() {
/**
* This method resolves the click.dtd for the XML parser using the
- * classpath resource: /org/apache/click/click.dtd.
+ * classpath resource: /org/apache/click/click.dtd.
*
* @see EntityResolver#resolveEntity(String, String)
*
@@ -824,15 +825,15 @@ public InputSource resolveEntity(String publicId, String systemId)
/**
* Find and return the page class for the specified pagePath and
* pagesPackage.
- *
- * For example if the pagePath is '/edit-customer.htm' and
- * package is 'com.mycorp', the matching page class will be:
- * com.mycorp.EditCustomer or com.mycorp.EditCustomerPage.
- *
- * If the page path is '/admin/add-customer.htm' and package is
- * 'com.mycorp', the matching page class will be:
- * com.mycorp.admin.AddCustomer or
- * com.mycorp.admin.AddCustomerPage.
+ *
+ * For example if the pagePath is '/edit-customer.htm' and
+ * package is 'com.mycorp', the matching page class will be:
+ * com.mycorp.EditCustomer or com.mycorp.EditCustomerPage.
+ *
+ * If the page path is '/admin/add-customer.htm' and package is
+ * 'com.mycorp', the matching page class will be:
+ * com.mycorp.admin.AddCustomer or
+ * com.mycorp.admin.AddCustomerPage.
*
* @param pagePath the path used for matching against a page class name
* @param pagesPackage the package of the page class
@@ -945,12 +946,12 @@ protected Class extends Page> getPageClass(String pagePath, String pagesPacka
* Returns true if Click resources (JavaScript, CSS, images etc) packaged
* in jars can be deployed to the root directory of the webapp, false
* otherwise.
- *
+ *
* By default this method will return false in restricted environments where
* write access to the underlying file system is disallowed. Example
* environments where write access is not allowed include the WebLogic JEE
* server and Google App Engine. (Note: WebLogic provides the property
- * "Archived Real Path Enabled" that controls whether web
+ * "Archived Real Path Enabled" that controls whether web
* applications can access the file system or not. See the Click user manual
* for details).
*
@@ -968,7 +969,7 @@ protected boolean isResourcesDeployable() {
// ------------------------------------------------ Package Private Methods
/**
- * Loads all Click Pages defined in the click.xml file, including
+ * Loads all Click Pages defined in the click.xml file, including
* manually defined Pages, auto mapped Pages and excluded Pages.
*
* @param rootElm the root xml element containing the configuration
@@ -1106,7 +1107,7 @@ void buildManualPageMapping(Element pagesElm, String pagesPackage) throws ClassN
/**
* Build the {@link #pageByPathMap} by associating template files with
* matching Java classes found on the classpath.
- *
+ *
* This method also rebuilds the {@link #excludesList}. This list contains
* URL paths that should not be auto-mapped.
*
@@ -1365,7 +1366,7 @@ private void deployFiles(Element rootElm) throws Exception {
* Deploy from the classpath all resources found under the directory
* 'META-INF/resources/'. For backwards compatibility resources under the
* directory 'META-INF/web/' are also deployed.
- *
+ *
* Only jars and folders available on the classpath are scanned.
*
* @throws IOException if the resources cannot be deployed
@@ -1951,7 +1952,7 @@ private static Map getAnnotatedBindableFields(Class pageClass) {
/**
* Provide an Excluded Page class.
- *
+ *
* PLEASE NOTE this class is not for public use, and can be
* ignored.
*/
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/util/ClickUtils.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/util/ClickUtils.java
index 28297175e4..7e4c7533f4 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/util/ClickUtils.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/util/ClickUtils.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.util;
@@ -92,13 +93,13 @@ public class ClickUtils {
// ------------------------------------------------------- Public Constants
/**
- * The resource versioning request attribute: key:
- * enable-resource-version.
- *
- * If this attribute is set to true and Click is running in
- * production or profile mode, Click resources returned
+ * The resource versioning request attribute: key:
+ * enable-resource-version.
+ *
+ * If this attribute is set to true and Click is running in
+ * production or profile mode, Click resources returned
* from {@link org.apache.click.Control#getHeadElements()} will have a
- * version indicator added to their path.
+ * version indicator added to their path.
*
* @see org.apache.click.Control#getHeadElements()
* @see org.openidentityplatform.openam.click.util.ClickUtils#getResourceVersionIndicator(Context)
@@ -107,7 +108,7 @@ public class ClickUtils {
/**
* The default Click configuration filename:
- * "/WEB-INF/click.xml".
+ * "/WEB-INF/click.xml".
*/
public static final String DEFAULT_APP_CONFIG = "/WEB-INF/click.xml";
@@ -147,14 +148,14 @@ public class ClickUtils {
private static final char[] HEXADECIMAL = { '0', '1', '2', '3', '4', '5',
'6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' };
- /** Ajax request header or parameter: "X-Requested-With". */
+ /** Ajax request header or parameter: "X-Requested-With". */
private static final String X_REQUESTED_WITH = "X-Requested-With";
/**
* The array of escaped HTML character values, indexed on char value.
- *
+ *
* HTML entities values were derived from Jakarta Commons Lang
- * org.apache.commons.lang.Entities class.
+ * org.apache.commons.lang.Entities class.
*/
private static final String[] HTML_ENTITIES = new String[9999];
@@ -444,9 +445,9 @@ public class ClickUtils {
/**
* The array of escaped XML character values, indexed on char value.
- *
+ *
* XML entities values were derived from Jakarta Commons Lang
- * org.apache.commons.lang.Entities class.
+ * org.apache.commons.lang.Entities class.
*/
private static final String[] XML_ENTITIES = new String[63];
@@ -466,7 +467,7 @@ public class ClickUtils {
* values as name value pairs. If the compress value is true, this method
* will attempt to gzip compress the response content if requesting
* browser accepts "gzip" encoding.
- *
+ *
* Once this method has returned you should not attempt to write to the
* servlet response.
*
@@ -543,24 +544,23 @@ public static void autoPostRedirect(HttpServletRequest request,
/**
* A helper method that binds the submitted request value to the Field's
- * value. Since Field values are only bound during the "onProcess"
+ * value. Since Field values are only bound during the "onProcess"
* event, this method can be used to bind a submitted Field value during
- * the "onInit" event, which occurs before the
- * "onProcess" event.
- *
+ * the "onInit" event, which occurs before the
+ * "onProcess" event.
+ *
* This is especially useful for dynamic Form and Page behavior where Field
- * values are inspected during the "onInit" event to add or remove
+ * values are inspected during the "onInit" event to add or remove
* specific Fields.
- *
+ *
* Please note: this method won't bind disabled fields, unless the
* field has an incoming request parameter matching its name. If an incoming
* request parameter is present, this method will switch off the Field's
* disabled property.
- *
+ *
* This method delegates to
* {@link #canBind(org.openidentityplatform.openam.click.Control, org.openidentityplatform.openam.click.Context)}
* to check if the Field value can be bound.
- *
*
* public void onInit() {
* Form form = new Form("form");
@@ -591,7 +591,7 @@ public static void bind(Field field) {
* A helper method that binds the submitted request value to the Link's
* value. See {@link #bind(org.openidentityplatform.openam.click.control.Field)} for a detailed
* description.
- *
+ *
* This method delegates to
* {@link #canBind(org.openidentityplatform.openam.click.Control, org.openidentityplatform.openam.click.Context)}
* to check if the Link value can be bound.
@@ -609,11 +609,11 @@ public static void bind(AbstractLink link) {
* A helper method that binds the submitted request values of all Fields
* and Links inside the given container or child containers. See
* {@link #bind(org.openidentityplatform.openam.click.control.Field)} for a detailed description.
- *
+ *
* This method delegates to
* {@link #canBind(org.openidentityplatform.openam.click.Control, org.openidentityplatform.openam.click.Context)}
* to check if the Container Fields and Links can be bound.
- *
+ *
* Below is an example to bind Form Field's during the onInit event:
*
*
@@ -652,16 +652,15 @@ public static void bind(Container container) {
* value. This method will return true if the validation succeeds, false
* otherwise. See {@link #bind(org.openidentityplatform.openam.click.control.Field)} for a
* detailed description.
- *
+ *
* This method delegates to
* {@link #canBind(org.openidentityplatform.openam.click.Control, org.openidentityplatform.openam.click.Context)}
* to check if the Field value can be bound and validated.
- *
+ *
* Please note: this method won't bind and validate disabled fields,
* unless the field has an incoming request parameter matching its name.
* If an incoming request parameter is present, this method will switch off
* the Field's disabled property.
- *
*
* public void onInit() {
* Form form = new Form("form");
@@ -697,7 +696,7 @@ public static boolean bindAndValidate(Field field) {
* of all Fields and Links inside the given container or child containers.
* This method will return true if the validation succeeds, false
* otherwise.
- *
+ *
* See {@link #bindAndValidate(org.openidentityplatform.openam.click.control.Form)} for a
* detailed description.
*
@@ -717,11 +716,11 @@ public static boolean bindAndValidate(Container container) {
* * A helper method that binds and validates the submitted request values
* of all Fields and Links inside the given Form or child containers. Note,
* the Form itself is also validated.
- *
+ *
* This method will return true if the validation succeeds, false otherwise.
* See {@link #bind(org.openidentityplatform.openam.click.control.Field)} for a detailed
* description.
- *
+ *
* This method delegates to
* {@link #canBind(org.openidentityplatform.openam.click.Control, org.openidentityplatform.openam.click.Context)}
* to check if the Form Fields and Links can be bound and validated.
@@ -805,7 +804,7 @@ public static Document buildDocument(InputStream inputStream,
/**
* Return true if the given control's request value can be bound, false
* otherwise.
- *
+ *
* The following algorithm is used to determine if the Control can be
* bound to a request value or not.
*
@@ -849,7 +848,7 @@ public static boolean canBind(Control control, Context context) {
* class loader.
*
* @param classname the name of the class to load
- * @return the Class object
+ * @return the Class object
* @throws ClassNotFoundException if the class cannot be located
*/
public static Class classForName(String classname)
@@ -877,7 +876,7 @@ public static void close(Closeable closeable) {
/**
* Creates a template model of key/value pairs which can be used by template
* engines such as Velocity and Freemarker.
- *
+ *
* The following objects will be added to the model:
*
* - the Page {@link org.openidentityplatform.openam.click.Page#model model} Map key/value
@@ -891,7 +890,7 @@ public static void close(Closeable closeable) {
*
- messages - the {@link MessagesMap} adaptor for the
* {@link org.apache.click.Page#getMessages()} method.
*
- * - path - the {@link org.openidentityplatform.openam.click.Page#path path} of the page
+ *
- path - the {@link org.openidentityplatform.openam.click.Page#path path} of the
page
* template.
*
* - request - the page {@link jakarta.servlet.http.HttpServletRequest}
@@ -998,8 +997,8 @@ public static Map
createTemplateModel(final Page page, Context c
/**
* Invalidate the specified cookie and delete it from the response object.
- *
- * This method was derived from Atlassian CookieUtils method of
+ *
+ * This method was derived from Atlassian CookieUtils method of
* the same name, release under the BSD License.
*
* @param request the servlet request
@@ -1015,18 +1014,18 @@ public static void invalidateCookie(HttpServletRequest request,
/**
* Return true is this is an Ajax request, false otherwise.
- *
- * An Ajax request is identified by the presence of the request header
- * or request parameter: "X-Requested-With".
- * "X-Requested-With" is the de-facto standard identifier used by
+ *
+ * An Ajax request is identified by the presence of the request header
+ * or request parameter: "X-Requested-With".
+ * "X-Requested-With" is the de-facto standard identifier used by
* Ajax libraries.
- *
- * Note: incoming requests that contains a request parameter
- * "X-Requested-With" will result in this method returning true, even
- * though the request itself was not initiated through a XmlHttpRequest
+ *
+ * Note: incoming requests that contains a request parameter
+ * "X-Requested-With" will result in this method returning true, even
+ * though the request itself was not initiated through a XmlHttpRequest
* object. This allows one to programmatically enable Ajax requests. A common
* use case for this feature is when uploading files through an IFrame element.
- * By specifying "X-Requested-With" as a request parameter the IFrame
+ * By specifying "X-Requested-With" as a request parameter the IFrame
* request will be handled like a normal Ajax request.
*
* @param request the servlet request
@@ -1053,8 +1052,8 @@ public static boolean isMultipartRequest(HttpServletRequest request) {
* Invalidate the specified cookie and delete it from the response object. Deletes only cookies mapped
* against the root "/" path. Otherwise use
* {@link #invalidateCookie(HttpServletRequest, HttpServletResponse, String, String)}
- *
- * This method was derived from Atlassian CookieUtils method of
+ *
+ * This method was derived from Atlassian CookieUtils method of
* the same name, release under the BSD License.
*
* @see #invalidateCookie(HttpServletRequest, HttpServletResponse, String, String)
@@ -1137,9 +1136,9 @@ public static List getChildren(Element parent, String name) {
}
/**
- * Return the InputStream for the Click configuration file click.xml.
- * This method will first lookup the click.xml under the
- * applications WEB-INF directory, and then if not found it will
+ * Return the InputStream for the Click configuration file click.xml.
+ * This method will first lookup the click.xml under the
+ * applications WEB-INF directory, and then if not found it will
* attempt to find the configuration file on the classpath root.
*
* @param servletContext the servlet context to obtain the Click configuration
@@ -1198,8 +1197,8 @@ public static ConfigService getConfigService(ServletContext servletContext) {
/**
* Returns the specified Cookie object, or null if the cookie does not exist.
- *
- * This method was derived from Atlassian CookieUtils method of
+ *
+ * This method was derived from Atlassian CookieUtils method of
* the same name, release under the BSD License.
*
* @param request the servlet request
@@ -1225,14 +1224,14 @@ public static Cookie getCookie(HttpServletRequest request, String name) {
/**
* Sets the given cookie values in the servlet response.
- *
+ *
* This will also put the cookie in a list of cookies to send with this request's response
* (so that in case of a redirect occurring down the chain, the first filter
* will always try to set this cookie again)
- *
+ *
* The cookie secure flag is set if the request is secure.
- *
- * This method was derived from Atlassian CookieUtils method of
+ *
+ * This method was derived from Atlassian CookieUtils method of
* the same name, release under the BSD License.
*
* @param request the servlet request
@@ -1260,8 +1259,8 @@ public static Cookie setCookie(HttpServletRequest request, HttpServletResponse r
/**
* Returns the value of the specified cookie as a String. If the cookie
* does not exist, the method returns null.
- *
- * This method was derived from Atlassian CookieUtils method of
+ *
+ * This method was derived from Atlassian CookieUtils method of
* the same name, release under the BSD License.
*
* @param request the servlet request
@@ -1311,18 +1310,18 @@ public static void setApplicationVersion(String applicationVersion) {
* Return Click's version indicator for static web resources
* (eg css, js and image files) if resource versioning is active,
* otherwise this method will return an empty string.
- *
+ *
* Click's resource versioning becomes active under the following
* conditions:
*
* - the {@link #ENABLE_RESOURCE_VERSION} request attribute must be set
- * to true
+ * to true
* - the application mode must be either "production" or "profile"
*
*
* The version indicator is based on the current Click release version.
* For example when using Click 1.4 this method will return the string
- * "_1.4".
+ * "_1.4".
*
* @param context the request context
* @return a version indicator for web resources
@@ -1352,19 +1351,19 @@ && isEnableResourceVersion(context)) {
* If resource versioning is active this method will return the
* application version indicator for static web resources
* (eg JavaScript and Css) otherwise this method will return an empty string.
- *
+ *
* Application resource versioning becomes active under the following
* conditions:
*
* - the {@link #ENABLE_RESOURCE_VERSION} request attribute must be set
- * to true
+ * to true
* - the application mode must be either "production" or "profile"
*
*
* The version indicator is based on the application version.
* For example if the application version is 1.2 this method will
- * return the string "_1.2".
- *
+ * return the string "_1.2".
+ *
* The application version can be set through the static method
* {@link #setApplicationVersion(java.lang.String)}.
*
@@ -1399,28 +1398,28 @@ public static String getApplicationResourceVersionIndicator() {
/**
* Return the given control CSS selector or null if no selector can be found.
- *
+ *
* Please note: it is highly recommended to set a control's ID
* attribute when dealing with Ajax requests.
- *
+ *
* The CSS selector is calculated as follows:
*
* - if control.getId() is set, prepend it with a '#' char
- * and return the value. An example selector will be: #field-id
+ * and return the value. An example selector will be:
#field-id
*
*
* - if control.getName() is set do the following:
*
* - if the control is of type {@link org.apache.click.control.ActionLink},
- * it's "class" attribute selector will be returned. For example:
- * a[class=red]. Please note: if the link class attribute is
+ * it's "
class" attribute selector will be returned. For example:
+ * a[class=red]. Please note: if the link class attribute is
* not set, the class attribute will be set to its name, prefixed with
- * a dash, '-'. For example: a[class=-my-link].
+ * a dash, '-'. For example: a[class=-my-link].
*
*
* - if the control is not an ActionLink, it is assumed the control
- * will render its "name" attribute and the name attribute
- * selector will be returned. For example: input[name=my-button].
+ * will render its "
name" attribute and the name attribute
+ * selector will be returned. For example: input[name=my-button].
*
*
*
@@ -1478,7 +1477,7 @@ public static String getCssSelector(Control control) {
/**
* Populate the given object's attributes with the Form's field values.
- *
+ *
* The specified Object can either be a POJO (plain old java object) or
* a {@link java.util.Map}. If a POJO is specified, its attributes are
* populated from matching form fields. If a map is specified, its
@@ -1496,7 +1495,7 @@ public static void copyFormToObject(Form form, Object object,
/**
* Populate the given Form field values with the object's attributes.
- *
+ *
* The specified Object can either be a POJO (plain old java object) or
* a {@link java.util.Map}. If a POJO is specified, its attributes are
* copied to matching form fields. If a map is specified, its key/value
@@ -1515,10 +1514,10 @@ public static void copyObjectToForm(Object object, Form form,
/**
* Deploy the specified classpath resource to the given target directory
* under the web application root directory.
- *
+ *
* This method will not override any existing resources found in the
* target directory.
- *
+ *
* If an IOException or SecurityException occurs this method will log a
* warning message.
*
@@ -1645,14 +1644,14 @@ public static void deployFiles(ServletContext servletContext,
/**
* Deploys required files (from a file list) for a control that repsects a specific convention.
- *
+ *
* Convention:
- *
+ *
* There's a descriptor file generated by the tools/standalone/dev-tasks/ListFilesTask.
* The files to deploy are all in a subdirectory placed in the same directory with the control.
- * See documentation for more details.
+ * See documentation for more details.
*
- * Usage:
+ * Usage:
* In your Control simply use the code below, and everything should work automatically.
*
* public void onDeploy(ServletContext servletContext) {
@@ -1707,7 +1706,7 @@ public static void deployFileList(ServletContext servletContext,
}
/**
- * Return an encoded version of the Serializable object. The object
+ * Return an encoded version of the Serializable object. The object
* will be serialized, compressed and Base 64 encoded.
*
* @param object the object to encode
@@ -1798,12 +1797,12 @@ public static Object decode(String string)
/**
* Builds a cookie string containing a username and password.
- *
+ *
* Note: with open source this is not really secure, but it prevents users
* from snooping the cookie file of others and by changing the XOR mask and
* character offsets, you can easily tweak results.
- *
- * This method was derived from Atlassian CookieUtils method of
+ *
+ * This method was derived from Atlassian CookieUtils method of
* the same name, release under the BSD License.
*
* @param username the username
@@ -1822,12 +1821,12 @@ public static String encodePasswordCookie(String username, String password, int
/**
* Builds a cookie string containing a username and password, using offsets
* to customize the encoding.
- *
+ *
* Note: with open source this is not really secure, but it prevents users
* from snooping the cookie file of others and by changing the XOR mask and
* character offsets, you can easily tweak results.
- *
- * This method was derived from Atlassian CookieUtils method of
+ *
+ * This method was derived from Atlassian CookieUtils method of
* the same name, release under the BSD License.
*
* @param username the username
@@ -1864,8 +1863,8 @@ public static String encodePasswordCookie(String username, String password, Stri
/**
* Decodes a cookie string containing a username and password.
- *
- * This method was derived from Atlassian CookieUtils method of
+ *
+ * This method was derived from Atlassian CookieUtils method of
* the same name, release under the BSD License.
*
* @param cookieVal the encoded cookie username and password value
@@ -1883,8 +1882,8 @@ public static String[] decodePasswordCookie(String cookieVal, int xorMask) {
/**
* Decodes a cookie string containing a username and password.
- *
- * This method was derived from Atlassian CookieUtils method of
+ *
+ * This method was derived from Atlassian CookieUtils method of
* the same name, release under the BSD License.
*
* @param cookieVal the encoded cookie username and password value
@@ -1932,10 +1931,10 @@ public static String[] decodePasswordCookie(String cookieVal, String encoding,
/**
* URL encode the specified value using the "UTF-8" encoding scheme.
- *
- * For example (http://host?name=value with spaces) will become
- * (http://host?name=value+with+spaces).
- *
+ *
+ * For example (http://host?name=value with spaces) will become
+ * (http://host?name=value+with+spaces).
+ *
* This method uses {@link URLEncoder#encode(java.lang.String, java.lang.String)}
* internally.
*
@@ -1956,10 +1955,10 @@ public static String encodeURL(Object value) {
/**
* URL decode the specified value using the "UTF-8" encoding scheme.
- *
- * For example (http://host?name=value+with+spaces) will become
- * (http://host?name=value with spaces).
- *
+ *
+ * For example (http://host?name=value+with+spaces) will become
+ * (http://host?name=value with spaces).
+ *
* This method uses {@link URLDecoder#decode(java.lang.String, java.lang.String)}
* internally.
*
@@ -1982,10 +1981,10 @@ public static String decodeURL(Object value) {
* Return an encoded URL value for the given object using the context
* request character encoding or "UTF-8" if the request character encoding
* is not specified.
- *
- * For example (http://host?name=value with spaces) will become
- * (http://host?name=value+with+spaces).
- *
+ *
+ * For example (http://host?name=value with spaces) will become
+ * (http://host?name=value+with+spaces).
+ *
* This method uses
* {@link URLEncoder#encode(java.lang.String, java.lang.String)} internally.
*
@@ -2149,7 +2148,7 @@ public static boolean isEnableResourceVersion(Context context) {
/**
* Return the value string limited to maxlength characters. If the string
* gets curtailed, "..." is appended to it.
- *
+ *
* Adapted from Velocity Tools Formatter.
*
* @param value the string value to limit the length of
@@ -2163,7 +2162,7 @@ public static String limitLength(String value, int maxlength) {
/**
* Return the value string limited to maxlength characters. If the string
* gets curtailed and the suffix parameter is appended to it.
- *
+ *
* Adapted from Velocity Tools Formatter.
*
* @param value the string value to limit the length of
@@ -2196,7 +2195,7 @@ public static LogService getLogService() {
/**
* Return the list of Fields for the given Form, including any Fields
* contained in FieldSets. The list of returned fields will exclude any
- * Button, FieldSet or Label fields.
+ * Button, FieldSet or Label fields.
*
* @param form the form to obtain the fields from
* @return the list of contained form fields
@@ -2210,7 +2209,7 @@ public static List getFormFields(Form form) {
/**
* Return the mime-type or content-type for the given filename/extension.
- *
+ *
* Example:
*
* // Lookup mimetype for file
@@ -2248,7 +2247,7 @@ public static String getMimeType(String value) {
/**
* Return the given control's top level parent's localized messages Map.
- *
+ *
* This method will walk up to the control's parent page object and
* return pages messages. If the control's top level parent is a control
* then the parent's messages map will be returned. If the top level
@@ -2293,14 +2292,14 @@ public static Map getParentMessages(Control control) {
/**
* Return the given control's top level parent's localized message for the
* specified name.
- *
+ *
* This method will walk up to the control's parent page object and for each
* parent control found, look for a message of the specified name. A
* message found in a parent control will override the message of a child
* control.
- *
+ *
* Given the following property files:
- *
+ *
* MyPage.properties
*
* myfield.label=Page
@@ -2329,18 +2328,18 @@ public static Map getParentMessages(Control control) {
* }
*
*
- * The first (1.) println statement above will output Form because
+ * The first (1.) println statement above will output Form because
* at that stage MyForm is the highest level parent of field.
- * getParentMessage will find the property myfield.label
- * in the MyForm message properties and return Form
- *
- * The second (2.) println statement will output Page as now
+ * getParentMessage will find the property myfield.label
+ * in the MyForm message properties and return Form
+ *
+ * The second (2.) println statement will output Page as now
* MyPage is the highest level parent. On its first pass up the hierarchy,
- * getParentMessage will find the property myfield.label
+ * getParentMessage will find the property myfield.label
* in the MyForm message properties and on its second pass will find the
* same property in MyPage message properties. As MyPage is higher up the
* hierarchy than MyForm, MyPage will override MyForm and the property value
- * will be Page.
+ * will be Page.
*
* @param control the control to get the parent message for
* @param name the specific property name to find
@@ -2448,7 +2447,7 @@ public static Map getRequestParameterMap(HttpServletRequest requ
/**
* Return the page resource path from the request. For example:
*
- * http://www.mycorp.com/banking/secure/login.htm -> /secure/login.htm
+ * http://www.mycorp.com/banking/secure/login.htm -> /secure/login.htm
*
* @param request the page servlet request
* @return the page resource path from the request
@@ -2484,7 +2483,7 @@ public static String getResourcePath(HttpServletRequest request) {
/**
* Return the requestURI from the request. For example:
*
- * http://www.mycorp.com/banking/secure/login.htm -> /banking/secure/login.htm
+ * http://www.mycorp.com/banking/secure/login.htm -> /banking/secure/login.htm
*
* @param request the page servlet request
* @return the requestURI from the request
@@ -2514,13 +2513,13 @@ public static String getRequestURI(HttpServletRequest request) {
* Finds a resource with a given name. This method returns null if no
* resource with this name is found.
*
- * This method uses the current Thread context ClassLoader to find
+ * This method uses the current Thread context ClassLoader to find
* the resource. If the resource is not found the class loader of the given
* class is then used to find the resource.
*
* @param name the name of the resource
* @param aClass the class lookup the resource against, if the resource is
- * not found using the current Thread context ClassLoader.
+ * not found using the current Thread context ClassLoader.
* @return the input stream of the resource if found or null otherwise
*/
public static InputStream getResourceAsStream(String name, Class> aClass) {
@@ -2541,13 +2540,13 @@ public static InputStream getResourceAsStream(String name, Class> aClass) {
* Finds a resource with a given name. This method returns null if no
* resource with this name is found.
*
- * This method uses the current Thread context ClassLoader to find
+ * This method uses the current Thread context ClassLoader to find
* the resource. If the resource is not found the class loader of the given
* class is then used to find the resource.
*
* @param name the name of the resource
* @param aClass the class lookup the resource against, if the resource is
- * not found using the current Thread context ClassLoader.
+ * not found using the current Thread context ClassLoader.
* @return the URL of the resource if found or null otherwise
*/
public static URL getResource(String name, Class> aClass) {
@@ -2606,7 +2605,7 @@ public static void removeState(Stateful control, String controlName, Context con
/**
* Restore the control state from the session for the given stateful control,
* control name and request context.
- *
+ *
* This method delegates to {@link org.apache.click.Stateful#setState(java.lang.Object)}
* to restore the control state.
*
@@ -2636,7 +2635,7 @@ public static void restoreState(Stateful control, String controlName, Context co
/**
* Save the control state in the session for the given stateful control,
* control name and request context.
- *
+ *
* * This method delegates to {@link org.apache.click.Stateful#getState()}
* to retrieve the control state to save.
*
@@ -2711,8 +2710,8 @@ public static String toIsGetterName(String property) {
* Return a field label string from the given field name. For example:
*
* faxNumber -> Fax Number
- *
- * Note toLabel will return an empty String ("") if a null
+ *
+ * Note toLabel will return an empty String ("") if a null
* String name is specified.
*
* @param name the field name
@@ -2759,8 +2758,8 @@ public static String toLabel(String name) {
/**
* Return an 32 char MD5 encoded string from the given plain text.
* The returned value is MD5 hash compatible with Tomcat catalina Realm.
- *
- * Adapted from org.apache.catalina.util.MD5Encoder
+ *
+ * Adapted from org.apache.catalina.util.MD5Encoder
*
* @param plaintext the plain text value to encode
* @return encoded MD5 string
@@ -2794,11 +2793,11 @@ public static String toMD5Hash(String plaintext) {
/**
* Return a field name string from the given field label.
- *
- * A label of " OK do it!" is returned as "okDoIt". Any
+ *
+ * A label of " OK do it!" is returned as "okDoIt". Any
* characters will also be removed.
- *
- * A label of "customerSelect" is returned as "customerSelect".
+ *
+ * A label of "customerSelect" is returned as "customerSelect".
*
* @param label the field label or caption
* @return a field name string from the given field label
@@ -2868,7 +2867,7 @@ public static String toSetterName(String property) {
* Returns true if Click resources (JavaScript, CSS, images etc) packaged
* in jars can be deployed to the root directory of the webapp, false
* otherwise.
- *
+ *
* This method will return false in restricted environments where write
* access to the underlying file system is disallowed. Examples where
* write access is not allowed include the WebLogic JEE server (this can be
@@ -3062,7 +3061,7 @@ static boolean requiresHtmlEscape(String value) {
/**
* A helper method that binds the submitted request values of all Fields
* and Links inside the given container or child containers.
- *
+ *
* For Field controls, this method delegates to
* {@link #bindField(org.openidentityplatform.openam.click.control.Field, org.openidentityplatform.openam.click.Context)}.
*
@@ -3097,7 +3096,7 @@ private static void bind(Container container, Context context) {
/**
* A helper method that binds and validates the submitted request values
* of all Fields and Links inside the given container or child containers.
- *
+ *
* For Field controls, this method delegates to
* {@link #bindField(org.openidentityplatform.openam.click.control.Field, org.openidentityplatform.openam.click.Context)}.
*
@@ -3144,7 +3143,7 @@ private static boolean bindAndValidate(Container container, Context context) {
* A helper method that binds and validates the submitted request values
* of all Fields and Links inside the given Form or child containers. Note,
* the Form itself is also validated.
- *
+ *
* For Field controls, this method delegates to
* {@link #bindField(org.openidentityplatform.openam.click.control.Field, org.openidentityplatform.openam.click.Context)}.
*
@@ -3178,7 +3177,7 @@ private static boolean bindAndValidate(Form form, Context context) {
/**
* A helper method that binds and validates the Field's submitted request
* value.
- *
+ *
* This method delegates to
* {@link #bindField(org.openidentityplatform.openam.click.control.Field, org.openidentityplatform.openam.click.Context)}
* to bind the field value.
@@ -3213,7 +3212,7 @@ private static boolean bindAndValidate(Field field, Context context) {
/**
* Bind the field to its incoming request parameter, returning true if the
* field value was bound, false otherwise.
- *
+ *
* Please note: this method won't bind disabled fields,
* unless the field has an incoming request parameter matching its name.
* If an incoming request parameter is present, this method will switch off
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/util/ContainerUtils.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/util/ContainerUtils.java
index d55186dc43..b499b14c72 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/util/ContainerUtils.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/util/ContainerUtils.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.util;
@@ -55,7 +56,7 @@ public class ContainerUtils {
/**
* Populate the given object attributes from the Containers field values.
- *
+ *
* If a Field and object attribute matches, the object attribute is set to
* the Object returned from the method
* {@link org.apache.click.control.Field#getValueObject()}. If an object
@@ -63,11 +64,11 @@ public class ContainerUtils {
* {@link org.apache.click.control.Field#getValueObject()} will be converted
* into the specific primitive e.g. Integer will become int and Boolean will
* become boolean.
- *
+ *
* The fieldList specifies which fields to copy to the object. This allows
* one to include or exclude certain Container fields before populating the
* object.
- *
+ *
* The following example shows how to exclude disabled fields from
* populating a customer object:
*
@@ -198,17 +199,17 @@ public static void copyContainerToObject(Container container,
/**
* Populate the given Container field values from the object attributes.
- *
+ *
* If a Field and object attribute matches, the Field value is set to the
* object attribute using the method
* {@link org.apache.click.control.Field#setValueObject(java.lang.Object)}. If
* an object attribute is a primitive it is first converted to its proper
* wrapper class e.g. int will become Integer and boolean will become
* Boolean.
- *
+ *
* The fieldList specifies which fields to populate from the object. This
* allows one to exclude or include specific fields.
- *
+ *
* The specified Object can either be a POJO (plain old java object) or
* a {@link java.util.Map}. If a POJO is specified, its attributes are
* copied to matching container fields. If a map is specified, its key/value
@@ -310,7 +311,7 @@ public static void copyObjectToContainer(Object object,
/**
* Find and return the first control with a matching name in the specified
* container.
- *
+ *
* If no matching control is found in the specified container, child
* containers will be recursively scanned for a match.
*
@@ -377,8 +378,8 @@ public static List
*
- * @return a reference to this HtmlStringBuffer object
+ * @return a reference to this HtmlStringBuffer object
*/
public HtmlStringBuffer closeTag() {
append(">");
@@ -428,12 +429,12 @@ public HtmlStringBuffer closeTag() {
/**
* Append a HTML element end to the string buffer.
- *
+ *
* For example:
*
- * elementEnd() -> />
+ * elementEnd() -> />
*
- * @return a reference to this HtmlStringBuffer object
+ * @return a reference to this HtmlStringBuffer object
*/
public HtmlStringBuffer elementEnd() {
append("/>");
@@ -443,13 +444,13 @@ public HtmlStringBuffer elementEnd() {
/**
* Append a HTML element start to the string buffer.
- *
+ *
* For example:
*
- * elementStart("input") -> <input
+ * elementStart("input") -> <input
*
* @param name the HTML element name to start
- * @return a reference to this HtmlStringBuffer object
+ * @return a reference to this HtmlStringBuffer object
*/
public HtmlStringBuffer elementStart(String name) {
append("<");
@@ -538,7 +539,7 @@ protected void expandCapacity(int minimumCapacity) {
* Append the given value to the buffer and HTML escape its value.
*
* @param value the object value to append
- * @return a reference to this HtmlStringBuffer object
+ * @return a reference to this HtmlStringBuffer object
* @throws IllegalArgumentException if the value is null
*/
HtmlStringBuffer appendHtmlEscaped(Object value) {
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/util/PageImports.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/util/PageImports.java
index 27c659256d..9443e50615 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/util/PageImports.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/util/PageImports.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.util;
@@ -40,7 +41,7 @@
/**
* Provides a utility object for rendering a Page's HEAD elements and
* control HEAD elements.
- *
+ *
* PageImports automatically makes the HEAD elements available to Velocity
* templates and JSP pages through the following variables:
*
@@ -52,7 +53,7 @@
* By splitting JavaScript elements from other HEAD elements allows you to place
* JavaScript elements at the bottom of the Page which allows the HTML content
* to be rendered faster.
- *
+ *
* To use the HEAD elements simply reference them in your page template. For
* example:
*
@@ -332,7 +333,7 @@ public void populateRequest(HttpServletRequest request, Map mode
* Process the HEAD elements of the given list of Controls. You can retrieve
* the processed HEAD elements through {@link #getHeadElements} and
* {@link #getJsElements()}.
- *
+ *
* This method delegates to {@link #processControl(Control)}
* to add the given Control's HEAD elements to the Page imports.
*
@@ -351,7 +352,7 @@ public void processControls(List controls) {
* process Containers and all child controls. You can retrieve
* the processed HEAD elements through {@link #getHeadElements} and
* {@link #getJsElements()}.
- *
+ *
* This method delegates to {@link #processHeadElements(List)}
* to add the HEAD elements to the Page imports.
*
@@ -513,9 +514,9 @@ protected void processPageControls() {
/**
* Process the given list of HEAD elements.
- *
+ *
* This method invokes {@link #add(Element)} for
- * every Element entry in the specified list.
+ * every Element entry in the specified list.
*
* @param elements the list of HEAD elements to process
*/
diff --git a/openam-core/src/main/java/org/openidentityplatform/openam/click/util/SessionMap.java b/openam-core/src/main/java/org/openidentityplatform/openam/click/util/SessionMap.java
index f0e02c525e..28455eda74 100644
--- a/openam-core/src/main/java/org/openidentityplatform/openam/click/util/SessionMap.java
+++ b/openam-core/src/main/java/org/openidentityplatform/openam/click/util/SessionMap.java
@@ -15,6 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package org.openidentityplatform.openam.click.util;
@@ -34,7 +35,7 @@
/**
* Provides a Map adaptor for HttpSession objects. A SessionMap instance is
* available in each Velocity page using the name "session".
- *
+ *
* For example suppose we have a User object in the session with the
* attribute name "user" when a user is logged on. We can display the users
* name in the page when the are logged onto the system.
@@ -48,7 +49,7 @@
*
* The ClickServlet adds a SessionMap instance to the Velocity Context before
* it is merged with the page template.
- *
+ *
* The SessionMap supports {@link FlashAttribute} which when accessed via
* {@link #get(Object)} are removed from the session.
*/
@@ -58,7 +59,7 @@ public class SessionMap implements Map {
protected HttpSession session;
/**
- * Create a HttpSession Map adaptor.
+ * Create a HttpSession Map adaptor.
*
* @param value the http session
*/
@@ -103,7 +104,7 @@ public boolean containsKey(Object key) {
/**
* This method is not supported and will throw
- * UnsupportedOperationException if invoked.
+ * UnsupportedOperationException if invoked.
*
* @see java.util.Map#containsValue(Object)
*/
diff --git a/openam-coretoken/src/main/java/com/sun/identity/coretoken/spi/CoreTokenStore.java b/openam-coretoken/src/main/java/com/sun/identity/coretoken/spi/CoreTokenStore.java
index a97481fa91..aa54aa3e38 100644
--- a/openam-coretoken/src/main/java/com/sun/identity/coretoken/spi/CoreTokenStore.java
+++ b/openam-coretoken/src/main/java/com/sun/identity/coretoken/spi/CoreTokenStore.java
@@ -23,6 +23,8 @@
* "Portions Copyrighted [year] [name of copyright owner]"
*
* $Id: CoreTokenStore.java,v 1.1 2009/11/19 00:07:41 qcheng Exp $
+ *
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package com.sun.identity.coretoken.spi;
@@ -82,7 +84,7 @@ public void deleteToken(Subject subject, String tokenId)
* @param queryString HTTP query string.
* @return JSON array of token.id values for resources that match
* the query. May be empty.
- * @throws CoreTokenException
+ * @throws CoreTokenException if the token search fails.
*/
public JSONArray searchTokens (Subject subject,
String queryString) throws CoreTokenException;
diff --git a/openam-datastore/src/main/java/org/forgerock/openam/idrepo/ldap/DJLDAPv3Repo.java b/openam-datastore/src/main/java/org/forgerock/openam/idrepo/ldap/DJLDAPv3Repo.java
index 817d502847..ccbfa740f5 100644
--- a/openam-datastore/src/main/java/org/forgerock/openam/idrepo/ldap/DJLDAPv3Repo.java
+++ b/openam-datastore/src/main/java/org/forgerock/openam/idrepo/ldap/DJLDAPv3Repo.java
@@ -1117,7 +1117,7 @@ public void removeAttributes(SSOToken token, IdType type, String name, Set(&(|(attr1=value1)(attr2=value2))(searchAttr=pattern)(objectclassfilter)).
+ * {@code (&(|(attr1=value1)(attr2=value2))(searchAttr=pattern)(objectclassfilter))}.
*
* @param token Not used.
* @param type The type of the identity.
diff --git a/openam-documentation/openam-doc-log-message-ref/pom.xml b/openam-documentation/openam-doc-log-message-ref/pom.xml
index 0763526dbf..007e5a69a8 100644
--- a/openam-documentation/openam-doc-log-message-ref/pom.xml
+++ b/openam-documentation/openam-doc-log-message-ref/pom.xml
@@ -31,14 +31,6 @@
-
- org.apache.maven.plugins
- maven-javadoc-plugin
-
- true
-
-
-
org.codehaus.mojo
xml-maven-plugin
diff --git a/openam-documentation/openam-doc-ssoadm-ref/src/main/java/org/forgerock/openam/docs/ssoadm/SsoadmAP.java b/openam-documentation/openam-doc-ssoadm-ref/src/main/java/org/forgerock/openam/docs/ssoadm/SsoadmAP.java
index 495bd041d3..080b86465f 100644
--- a/openam-documentation/openam-doc-ssoadm-ref/src/main/java/org/forgerock/openam/docs/ssoadm/SsoadmAP.java
+++ b/openam-documentation/openam-doc-ssoadm-ref/src/main/java/org/forgerock/openam/docs/ssoadm/SsoadmAP.java
@@ -21,6 +21,7 @@
* your own identifying information:
* "Portions Copyrighted [year] [name of copyright owner]"
*
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package org.forgerock.openam.docs.ssoadm;
@@ -73,12 +74,12 @@ public Set getSubcommands() {
}
/**
- * Two field annotations hold documentation content: @Macro and
- * @SubCommandInfo. @Macro holds field content to be merged with
- * @SubCommandInfo field content for @SubCommandInfo annotations that
- * reference @Macro.
+ * Two field annotations hold documentation content: {@code @Macro} and
+ * {@code @SubCommandInfo}. {@code @Macro} holds field content to be merged with
+ * {@code @SubCommandInfo} field content for {@code @SubCommandInfo} annotations that
+ * reference {@code @Macro}.
*
- * @SubCommandInfo field annotations hold descriptions,
+ * {@code @SubCommandInfo} field annotations hold descriptions,
* manadatoryOptions, and optionalOptions used in reference
* documentation.
*
diff --git a/openam-entitlements/src/main/java/com/sun/identity/entitlement/AnonymousESubject.java b/openam-entitlements/src/main/java/com/sun/identity/entitlement/AnonymousESubject.java
index f0cce4782f..f6d9a303de 100644
--- a/openam-entitlements/src/main/java/com/sun/identity/entitlement/AnonymousESubject.java
+++ b/openam-entitlements/src/main/java/com/sun/identity/entitlement/AnonymousESubject.java
@@ -23,6 +23,7 @@
* "Portions Copyrighted [year] [name of copyright owner]"
*
* $Id: AnonymousESubject.java,v 1.1 2009/08/19 05:40:32 veiming Exp $
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package com.sun.identity.entitlement;
@@ -58,8 +59,7 @@ String getState() {
* @param environment Environment parameters.
* @return SubjectDecision of
* ESubject evaluation
- * @throws com.sun.identity.entitlement, EntitlementException in case
- * of any error
+ * @throws EntitlementException in case of any error
*/
public SubjectDecision evaluate(
Subject subject,
diff --git a/openam-entitlements/src/main/java/com/sun/identity/entitlement/AttributeSubject.java b/openam-entitlements/src/main/java/com/sun/identity/entitlement/AttributeSubject.java
index 91d929e663..792a5d855e 100644
--- a/openam-entitlements/src/main/java/com/sun/identity/entitlement/AttributeSubject.java
+++ b/openam-entitlements/src/main/java/com/sun/identity/entitlement/AttributeSubject.java
@@ -23,6 +23,7 @@
* "Portions Copyrighted [year] [name of copyright owner]"
*
* $Id: AttributeSubject.java,v 1.1 2009/08/19 05:40:32 veiming Exp $
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package com.sun.identity.entitlement;
@@ -103,8 +104,7 @@ public String getID() {
* @param environment Environment parameters.
* @return SubjectDecision of
* EntitlementSubject evaluation
- * @throws com.sun.identity.entitlement, EntitlementException in case
- * of any error
+ * @throws EntitlementException in case of any error
*/
public SubjectDecision evaluate(
String realm,
diff --git a/openam-entitlements/src/main/java/com/sun/identity/entitlement/ExactMatchResourceName.java b/openam-entitlements/src/main/java/com/sun/identity/entitlement/ExactMatchResourceName.java
index 5bd7eb3794..ccc97a6406 100644
--- a/openam-entitlements/src/main/java/com/sun/identity/entitlement/ExactMatchResourceName.java
+++ b/openam-entitlements/src/main/java/com/sun/identity/entitlement/ExactMatchResourceName.java
@@ -24,6 +24,7 @@
*
* $Id: ExactMatchResourceName.java,v 1.1 2009/08/19 05:40:32 veiming Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package com.sun.identity.entitlement;
@@ -65,7 +66,7 @@ public String canonicalize(String str)
*
* @param o1 a url query parameter to be compared
* @param o2 a url query parameter to be compared
- * @return -1 if o1 < o2; 0 if o1 = o2; 1 if o1 > o2
+ * @return {@code -1} if o1 < o2; {@code 0} if o1 = o2; {@code 1} if o1 > o2
*/
public int compare(Object o1, Object o2) {
String s1 = (String) o1;
diff --git a/openam-entitlements/src/main/java/com/sun/identity/entitlement/GroupSubject.java b/openam-entitlements/src/main/java/com/sun/identity/entitlement/GroupSubject.java
index 909163c672..f2f93f9678 100644
--- a/openam-entitlements/src/main/java/com/sun/identity/entitlement/GroupSubject.java
+++ b/openam-entitlements/src/main/java/com/sun/identity/entitlement/GroupSubject.java
@@ -25,6 +25,7 @@
* $Id: GroupSubject.java,v 1.1 2009/08/19 05:40:33 veiming Exp $
*
* Portions copyright 2014-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package com.sun.identity.entitlement;
@@ -85,8 +86,7 @@ public GroupSubject(String group, String pSubjectName) {
* @param environment Environment parameters.
* @return SubjectDecision of
* EntitlementSubject evaluation
- * @throws com.sun.identity.entitlement, EntitlementException in case
- * of any error
+ * @throws EntitlementException in case of any error
*/
public SubjectDecision evaluate(
String realm,
diff --git a/openam-entitlements/src/main/java/com/sun/identity/entitlement/UserSubject.java b/openam-entitlements/src/main/java/com/sun/identity/entitlement/UserSubject.java
index 2757150940..61848e1e14 100644
--- a/openam-entitlements/src/main/java/com/sun/identity/entitlement/UserSubject.java
+++ b/openam-entitlements/src/main/java/com/sun/identity/entitlement/UserSubject.java
@@ -25,6 +25,7 @@
* $Id: UserSubject.java,v 1.1 2009/08/19 05:40:34 veiming Exp $
*
* Portions Copyrighted 2014-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package com.sun.identity.entitlement;
@@ -79,8 +80,7 @@ public UserSubject(String user, String pSubjectName) {
* @param environment Environment parameters.
* @return SubjectDecision of
* EntitlementSubject evaluation
- * @throws com.sun.identity.entitlement, EntitlementException in case
- * of any error
+ * @throws EntitlementException in case of any error
*/
public SubjectDecision evaluate(
String realm,
diff --git a/openam-entitlements/src/main/java/com/sun/identity/entitlement/opensso/OpenSSOGroupSubject.java b/openam-entitlements/src/main/java/com/sun/identity/entitlement/opensso/OpenSSOGroupSubject.java
index aa32f90f6a..0b72480ecf 100644
--- a/openam-entitlements/src/main/java/com/sun/identity/entitlement/opensso/OpenSSOGroupSubject.java
+++ b/openam-entitlements/src/main/java/com/sun/identity/entitlement/opensso/OpenSSOGroupSubject.java
@@ -25,6 +25,7 @@
* $Id: OpenSSOGroupSubject.java,v 1.2 2009/08/21 21:52:01 hengming Exp $
*
* Portions Copyrighted 2014-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package com.sun.identity.entitlement.opensso;
@@ -100,8 +101,7 @@ public OpenSSOGroupSubject(String group, String pSubjectName) {
* @param environment Environment parameters.
* @return SubjectDecision of
* EntitlementSubject evaluation
- * @throws com.sun.identity.entitlement, EntitlementException in case
- * of any error
+ * @throws EntitlementException in case of any error
*/
@Override
public SubjectDecision evaluate(
diff --git a/openam-entitlements/src/main/java/com/sun/identity/entitlement/opensso/OpenSSOSubjectAttributesCollector.java b/openam-entitlements/src/main/java/com/sun/identity/entitlement/opensso/OpenSSOSubjectAttributesCollector.java
index 98e4e2bbdb..8ea6b4a192 100644
--- a/openam-entitlements/src/main/java/com/sun/identity/entitlement/opensso/OpenSSOSubjectAttributesCollector.java
+++ b/openam-entitlements/src/main/java/com/sun/identity/entitlement/opensso/OpenSSOSubjectAttributesCollector.java
@@ -25,6 +25,7 @@
* $Id: OpenSSOSubjectAttributesCollector.java,v 1.3 2009/09/24 22:38:21 hengming Exp $
*
* Portions Copyrighted 2015-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package com.sun.identity.entitlement.opensso;
@@ -254,7 +255,7 @@ public boolean isGroupMembershipSearchIndexEnabled() {
/**
* Returns the attribute values of the given user represented by
- * Subject object.
+ * a {@code Subject} object.
*
* @param subject identity of the user.
* @param attrNames requested attribute names.
diff --git a/openam-entitlements/src/main/java/com/sun/identity/entitlement/xacml3/SearchFilterFactory.java b/openam-entitlements/src/main/java/com/sun/identity/entitlement/xacml3/SearchFilterFactory.java
index b0f1bb932c..acd1056518 100644
--- a/openam-entitlements/src/main/java/com/sun/identity/entitlement/xacml3/SearchFilterFactory.java
+++ b/openam-entitlements/src/main/java/com/sun/identity/entitlement/xacml3/SearchFilterFactory.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2014-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package com.sun.identity.entitlement.xacml3;
@@ -46,8 +47,8 @@ public SearchFilterFactory() {
*
* Where operator can be one of the following:
* Equals - =
- * Less Than - <
- * Greater Than - >
+ * Less Than - <
+ * Greater Than - >
*
* @param filter Non null String representing a search filter.
* @return Non null parsed SearchFilter.
diff --git a/openam-entitlements/src/main/java/com/sun/identity/entitlement/xacml3/XACMLPrivilegeUtils.java b/openam-entitlements/src/main/java/com/sun/identity/entitlement/xacml3/XACMLPrivilegeUtils.java
index d467f94010..fc8dd33006 100755
--- a/openam-entitlements/src/main/java/com/sun/identity/entitlement/xacml3/XACMLPrivilegeUtils.java
+++ b/openam-entitlements/src/main/java/com/sun/identity/entitlement/xacml3/XACMLPrivilegeUtils.java
@@ -26,6 +26,7 @@
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
* Portions Copyrighted 2014 Nomura Research Institute, Ltd
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package com.sun.identity.entitlement.xacml3;
@@ -92,7 +93,7 @@
* Class with utility methods to map from
* com.sun.identity.entity.Privilege
* to
- * com.sun.identity.entitlement.xacml3.core.Policy
+ * com.sun.identity.entitlement.xacml3.core.Policy
*/
public class XACMLPrivilegeUtils {
diff --git a/openam-entitlements/src/main/java/com/sun/identity/entitlement/xacml3/XACMLReaderWriter.java b/openam-entitlements/src/main/java/com/sun/identity/entitlement/xacml3/XACMLReaderWriter.java
index 941332df3c..7d20616f86 100644
--- a/openam-entitlements/src/main/java/com/sun/identity/entitlement/xacml3/XACMLReaderWriter.java
+++ b/openam-entitlements/src/main/java/com/sun/identity/entitlement/xacml3/XACMLReaderWriter.java
@@ -12,7 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2014-2016 ForgeRock AS.
- * Portions copyright 2025 3A Systems LLC.
+ * Portions copyright 2025-2026 3A Systems LLC.
*/
package com.sun.identity.entitlement.xacml3;
@@ -70,12 +70,13 @@ public PrivilegeSet read(InputStream xacml) throws EntitlementException {
* Translate provided XACML PolicySet into OpenAM Privileges, ReferralPrivileges, Applications and ResourceTypes.
* XACML export file doesn't map Application and Resource Type completely and hence dummy ResourceType Ids
* are assigned to ResourceTypes created and same is used for linking Application, Privilege to the ResourceType.
- *
*
- * From a policySet instance:
+ * From a policySet instance:
+ *
* - An application is created for every unique application name found in the Policy instances.
* - One ResourceType instance (with dummy uuid) per Policy is created.
* - One instance of Privilege per Policy instance is created.
+ *
*
* @param policySet The set of policies to translate
* @return OpenAM Privileges, ReferralPrivileges, Applications and ResourceTypes.
diff --git a/openam-entitlements/src/main/java/com/sun/identity/entitlement/xacml3/validation/RealmValidator.java b/openam-entitlements/src/main/java/com/sun/identity/entitlement/xacml3/validation/RealmValidator.java
index bb2e765a65..82caa75338 100644
--- a/openam-entitlements/src/main/java/com/sun/identity/entitlement/xacml3/validation/RealmValidator.java
+++ b/openam-entitlements/src/main/java/com/sun/identity/entitlement/xacml3/validation/RealmValidator.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2014 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package com.sun.identity.entitlement.xacml3.validation;
@@ -39,8 +40,10 @@ public RealmValidator(OrganizationConfigManager manager) {
}
/**
+ * Validates that every realm in the collection exists in the framework.
+ *
* @param realms Non null but possibly empty collection.
- * @return True if collection is empty, or if the Realm exists in the framework.
+ * @throws EntitlementException if a realm in the collection does not exist in the framework.
*/
public void validateRealms(Collection realms) throws EntitlementException {
Collection all = getAllRealmNames();
diff --git a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/conditions/environment/AuthLevelCondition.java b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/conditions/environment/AuthLevelCondition.java
index 8c033d5972..37e35b70f0 100644
--- a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/conditions/environment/AuthLevelCondition.java
+++ b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/conditions/environment/AuthLevelCondition.java
@@ -14,6 +14,7 @@
* Copyright 2006 Sun Microsystems Inc.
*
* Portions Copyright 2014-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package org.forgerock.openam.entitlement.conditions.environment;
@@ -146,8 +147,9 @@ public ConditionDecision evaluate(String realm, Subject subject, String resource
* Will also set an advice if the requested auth level is less than the configured auth level of the minimum
* required auth level.
*
- * @param maxRequestAuthLevel {@inheritDoc}
- * @param advices {@inheritDoc}
+ * @param maxRequestAuthLevel the maximum authentication level presented by the request
+ * @param advices the advice map, updated with the required authentication level when the condition is not
+ * satisfied
* @return {@code true} if the get {@code maxRequestAuthLevel} is greater than or equal to the configured auth
* level.
*/
diff --git a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/conditions/environment/ConditionConstants.java b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/conditions/environment/ConditionConstants.java
index 77f06a96b0..ae6abef4a9 100644
--- a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/conditions/environment/ConditionConstants.java
+++ b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/conditions/environment/ConditionConstants.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2014 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package org.forgerock.openam.entitlement.conditions.environment;
@@ -89,10 +90,10 @@ private ConditionConstants() {
* Key that is used to define request IP address that is passed down as part of the environment Map
* to evaluate of an EntitlementCondition for condition evaluation. Value for the key
* should be a String representation of IP of the client,
- *
+ *
* For IP version 4:
* The form is n.n.n.n where n is a value between 0 and 255 inclusive.
- *
+ *
* For IP version 6:
* The form is x:x:x:x:x:x:x:x where x is the hexadecimal values of the eight 16-bit pieces of the address.
*/
@@ -167,7 +168,6 @@ private ConditionConstants() {
*
* HH:mm
*
- *
*
*
* Some sample values are
@@ -175,7 +175,6 @@ private ConditionConstants() {
* 08:25
* 18:45
*
- *
*
* @see #END_TIME
*/
@@ -194,7 +193,6 @@ private ConditionConstants() {
*
* HH:mm
*
- *
*
*
* Some sample values are
@@ -202,7 +200,6 @@ private ConditionConstants() {
* 08:25
* 18:45
*
- *
*
* @see #START_TIME
*/
@@ -224,7 +221,6 @@ private ConditionConstants() {
* Sun
* Mon
*
- *
*
* @see #END_DAY
*/
@@ -246,7 +242,6 @@ private ConditionConstants() {
* Sun
* Mon
*
- *
*
* @see #START_DAY
*/
@@ -269,7 +264,6 @@ private ConditionConstants() {
* 2001:02:26
* 2002:12:31
*
- *
*
* @see #END_DATE
*/
@@ -292,7 +286,6 @@ private ConditionConstants() {
* 2001:02:26
* 2002:12:31
*
- *
*
* @see #START_DATE
*/
@@ -354,7 +347,7 @@ private ConditionConstants() {
* - 122.100.85.45-125.110.90.66
* - 145.64.55.35-215.110.173.145
* - 15.64.55.35
- *
+ *
*
* The patterns for IP Version 6 is:
* x:x:x:x:x:x:x:x[-x:x:x:x:x:x:x:x]
@@ -441,7 +434,6 @@ private ConditionConstants() {
* finace.yahoo.com
* *.yahoo.com
*
- *
*/
public static final String DNS_NAME = "dnsName";
diff --git a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/conditions/environment/SimpleTimeCondition.java b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/conditions/environment/SimpleTimeCondition.java
index ff9ab6bbe6..7f2f55a367 100644
--- a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/conditions/environment/SimpleTimeCondition.java
+++ b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/conditions/environment/SimpleTimeCondition.java
@@ -13,6 +13,7 @@
*
* Copyright 2006 Sun Microsystems Inc
* Portions Copyright 2011-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package org.forgerock.openam.entitlement.conditions.environment;
@@ -70,9 +71,9 @@ public class SimpleTimeCondition extends EntitlementConditionAdaptor {
public static final String ENFORCEMENT_TIME_ZONE = "enforcementTimeZone";
/**
- * Key that is used to define the time zone that is passed in the {@code env parameter while invoking
- * {@codegetConditionDecision} method of a {@code SimpleTimeCondition} Value for the key should be a {@codeTimeZone}
- * object. This would be used only if the {@code ENFORCEMENT_TIME_ZONE} is not defined for the
+ * Key that is used to define the time zone that is passed in the {@code env} parameter while invoking the
+ * {@code getConditionDecision} method of a {@code SimpleTimeCondition}. Value for the key should be a
+ * {@code TimeZone} object. This would be used only if the {@code ENFORCEMENT_TIME_ZONE} is not defined for the
* {@code SimpleTimeCondition}.
*
* @see #ENFORCEMENT_TIME_ZONE
diff --git a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/configuration/SmsQueryFilterVisitor.java b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/configuration/SmsQueryFilterVisitor.java
index 6798afe1f7..571f02cd2b 100644
--- a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/configuration/SmsQueryFilterVisitor.java
+++ b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/configuration/SmsQueryFilterVisitor.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package org.forgerock.openam.entitlement.configuration;
@@ -24,7 +25,7 @@
/**
* Query filter visitor that understands attributes associated with the SMS layer.
- *
+ *
* Due to the current way attributes are stored in LDAP via the SMS layer,
* only supported operator is equality. All logical operators are supported.
*
diff --git a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/constraints/ConstraintValidator.java b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/constraints/ConstraintValidator.java
index 73096c13a1..9701e2f9d7 100644
--- a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/constraints/ConstraintValidator.java
+++ b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/constraints/ConstraintValidator.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package org.forgerock.openam.entitlement.constraints;
@@ -19,7 +20,7 @@
/**
* Current validates resources and actions against the constraints within a resource type.
- *
+ *
* This implementation is currently very specific but will become more general purpose, not only concerning itself
* with resource constraints but also subject and environment constraints.
*
diff --git a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/indextree/TreeSaveIndex.java b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/indextree/TreeSaveIndex.java
index 8a218b38df..6fe5ef0274 100644
--- a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/indextree/TreeSaveIndex.java
+++ b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/indextree/TreeSaveIndex.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2013 ForgeRock Inc.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package org.forgerock.openam.entitlement.indextree;
@@ -25,7 +26,7 @@
/**
* Implementation provides a simple save index, which is the passed policy rule as a path index.
- *
+ *
* Expects the passed resource to have already been normalised.
*
* @author apforrest
diff --git a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/indextree/TreeSearchIndexDelegate.java b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/indextree/TreeSearchIndexDelegate.java
index 0e1ff8e112..651d591e54 100644
--- a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/indextree/TreeSearchIndexDelegate.java
+++ b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/indextree/TreeSearchIndexDelegate.java
@@ -12,7 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2013-2014 ForgeRock AS.
- * Portions copyright 2025 3A Systems LLC.
+ * Portions copyright 2025-2026 3A Systems LLC.
*/
package org.forgerock.openam.entitlement.indextree;
@@ -28,7 +28,7 @@
/**
* Implementation provides search index by means of an in memory rule index cache.
- *
+ *
* Expects the passed resource to have already been normalised.
*/
public class TreeSearchIndexDelegate implements ISearchIndex {
diff --git a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/indextree/events/IndexChangeObserver.java b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/indextree/events/IndexChangeObserver.java
index 52f7d8b51d..264e0ce23d 100644
--- a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/indextree/events/IndexChangeObserver.java
+++ b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/indextree/events/IndexChangeObserver.java
@@ -12,12 +12,13 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2013 ForgeRock Inc.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package org.forgerock.openam.entitlement.indextree.events;
/**
* Implemented by any class wanting to be notified of any index change events.
- *
+ *
* It is essential that any implementing class is registered with the
* {@link IndexChangeObservable#registerObserver(IndexChangeObserver)} in order to be included within any notifications.
*
diff --git a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/ApplicationV1Filter.java b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/ApplicationV1Filter.java
index c3ac765558..64a7e022de 100644
--- a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/ApplicationV1Filter.java
+++ b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/ApplicationV1Filter.java
@@ -13,7 +13,7 @@
*
* Copyright 2015-2016 ForgeRock AS.
* Portions Copyrighted 2015 Nomura Research Institute, Ltd.
- * Portions copyright 2025 3A Systems, LLC.
+ * Portions copyright 2025-2026 3A Systems, LLC.
*/
package org.forgerock.openam.entitlement.rest;
@@ -235,7 +235,7 @@ private String generateResourceTypeName(CreateRequest request) throws Entitlemen
* json definition for an application. It also expects that the mentioned application exists with exactly one
* resource type - no resource types or many resource types is not acceptable, else it is impossible to determine
* which resource type applies to the set of actions and resources being passed as part of the application json.
- *
+ *
* Changes to the actions and/or resources will be reflected in the applications associated resource type.
*
* @param context
diff --git a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/ApplicationsResource.java b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/ApplicationsResource.java
index 1bf475ea84..826fc9babf 100644
--- a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/ApplicationsResource.java
+++ b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/ApplicationsResource.java
@@ -13,7 +13,7 @@
*
* Copyright 2014-2016 ForgeRock AS.
* Portions Copyrighted 2019 Open Source Solution Technology Corporation.
-* Portions copyright 2025 3A Systems LLC.
+* Portions copyright 2025-2026 3A Systems LLC.
*/
package org.forgerock.openam.entitlement.rest;
@@ -279,7 +279,7 @@ protected ApplicationWrapper createApplicationWrapper(JsonValue jsonValue, Subje
/**
* Creates an {@link ApplicationWrapper} to hold the {@link Application} object.
- *
+ *
* This method provides an abstraction to aid testing.
*
* @param application
diff --git a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/ConditionTypesResource.java b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/ConditionTypesResource.java
index 2b05c9e9e0..fa5f9c0273 100644
--- a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/ConditionTypesResource.java
+++ b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/ConditionTypesResource.java
@@ -12,7 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2014-2016 ForgeRock AS.
- * Portions copyright 2025 3A Systems LLC.
+ * Portions copyright 2025-2026 3A Systems LLC.
*/
package org.forgerock.openam.entitlement.rest;
@@ -121,8 +121,6 @@ public ConditionTypesResource(@Named("frRest") Debug debug, EntitlementRegistry
}
/**
- * {@inheritDoc}
- *
* Uses the {@link EntitlementRegistry} to locate the {@link EntitlementCondition}s to return.
*
* Looks up all the names of conditions registered in the system, and then returns each one to the
@@ -168,8 +166,6 @@ public Promise queryCollection(Context context
}
/**
- * {@inheritDoc}
- *
* Uses the {@link EntitlementRegistry} to locate the {@link EntitlementCondition} to return.
*/
@Read(operationDescription = @Operation(
diff --git a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/DecisionCombinersResource.java b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/DecisionCombinersResource.java
index 9ad5cd6e7d..20cfc361d8 100644
--- a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/DecisionCombinersResource.java
+++ b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/DecisionCombinersResource.java
@@ -12,7 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2014-2016 ForgeRock AS.
- * Portions copyright 2025 3A Systems LLC.
+ * Portions copyright 2025-2026 3A Systems LLC.
*/
package org.forgerock.openam.entitlement.rest;
@@ -101,7 +101,7 @@ public DecisionCombinersResource(@Named("frRest") Debug debug, EntitlementRegist
}
/**
- * {@inheritDoc}
+ * Queries all decision combiner types registered in the system.
*/
@Query(operationDescription = @Operation(
description = DECISION_COMBINERS_RESOURCE + QUERY_DESCRIPTION),
@@ -145,7 +145,7 @@ public Promise queryCollection(Context context
}
/**
- * {@inheritDoc}
+ * Reads a single decision combiner type by its identifier.
*/
@Read(operationDescription = @Operation(
errors = {
diff --git a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/PolicyResource.java b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/PolicyResource.java
index 38ae5ee71b..9b0aab23b4 100644
--- a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/PolicyResource.java
+++ b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/PolicyResource.java
@@ -13,7 +13,7 @@
*
* Copyright 2014-2015 ForgeRock AS.
* Portions Copyrighted 2019 Open Source Solution Technology Corporation.
- * Portions copyright 2025 3A Systems LLC.
+ * Portions copyright 2025-2026 3A Systems LLC.
*/
package org.forgerock.openam.entitlement.rest;
@@ -134,7 +134,7 @@ public PolicyResource(final PolicyEvaluatorFactory factory,
}
/**
- * {@inheritDoc}
+ * Evaluates policies for the given action request and returns the resulting policy decisions.
*/
@Action(operationDescription = @Operation(
errors = {
diff --git a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/SubjectTypesResource.java b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/SubjectTypesResource.java
index 16ccdf2ebb..8c33f59342 100644
--- a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/SubjectTypesResource.java
+++ b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/SubjectTypesResource.java
@@ -12,7 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2014-2016 ForgeRock AS.
- * Portions copyright 2025 3A Systems LLC.
+ * Portions copyright 2025-2026 3A Systems LLC.
*/
package org.forgerock.openam.entitlement.rest;
@@ -113,8 +113,6 @@ public SubjectTypesResource(@Named("frRest") Debug debug, EntitlementRegistry en
}
/**
- * {@inheritDoc}
- *
* Uses the {@link EntitlementRegistry} to locate the {@link EntitlementSubject}s to return.
*
* Looks up all the names of subjects registered in the system, and then returns each one to the
@@ -161,8 +159,6 @@ public Promise queryCollection(Context context
}
/**
- * {@inheritDoc}
- *
* Uses the {@link EntitlementRegistry} to locate the {@link EntitlementSubject} to return.
*/
@Read(operationDescription = @Operation(
diff --git a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/wrappers/JsonResourceType.java b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/wrappers/JsonResourceType.java
index d0653ddcd8..b5198f4a38 100644
--- a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/wrappers/JsonResourceType.java
+++ b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/wrappers/JsonResourceType.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package org.forgerock.openam.entitlement.rest.wrappers;
@@ -31,7 +32,7 @@
* Wrapper for the conversion of ResourceType to and from JSON.
*
* Taking an instance of an {@link org.forgerock.openam.entitlement.ResourceType} this class exposes the necessary
- * parts of that class to the Jackson {@link org.codehaus.jackson.map.ObjectMapper} via annotations.
+ * parts of that class to the Jackson {@code org.codehaus.jackson.map.ObjectMapper} via annotations.
*/
public class JsonResourceType {
diff --git a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/wrappers/ReferralWrapper.java b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/wrappers/ReferralWrapper.java
index e6b4c0597c..5a7440f0a1 100644
--- a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/wrappers/ReferralWrapper.java
+++ b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/rest/wrappers/ReferralWrapper.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2014-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package org.forgerock.openam.entitlement.rest.wrappers;
@@ -29,7 +30,7 @@
/**
* Wrapper for the jsonification of {@link ReferralPrivilege} objects, for
- * interaction via the REST endpoint {@link org.forgerock.openam.forgerockrest.entitlements.ReferralsResource}.
+ * interaction via the REST endpoint {@code org.forgerock.openam.forgerockrest.entitlements.ReferralsResource}.
*/
public class ReferralWrapper implements Comparable {
diff --git a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/utils/indextree/SimpleReferenceTree.java b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/utils/indextree/SimpleReferenceTree.java
index 1880859eec..79dfb9627b 100644
--- a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/utils/indextree/SimpleReferenceTree.java
+++ b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/utils/indextree/SimpleReferenceTree.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2013 ForgeRock Inc.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package org.forgerock.openam.entitlement.utils.indextree;
@@ -37,12 +38,12 @@
* they and their immediate children have interest in the character. Any previously elected node that has interest is
* reelected and any child nodes that have interest are elected for the first time; all other previously elected nodes
* are disregarded. The same approach is taken for each character of the resource.
- *
+ *
* Once this process has completed for all characters of the resource, any nodes that exist in the election pool will
* have in some way matched the resource, whether explicitly or implicitly via the use of wildcards. Each node in the
* pool is now asked whether it represents an end point and hence a previously added rule. The list of those that do
* is the list that is returned.
- *
+ *
* Rules are added in a tree structure, each node representing the next character within a rule. The tree node that
* represents the last character of a rule is know as an end point; end point nodes mark this fact. The following
* rules end up in the proceeding structure:
@@ -60,17 +61,17 @@
* In the above scenario '/', 'p' and 'l' all become end points, marking in the tree where a policy rule ends. The three
* rules equate to 85 characters, but once in the tree structure this reduces to 50 characters, giving a compression
* just over 40% in this scenario.
- *
+ *
* Only additions to the tree actually modify the trees structure and therefore concise synchronisation has been added
* to this method, to ensure it's thread safe whilst not hindering the performance of the tree. Tree removes never
* actually remove node elements but instead reduce end point markers on the matching nodes. Searches can rest assured
* that the tree structure will always be stable, however due to the lack of synchronisation to keep performance high,
* there's a chance that a read may retrieve stale data if an add occurs at the same time.
- *
+ *
* This implementation makes use of simple tree node references to help improve tree navigation performance and to keep
* the memory footprint to a minimal. It does this by using tree nodes that contain basic references to its position in
* the tree as opposed to using other structures to assist, such as {@link List}.
- *
+ *
* It makes use of a factory for the node creation so that the behavior of resource evaluation can be adapted.
*
* @author apforrest
diff --git a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/utils/indextree/treenodes/RootNode.java b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/utils/indextree/treenodes/RootNode.java
index 69a718436e..40716dcbdb 100644
--- a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/utils/indextree/treenodes/RootNode.java
+++ b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/utils/indextree/treenodes/RootNode.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2013 ForgeRock Inc.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package org.forgerock.openam.entitlement.utils.indextree.treenodes;
@@ -19,7 +20,7 @@
/**
* Root node of the tree structure.
- *
+ *
* As there can be many nodes at the root level, the idea of this root node was created to represent the parent of those
* potential nodes. This helps when describing algorithms by having a single point of access into the tree. It has no
* other function than to be an 'anchor' to the structure.
diff --git a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/utils/indextree/treenodes/TreeNode.java b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/utils/indextree/treenodes/TreeNode.java
index 0afb85972d..159a75c4c8 100644
--- a/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/utils/indextree/treenodes/TreeNode.java
+++ b/openam-entitlements/src/main/java/org/forgerock/openam/entitlement/utils/indextree/treenodes/TreeNode.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2013 ForgeRock Inc.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package org.forgerock.openam.entitlement.utils.indextree.treenodes;
@@ -19,16 +20,16 @@
/**
* A representation of a node with a tree structure.
- *
+ *
* A tree node can have one parent and many children. Children are represented by single references to one another. So
* a parent has a single reference to its first child and then corresponding children can be accessed via a child's
* sibling reference.
- *
+ *
* A tree node represents a single character within an index rule. An index rule is the path in the tree up to an end
* point. Each tree node is responsible for determining whether it has interest in a passed resource character. For
* instance a tree node may represent a wildcard and therefore may have interest in a set of characters. Implementations
* of this interface determine the concrete behaviour.
- *
+ *
* Tree nodes have a notion of end points. An end point denotes the final character of an index rule that was added to
* the tree structure. Therefore the path of an end point is an index rule. For instance, if two index rules "abcd" and
* "abcdef" were added to the tree, there would be no way to determine that the path to tree node "d" represented an
diff --git a/openam-entitlements/src/main/java/org/forgerock/openam/xacml/v3/ImportStep.java b/openam-entitlements/src/main/java/org/forgerock/openam/xacml/v3/ImportStep.java
index b931f7a324..7936f94de8 100644
--- a/openam-entitlements/src/main/java/org/forgerock/openam/xacml/v3/ImportStep.java
+++ b/openam-entitlements/src/main/java/org/forgerock/openam/xacml/v3/ImportStep.java
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package org.forgerock.openam.xacml.v3;
@@ -32,7 +33,7 @@ public interface ImportStep {
/**
* Name of the step. For example name of the resource type or application.
*
- * @return
+ * @return the name of the step
*/
String getName();
diff --git a/openam-entitlements/src/main/java/org/forgerock/openam/xacml/v3/model/CommonType.java b/openam-entitlements/src/main/java/org/forgerock/openam/xacml/v3/model/CommonType.java
index 9b2ce51d0b..420f022adc 100644
--- a/openam-entitlements/src/main/java/org/forgerock/openam/xacml/v3/model/CommonType.java
+++ b/openam-entitlements/src/main/java/org/forgerock/openam/xacml/v3/model/CommonType.java
@@ -22,12 +22,12 @@
~ your own identifying information:
~ "Portions Copyrighted [year] [name of copyright owner]"
*
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package org.forgerock.openam.xacml.v3.model;
/**
* Normalized Content Types from Specific Types.
- *
*
* @author jeff.schenk@forgerock.com
* @see ContentType
diff --git a/openam-entitlements/src/main/java/org/forgerock/openam/xacml/v3/model/ContentType.java b/openam-entitlements/src/main/java/org/forgerock/openam/xacml/v3/model/ContentType.java
index 77bdd10118..6acc4321bb 100644
--- a/openam-entitlements/src/main/java/org/forgerock/openam/xacml/v3/model/ContentType.java
+++ b/openam-entitlements/src/main/java/org/forgerock/openam/xacml/v3/model/ContentType.java
@@ -22,13 +22,14 @@
~ your own identifying information:
~ "Portions Copyrighted [year] [name of copyright owner]"
*
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package org.forgerock.openam.xacml.v3.model;
/**
* Various Content Types which are dealt with using XACML 3 via HTTP/REST.
- *
- * Extending MediaTypes, @see javax.ws.rs.core.MediaType.
+ *
+ * Extending MediaTypes, see {@code javax.ws.rs.core.MediaType}.
*
* @author jeff.schenk@forgerock.com
*/
@@ -60,8 +61,8 @@ public CommonType getCommonType() {
/**
* Normalize the Content Received from the actual HTTP Request.
*
- * @param contentTypeStringValue
- * @return
+ * @param contentTypeStringValue the raw Content-Type value received from the HTTP request
+ * @return the matching {@link ContentType}, or {@code null} if the value is {@code null} or empty
*/
public static ContentType getNormalizedContentType(final String contentTypeStringValue) {
if ((contentTypeStringValue == null) || (contentTypeStringValue.isEmpty())) {
diff --git a/openam-entitlements/src/main/java/org/forgerock/openam/xacml/v3/resources/XACML3HomeResource.java b/openam-entitlements/src/main/java/org/forgerock/openam/xacml/v3/resources/XACML3HomeResource.java
index 6cd8a63b3d..8224cced90 100644
--- a/openam-entitlements/src/main/java/org/forgerock/openam/xacml/v3/resources/XACML3HomeResource.java
+++ b/openam-entitlements/src/main/java/org/forgerock/openam/xacml/v3/resources/XACML3HomeResource.java
@@ -1,3 +1,29 @@
+/**
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+ *
+ * Copyright (c) 2011-2013 ForgeRock AS. All Rights Reserved
+ *
+ * The contents of this file are subject to the terms
+ * of the Common Development and Distribution License
+ * (the License). You may not use this file except in
+ * compliance with the License.
+ *
+ * You can obtain a copy of the License at
+ * http://forgerock.org/license/CDDLv1.0.html
+ * See the License for the specific language governing
+ * permission and limitations under the License.
+ *
+ * When distributing Covered Code, include this CDDL
+ * Header Notice in each file and include the License file
+ * at http://forgerock.org/license/CDDLv1.0.html
+ * If applicable, add the following below the CDDL Header,
+ * with the fields enclosed by brackets [] replaced by
+ * your own identifying information:
+ * "Portions Copyrighted [year] [name of copyright owner]"
+ *
+ * Portions Copyrighted 2026 3A Systems, LLC.
+ */
package org.forgerock.openam.xacml.v3.resources;
import com.sun.identity.shared.debug.Debug;
@@ -11,7 +37,7 @@
/**
* XACML Resource for Home Documents
- *
+ *
* Provides main end-point for all XACML Home requests.
*
* @author Jeff.Schenk@forgerock.com
@@ -32,8 +58,8 @@ private XACML3HomeResource() {
* Creates Home Document Content providing hints.
*
* @return String -- Containing Response in requested ContentType.
- * @throws jakarta.servlet.ServletException
- * @throws java.io.IOException
+ * @throws org.json.JSONException if the home document cannot be built
+ * @throws java.io.IOException if writing the home document fails
*/
public static String getHome() throws JSONException, IOException {
String classMethod = "XacmlHomeResource:getHome";
@@ -54,7 +80,7 @@ public static String getHome() throws JSONException, IOException {
/**
* Home Document
* XML Home Document using ATOM RFC4287
- * @return
+ * @return the XML home document as a String
*/
public static String getXMLHomeDocument() {
StringBuilder sb = new StringBuilder();
@@ -74,7 +100,7 @@ public static String getXMLHomeDocument() {
* Formulate our Home Document.
*
* @return JSONObject
- * @throws org.json.JSONException
+ * @throws org.json.JSONException if the JSON home document cannot be built
*/
public static JSONObject getJSONHomeDocument() throws JSONException {
JSONObject resources = new JSONObject();
diff --git a/openam-entitlements/src/main/java/org/forgerock/openam/xacml/v3/resources/XACML3Resource.java b/openam-entitlements/src/main/java/org/forgerock/openam/xacml/v3/resources/XACML3Resource.java
index 4f2be69a4e..6c6ae471a3 100644
--- a/openam-entitlements/src/main/java/org/forgerock/openam/xacml/v3/resources/XACML3Resource.java
+++ b/openam-entitlements/src/main/java/org/forgerock/openam/xacml/v3/resources/XACML3Resource.java
@@ -22,12 +22,13 @@
* your own identifying information:
* "Portions Copyrighted [year] [name of copyright owner]"
*
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package org.forgerock.openam.xacml.v3.resources;
/**
* XACML Resource
- *
+ *
* Provides Top Level Object for XACML v3 Resources
* which represent end components for the overall XACML Framework.
*
diff --git a/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/idrepo/IdRepoSample.java b/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/idrepo/IdRepoSample.java
index 99ee075280..0bba437b35 100644
--- a/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/idrepo/IdRepoSample.java
+++ b/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/idrepo/IdRepoSample.java
@@ -27,6 +27,7 @@
*/
/*
* Portions Copyright 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package com.sun.identity.samples.clientsdk.idrepo;
@@ -47,7 +48,6 @@
* This class
*
*
- * @author
*/
public class IdRepoSample {
static final String DEF_USERNAME = "amAdmin";
diff --git a/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/idrepo/IdRepoSampleCreateId.java b/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/idrepo/IdRepoSampleCreateId.java
index 815006126d..caa06b4408 100644
--- a/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/idrepo/IdRepoSampleCreateId.java
+++ b/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/idrepo/IdRepoSampleCreateId.java
@@ -24,6 +24,7 @@
*
* $Id: IdRepoSampleCreateId.java,v 1.15 2008/09/24 19:50:10 goodearth Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package com.sun.identity.samples.clientsdk.idrepo;
@@ -47,7 +48,6 @@
* This class
*
*
- * @author
*/
public class IdRepoSampleCreateId {
diff --git a/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/idrepo/IdRepoSampleDeleteId.java b/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/idrepo/IdRepoSampleDeleteId.java
index 43d0dba563..5c67f0dac4 100644
--- a/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/idrepo/IdRepoSampleDeleteId.java
+++ b/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/idrepo/IdRepoSampleDeleteId.java
@@ -25,6 +25,7 @@
* $Id: IdRepoSampleDeleteId.java,v 1.3 2008/06/25 05:41:13 qcheng Exp $
*
* Portions Copyrighted 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package com.sun.identity.samples.clientsdk.idrepo;
@@ -46,7 +47,6 @@
* This class
*
*
- * @author
*/
public class IdRepoSampleDeleteId {
diff --git a/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/idrepo/IdRepoSampleGetSpecialIds.java b/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/idrepo/IdRepoSampleGetSpecialIds.java
index 8b8ab2b6b0..e838027e3a 100644
--- a/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/idrepo/IdRepoSampleGetSpecialIds.java
+++ b/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/idrepo/IdRepoSampleGetSpecialIds.java
@@ -24,6 +24,7 @@
*
* $Id: IdRepoSampleGetSpecialIds.java,v 1.2 2008/06/25 05:41:14 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package com.sun.identity.samples.clientsdk.idrepo;
@@ -44,7 +45,6 @@
* This class
*
*
- * @author
*/
public class IdRepoSampleGetSpecialIds {
diff --git a/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/idrepo/IdRepoSampleSearchIds.java b/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/idrepo/IdRepoSampleSearchIds.java
index f942de694f..a9a212533f 100644
--- a/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/idrepo/IdRepoSampleSearchIds.java
+++ b/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/idrepo/IdRepoSampleSearchIds.java
@@ -25,6 +25,7 @@
* $Id: IdRepoSampleSearchIds.java,v 1.4 2008/06/25 05:41:14 qcheng Exp $
*
* Portions Copyrighted 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package com.sun.identity.samples.clientsdk.idrepo;
@@ -46,7 +47,6 @@
* This class
*
*
- * @author
*/
public class IdRepoSampleSearchIds {
diff --git a/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/idrepo/IdRepoSampleSubRealm.java b/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/idrepo/IdRepoSampleSubRealm.java
index cc895dea37..cc5a660dce 100644
--- a/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/idrepo/IdRepoSampleSubRealm.java
+++ b/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/idrepo/IdRepoSampleSubRealm.java
@@ -24,6 +24,7 @@
*
* $Id: IdRepoSampleSubRealm.java,v 1.2 2008/06/25 05:41:14 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package com.sun.identity.samples.clientsdk.idrepo;
@@ -37,7 +38,6 @@
* This class
*
*
- * @author
*/
public class IdRepoSampleSubRealm {
diff --git a/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/idrepo/IdRepoSampleUtils.java b/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/idrepo/IdRepoSampleUtils.java
index c51858e371..06d1a701f5 100644
--- a/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/idrepo/IdRepoSampleUtils.java
+++ b/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/idrepo/IdRepoSampleUtils.java
@@ -24,6 +24,7 @@
*
* $Id: IdRepoSampleUtils.java,v 1.5 2008/08/07 22:08:20 goodearth Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package com.sun.identity.samples.clientsdk.idrepo;
@@ -52,7 +53,6 @@
* This class
*
*
- * @author
*/
public class IdRepoSampleUtils {
diff --git a/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/logging/LogSampleUtils.java b/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/logging/LogSampleUtils.java
index a869bbf225..fc6b7bf1cb 100644
--- a/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/logging/LogSampleUtils.java
+++ b/openam-examples/openam-example-clientsdk-cli/src/main/java/com/sun/identity/samples/clientsdk/logging/LogSampleUtils.java
@@ -24,6 +24,7 @@
*
* $Id: LogSampleUtils.java,v 1.3 2008/07/29 20:34:57 bigfatrat Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC.
*/
package com.sun.identity.samples.clientsdk.logging;
@@ -48,7 +49,6 @@
* This class
*
*
- * @author
*/
public class LogSampleUtils {
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/authentication/modules/federation/FederationPrincipal.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/authentication/modules/federation/FederationPrincipal.java
index 17dcfb4445..a7ae807ac6 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/authentication/modules/federation/FederationPrincipal.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/authentication/modules/federation/FederationPrincipal.java
@@ -24,6 +24,7 @@
*
* $Id: FederationPrincipal.java,v 1.2 2008/06/25 05:49:31 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.authentication.modules.federation;
@@ -49,8 +50,6 @@ public FederationPrincipal(String name) {
/**
* Return the LDAP username for this FederationPrincipal.
*
- *
- *
* @return the LDAP username for this FederationPrincipal
*/
public String getName() {
@@ -60,8 +59,6 @@ public String getName() {
/**
* Return a string representation of this FederationPrincipal.
*
- *
- *
* @return a string representation of this FederationPrincipal.
*/
public String toString() {
@@ -74,8 +71,6 @@ public String toString() {
* FederationPrincipal and the two FederationPrincipals
* have the same username.
*
- *
- *
* @param o Object to be compared for equality with this
* FederationPrincipal.
*
@@ -103,8 +98,6 @@ public boolean equals(Object o) {
/**
* Return a hash code for this FederationPrincipal.
*
- *
- *
* @return a hash code for this FederationPrincipal.
*/
public int hashCode() {
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/authentication/modules/sae/SAEPrincipal.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/authentication/modules/sae/SAEPrincipal.java
index 3a16656548..e2119de0bd 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/authentication/modules/sae/SAEPrincipal.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/authentication/modules/sae/SAEPrincipal.java
@@ -24,6 +24,7 @@
*
* $Id: SAEPrincipal.java,v 1.2 2008/06/25 05:49:31 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.authentication.modules.sae;
@@ -54,8 +55,6 @@ public SAEPrincipal (String name) {
/**
* Returns the username for this SAEPrincipal.
*
- *
- *
* @return the username for this SAEPrincipal
*/
public String getName() {
@@ -65,8 +64,6 @@ public String getName() {
/**
* Returns a string representation of this SAEPrincipal.
*
- *
- *
* @return a string representation of this SAEPrincipal.
*/
public String toString() {
@@ -79,8 +76,6 @@ public String toString() {
* SAEPrincipal and the two SAEPrincipals
* have the same username.
*
- *
- *
* @param o Object to be compared for equality with this
* SAEPrincipal.
*
@@ -106,8 +101,6 @@ public boolean equals(Object o) {
/**
* Returns a hash code for this SAEPrincipal.
*
- *
- *
* @return a hash code for this SAEPrincipal.
*/
public int hashCode() {
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/liberty/ws/disco/plugins/DefaultDiscoAuthorizer.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/liberty/ws/disco/plugins/DefaultDiscoAuthorizer.java
index f3fe0fabd3..b5c53a90e1 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/liberty/ws/disco/plugins/DefaultDiscoAuthorizer.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/liberty/ws/disco/plugins/DefaultDiscoAuthorizer.java
@@ -24,6 +24,7 @@
*
* $Id: DefaultDiscoAuthorizer.java,v 1.2 2008/06/25 05:49:56 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -176,7 +177,8 @@ private boolean checkInput(Object credential, String action, Object data,
* com.sun.identity.liberty.ws.soapbinding.Message.
* @return AuthorizationDecision object contains authorization
* decision information for the given resource.
- * @exception Exception
+ * @exception Exception if an error occurs while making the authorization
+ * decision.
*/
public Object getAuthorizationDecision(
Object credential,
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/liberty/ws/idpp/plugin/IDPPAuthorizer.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/liberty/ws/idpp/plugin/IDPPAuthorizer.java
index 572c518c4c..c04626b897 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/liberty/ws/idpp/plugin/IDPPAuthorizer.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/liberty/ws/idpp/plugin/IDPPAuthorizer.java
@@ -25,6 +25,7 @@
* $Id: IDPPAuthorizer.java,v 1.6 2008/08/19 19:12:22 veiming Exp $
*
* Portions Copyrighted 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.liberty.ws.idpp.plugin;
@@ -105,7 +106,8 @@ public boolean isAuthorized(Object credential, String action,
* decision information for the given data.
* For Personal Profile service, this object would be the
* String authZ decision value.
- * @exception Exception
+ * @exception Exception if an error occurs while making the authorization
+ * decision.
*/
public Object getAuthorizationDecision(
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/saml/plugins/DefaultActionMapper.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/saml/plugins/DefaultActionMapper.java
index c623b3a550..4af3477551 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/saml/plugins/DefaultActionMapper.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/saml/plugins/DefaultActionMapper.java
@@ -25,6 +25,7 @@
* $Id: DefaultActionMapper.java,v 1.4 2008/08/19 19:12:24 veiming Exp $
*
* Portions Copyrighted 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml.plugins;
@@ -81,7 +82,6 @@ public DefaultActionMapper() {}
* "urn:com:sun:identity"; and its SubjectConfirmationData contains
* TEXT node only, then the method returns the concatenated string of all
* the TEXT nodes. Otherwise, it returns null.
- *
* @see com.sun.identity.saml.plugins.ActionMapper#getSSOTokenID
*/
public String getSSOTokenID(AuthorizationDecisionQuery query) {
@@ -105,7 +105,6 @@ public String getSSOTokenID(AuthorizationDecisionQuery query) {
* This method exams the Evidence in the AuthorizationDecisionQuery.
* It returns the first valid Assertion that contains at least one
* AuthenticationStatement.
- *
* @see com.sun.identity.saml.plugins.ActionMapper#getSSOAssertion
*/
public Assertion getSSOAssertion(AuthorizationDecisionQuery query,
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/saml/plugins/DefaultSiteAttributeMapper.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/saml/plugins/DefaultSiteAttributeMapper.java
index 5db2184ba9..8d726b1079 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/saml/plugins/DefaultSiteAttributeMapper.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/saml/plugins/DefaultSiteAttributeMapper.java
@@ -24,7 +24,7 @@
*
* $Id: DefaultSiteAttributeMapper.java,v 1.2 2009/01/08 04:29:00 hengming Exp $
*
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
@@ -60,8 +60,6 @@
* AttributeStatements elements, as part of the
* Authentication Assertion returned to the partner during the
* SSO scenario of Browser Artifact and POST profile.
- *
- *
*/
public class DefaultSiteAttributeMapper implements ConsumerSiteAttributeMapper {
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/saml/plugins/NameIDPartnerAccountMapper.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/saml/plugins/NameIDPartnerAccountMapper.java
index 54cdcd7088..40a6c35a47 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/saml/plugins/NameIDPartnerAccountMapper.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/saml/plugins/NameIDPartnerAccountMapper.java
@@ -25,6 +25,7 @@
* $Id: NameIDPartnerAccountMapper.java,v 1.5 2010/01/09 19:41:52 qcheng Exp $
*
* Portions Copyright 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml.plugins;
@@ -44,7 +45,6 @@
* the value is DN, the RND value will be returned. If value is email
* address, the email id (without @domain) will be returned. Otherwise,
* whole Name ID value will be returned.
- *
*/
public class NameIDPartnerAccountMapper extends DefaultPartnerAccountMapper {
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/policy/WSSPolicyManager.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/policy/WSSPolicyManager.java
index d07ed13bd2..f385df9859 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/policy/WSSPolicyManager.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/policy/WSSPolicyManager.java
@@ -24,6 +24,7 @@
*
* $Id: WSSPolicyManager.java,v 1.2 2009/12/19 00:09:41 asyhuang Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.wss.policy;
@@ -238,9 +239,10 @@ public String getPolicy(ProviderConfig providerConfig)
*
* @return the XML String representation for the web service provider
* input policy.
- * @throws com.sun.identity.wss.policy.WSSPolicyException
+ * @throws com.sun.identity.wss.policy.WSSPolicyException if the input
+ * policy cannot be generated.
*/
- public String getInputPolicy(ProviderConfig providerConfig)
+ public String getInputPolicy(ProviderConfig providerConfig)
throws WSSPolicyException {
try {
@@ -292,7 +294,8 @@ public String getInputPolicy(ProviderConfig providerConfig)
* provider.
* @return the XML String representation of ws-security policy for the
* web service provider.
- * @throws com.sun.identity.wss.policy.WSSPolicyException
+ * @throws com.sun.identity.wss.policy.WSSPolicyException if the output
+ * policy cannot be generated.
*/
public String getOutputPolicy(ProviderConfig providerConfig)
throws WSSPolicyException {
@@ -330,7 +333,7 @@ public String getOutputPolicy(ProviderConfig providerConfig)
* Returns the STS end point policy
* @return the XML String representation of ws-security policy for the
* STS service.
- * @throws WSSPolicyException
+ * @throws WSSPolicyException if the STS policy cannot be generated.
*/
public String getSTSPolicy()
throws WSSPolicyException {
@@ -342,7 +345,8 @@ public String getSTSPolicy()
* Returns the input policy for the STS service
* @return the XML String representation of ws-security policy for the
* STS service.
- * @throws com.sun.identity.wss.policy.WSSPolicyException
+ * @throws com.sun.identity.wss.policy.WSSPolicyException if the STS input
+ * policy cannot be generated.
*/
public String getSTSInputPolicy() throws WSSPolicyException {
return getInputPolicy(getSTSConfig());
@@ -353,7 +357,8 @@ public String getSTSInputPolicy() throws WSSPolicyException {
* Returns the output policy for the STS service
* @return the XML String representation of ws-security policy for the
* STS service.
- * @throws com.sun.identity.wss.policy.WSSPolicyException
+ * @throws com.sun.identity.wss.policy.WSSPolicyException if the STS output
+ * policy cannot be generated.
*/
public String getSTSOutputPolicy() throws WSSPolicyException {
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/provider/STSConfig.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/provider/STSConfig.java
index 381c698814..47ecada732 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/provider/STSConfig.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/provider/STSConfig.java
@@ -24,6 +24,7 @@
*
* $Id: STSConfig.java,v 1.10 2009/11/16 21:52:58 mallas Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
/*
@@ -104,7 +105,7 @@ public String getKeyType() {
/**
* Sets the keytype
- * @param keyType
+ * @param keyType the key type to set, for example symmetric or asymmetric.
*/
public void setKeyType(String keyType) {
this.keyType = keyType;
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/provider/TrustAuthorityConfig.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/provider/TrustAuthorityConfig.java
index ff49199dc3..a51e46aa7f 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/provider/TrustAuthorityConfig.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/provider/TrustAuthorityConfig.java
@@ -24,6 +24,7 @@
*
* $Id: TrustAuthorityConfig.java,v 1.14 2009/02/28 00:59:42 mrudul_uchil Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.wss.provider;
@@ -386,7 +387,8 @@ protected abstract void init(String name, String type, SSOToken ssoToken)
/**
* Deletes the trust authrority configuration.
- * @exception ProviderException
+ * @exception ProviderException if the trust authority configuration is
+ * unable to be deleted.
*/
protected abstract void delete() throws ProviderException;
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/BinarySecurityToken.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/BinarySecurityToken.java
index c61350d0e9..1d045849cb 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/BinarySecurityToken.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/BinarySecurityToken.java
@@ -24,6 +24,7 @@
*
* $Id: BinarySecurityToken.java,v 1.9 2009/07/24 21:51:06 mallas Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.wss.security;
@@ -188,7 +189,8 @@ public BinarySecurityToken(X509Certificate cert,
/**
* Constructor to create Kerberos Token
* @param kbSpec The Kerberos Token Specification
- * @throws com.sun.identity.wss.security.SecurityException
+ * @throws com.sun.identity.wss.security.SecurityException if the Kerberos
+ * token cannot be created.
*/
public BinarySecurityToken(KerberosTokenSpec kbSpec)
throws SecurityException {
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/FAMSecurityToken.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/FAMSecurityToken.java
index 3202cc2983..df3c0449dc 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/FAMSecurityToken.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/FAMSecurityToken.java
@@ -24,6 +24,7 @@
*
* $Id: FAMSecurityToken.java,v 1.6 2009/12/23 22:32:28 mrudul_uchil Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.wss.security;
@@ -55,7 +56,8 @@ public class FAMSecurityToken implements SecurityToken {
/**
* Constructor for FAMSecurityToken
* @param ssoToken Single Sign on token of the subject.
- * @throws com.sun.identity.wss.security.SecurityException
+ * @throws com.sun.identity.wss.security.SecurityException if the single
+ * sign-on token is invalid.
*/
public FAMSecurityToken(SSOToken ssoToken) throws SecurityException {
try {
@@ -72,7 +74,8 @@ public FAMSecurityToken(SSOToken ssoToken) throws SecurityException {
/**
* Constructor that uses DOM Element
* @param element the DOM representation of security token.
- * @throws com.sun.identity.wss.security.SecurityException
+ * @throws com.sun.identity.wss.security.SecurityException if the security
+ * token cannot be parsed from the element.
*/
public FAMSecurityToken(Element element) throws SecurityException {
if(element == null) {
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/KerberosConfiguration.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/KerberosConfiguration.java
index 2b395a482b..b4b61f51b7 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/KerberosConfiguration.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/KerberosConfiguration.java
@@ -24,6 +24,7 @@
*
* $Id: KerberosConfiguration.java,v 1.2 2008/06/25 05:50:07 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.wss.security;
@@ -34,7 +35,7 @@
import javax.security.auth.login.AppConfigurationEntry;
/**
- * This class KerberosConfiguration represents Kerberos
+ * This class KerberosConfiguration represents Kerberos
* Configuration for web service clients and web service providers.
*/
public class KerberosConfiguration extends Configuration {
@@ -54,7 +55,7 @@ public class KerberosConfiguration extends Configuration {
/**
* Constructor
*
- * @param config
+ * @param config the base configuration to delegate to.
*/
public KerberosConfiguration (Configuration config) {
this.config = config;
@@ -63,7 +64,7 @@ public KerberosConfiguration (Configuration config) {
/**
* Sets principal name.
*
- * @param principalName
+ * @param principalName the service principal name to set.
*/
public void setPrincipalName(String principalName) {
servicePrincipal = principalName;
@@ -72,7 +73,7 @@ public void setPrincipalName(String principalName) {
/**
* Sets key tab file.
*
- * @param keytabFile
+ * @param keytabFile the keytab file to use.
*/
public void setKeyTab(String keytabFile) {
keytab = keytabFile;
@@ -80,7 +81,7 @@ public void setKeyTab(String keytabFile) {
/**
* Sets a boolean value to refresh the configuration.
- * @param refresh
+ * @param refresh whether the configuration should be refreshed.
*/
public void setRefreshConfig(String refresh) {
refreshConf = refresh;
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/SecurityMechanism.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/SecurityMechanism.java
index ff9ad0bf56..701536fc21 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/SecurityMechanism.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/SecurityMechanism.java
@@ -24,6 +24,7 @@
*
* $Id: SecurityMechanism.java,v 1.8 2008/08/31 15:50:03 mrudul_uchil Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.wss.security;
@@ -717,7 +718,7 @@ public static List getLibertySecurityMechanismURIs() {
/**
* Returns all the list of SecurityMechanisms supported
* by the Web Services Client.
- * @return the list of SecurityMechanisms supported
+ * @return the list of SecurityMechanisms supported
* by the Web Services Client.
*/
public static List getAllWSCSecurityMechanisms() {
@@ -737,7 +738,7 @@ public static List getAllWSCSecurityMechanisms() {
}
/**
- * Returns all the list of SecurityMechanisms supported
+ * Returns all the list of SecurityMechanisms supported
* by the Web Services Provider.
* @return the list of SecurityMechanisms supported
* by the Web Services Provider.
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/UserNameToken.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/UserNameToken.java
index b107dd628f..7f48831a48 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/UserNameToken.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/UserNameToken.java
@@ -24,6 +24,7 @@
*
* $Id: UserNameToken.java,v 1.8 2009/01/24 01:31:25 mallas Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.wss.security;
@@ -315,7 +316,7 @@ public String toString() {
/**
* Returns the XML document element for the username security token.
* @return Element the XML Element for the username security token.
- * @exception if the XML document conversion is failed.
+ * @exception SecurityException if the XML document conversion is failed.
*/
public Element toDocumentElement() throws SecurityException {
Document document = XMLUtils.toDOMDocument(toString(), debug);
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/WSSUtils.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/WSSUtils.java
index c0b7ae6c0c..1875df1b92 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/WSSUtils.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/WSSUtils.java
@@ -25,7 +25,7 @@
* $Id: WSSUtils.java,v 1.23 2010/01/23 00:20:26 mrudul_uchil Exp $
*
* Portions Copyrighted 2012-2014 ForgeRock AS
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.wss.security;
@@ -779,7 +779,7 @@ public static WSSCacheRepository getWSSCacheRepository() {
}
/**
- * Returns the SAML Attribute Map>. The attribute map
+ * Returns the SAML Attribute {@code Map>}. The attribute map
* is generated from the given SSOToken first and if not found, then it
* will try to find from the repository.
* @param subjectName the principal to be used for retrieving the user
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/handler/SOAPRequestHandler.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/handler/SOAPRequestHandler.java
index 5153a3bd86..dc43ed6602 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/handler/SOAPRequestHandler.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/handler/SOAPRequestHandler.java
@@ -24,7 +24,7 @@
*
* $Id: SOAPRequestHandler.java,v 1.47 2010/01/15 18:54:34 mrudul_uchil Exp $
*
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.wss.security.handler;
@@ -183,7 +183,8 @@ public void init(Map config) throws SecurityException {
* to store Principals and credentials validated in the request.
*
* @param sharedState that may be used to store any shared state
- * information between validateRequest and
+ * information between validateRequest and
+ * secureResponse
*
* @param request the HttpServletRequest associated with
* this SOAP Message request.
@@ -619,7 +620,7 @@ public SOAPMessage secureResponse (SOAPMessage soapMessage,
*
* @param soapMessage the SOAPMessage that needs to be secured.
*
- * @param subject the Subject of the authenticating entity.
+ * @param subject the Subject of the authenticating entity.
*
* @param sharedState Any shared state information that may be used between
* the secureRequest and validateResponse.
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/handler/SOAPRequestHandlerInterface.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/handler/SOAPRequestHandlerInterface.java
index 751fd78620..e4e9ccc5c0 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/handler/SOAPRequestHandlerInterface.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/handler/SOAPRequestHandlerInterface.java
@@ -24,7 +24,7 @@
*
* $Id: SOAPRequestHandlerInterface.java,v 1.2 2008/06/25 05:50:11 qcheng Exp $
*
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.wss.security.handler;
@@ -66,7 +66,8 @@ public interface SOAPRequestHandlerInterface {
* to store Principals and credentials validated in the request.
*
* @param sharedState that may be used to store any shared state
- * information between validateRequest and
+ * information between validateRequest and
+ * secureResponse
*
* @param request the HttpServletRequest associated with
* this SOAP Message request.
@@ -105,7 +106,7 @@ public SOAPMessage secureResponse (SOAPMessage soapMessage,
*
* @param soapMessage the SOAPMessage that needs to be secured.
*
- * @param subject the Subject of the authenticating entity.
+ * @param subject the Subject of the authenticating entity.
*
* @param sharedState Any shared state information that may be used between
* the secureRequest and validateResponse.
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/handler/SecureSOAPMessage.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/handler/SecureSOAPMessage.java
index 812fe30a5f..e2c3216226 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/handler/SecureSOAPMessage.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/security/handler/SecureSOAPMessage.java
@@ -24,7 +24,7 @@
*
* $Id: SecureSOAPMessage.java,v 1.30 2010/01/23 00:20:27 mrudul_uchil Exp $
*
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.wss.security.handler;
@@ -979,8 +979,8 @@ private List getSigningIds() throws Exception {
}
/**
- * Returns the messageID from the header.
- * @return the messageID from the header.
+ * Returns the messageID from the {@code } header.
+ * @return the messageID from the {@code } header.
*/
public String getMessageID() {
return messageID;
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/sts/ClientUserToken.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/sts/ClientUserToken.java
index 3cd6d5b603..d217506867 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/sts/ClientUserToken.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/sts/ClientUserToken.java
@@ -24,6 +24,7 @@
*
* $Id: ClientUserToken.java,v 1.5 2008/08/27 19:05:53 mrudul_uchil Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.wss.sts;
@@ -53,8 +54,9 @@ public interface ClientUserToken extends Token {
/**
* Initializes client user token.
- * @param obj credential object to initialize the user token
- * @throws com.sun.identity.wss.sts.FAMSTSException
+ * @param obj credential object to initialize the user token
+ * @throws com.sun.identity.wss.sts.FAMSTSException if the user token
+ * cannot be initialized.
*/
public void init(Object obj) throws FAMSTSException;
@@ -62,15 +64,17 @@ public interface ClientUserToken extends Token {
* Parses the custom token element. This method is used at the
* receiving end (STS server side).
* @param element the custom token element
- * @throws com.sun.identity.wss.sts.FAMSTSException
+ * @throws com.sun.identity.wss.sts.FAMSTSException if the token element
+ * cannot be parsed.
*/
public void parse(Element element) throws FAMSTSException;
/**
* Returns the principal name that the client user token carries.
* @return the principal name that the client user token carries
- * @throws com.sun.identity.wss.sts.FAMSTSException
- */
+ * @throws com.sun.identity.wss.sts.FAMSTSException if the principal name
+ * cannot be retrieved.
+ */
public String getPrincipalName() throws FAMSTSException;
/**
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/BinarySecret.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/BinarySecret.java
index cefd7ab381..92a11e01ae 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/BinarySecret.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/BinarySecret.java
@@ -24,6 +24,7 @@
*
* $Id: BinarySecret.java,v 1.1 2009/08/29 03:05:59 mallas Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.wss.trust;
@@ -59,14 +60,16 @@ public void setSecret(byte[] secret) {
/**
* Returns the DOM Element representation for the binary secret.
* @return the DOM Element representation for the binary secret.
- * @throws com.sun.identity.wss.sts.protocol.WSTException
+ * @throws com.sun.identity.wss.trust.WSTException if the DOM element
+ * cannot be created.
*/
public abstract Element toDOMElement() throws WSTException;
/**
* Converts into XML String
* @return the XML String for BinarySecret.
- * @throws com.sun.identity.wss.trust.WSTException
+ * @throws com.sun.identity.wss.trust.WSTException if the XML string
+ * cannot be created.
*/
public abstract String toXMLString() throws WSTException;
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/ClaimType.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/ClaimType.java
index cc016131d9..86c85571e1 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/ClaimType.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/ClaimType.java
@@ -24,6 +24,7 @@
*
* $Id: ClaimType.java,v 1.1 2009/10/13 23:19:49 mallas Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.wss.trust;
@@ -55,7 +56,8 @@ public ClaimType(String nameSpaceURI) {
/**
* Constructor
* @param element the claimtype element
- * @throws com.sun.identity.wss.trust.WSTException
+ * @throws com.sun.identity.wss.trust.WSTException if the claim type element
+ * cannot be parsed.
*/
public ClaimType(Element element) throws WSTException {
if(element == null) {
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/RequestSecurityToken.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/RequestSecurityToken.java
index 58d9fb35be..d778324b96 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/RequestSecurityToken.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/RequestSecurityToken.java
@@ -24,6 +24,7 @@
*
* $Id: RequestSecurityToken.java,v 1.2 2009/10/13 23:19:49 mallas Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.wss.trust;
@@ -158,14 +159,16 @@ public void setClaimTypes(List claimTypes) {
/**
* Returns the DOM Element representation for the request security token.
* @return the DOM Element representation for the request security token.
- * @throws com.sun.identity.wss.sts.protocol.WSTException
+ * @throws com.sun.identity.wss.trust.WSTException if the DOM element
+ * cannot be created.
*/
public abstract Element toDOMElement() throws WSTException;
/**
* Converts into XML String
* @return the XML String for RequestSecurityToken.
- * @throws com.sun.identity.wss.trust.WSTException
+ * @throws com.sun.identity.wss.trust.WSTException if the XML string
+ * cannot be created.
*/
public abstract String toXMLString() throws WSTException;
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/RequestSecurityTokenResponse.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/RequestSecurityTokenResponse.java
index 80aa583ef4..9f3f4ff9cc 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/RequestSecurityTokenResponse.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/RequestSecurityTokenResponse.java
@@ -24,6 +24,7 @@
*
* $Id: RequestSecurityTokenResponse.java,v 1.2 2009/08/29 03:05:59 mallas Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.wss.trust;
@@ -147,7 +148,8 @@ public void setRequestedProofToken(RequestedProofToken requestedProofToken){
/**
* Converts into XML String
* @return the XML String for RequestSecurityTokenResponse.
- * @throws com.sun.identity.wss.trust.WSTException
+ * @throws com.sun.identity.wss.trust.WSTException if the XML string
+ * cannot be created.
*/
public abstract String toXMLString() throws WSTException;
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/RequestSecurityTokenResponseCollection.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/RequestSecurityTokenResponseCollection.java
index 43cb5bd991..e98f99d02a 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/RequestSecurityTokenResponseCollection.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/RequestSecurityTokenResponseCollection.java
@@ -24,6 +24,7 @@
*
* $Id: RequestSecurityTokenResponseCollection.java,v 1.1 2008/09/19 16:00:56 mallas Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.wss.trust;
@@ -52,9 +53,9 @@ public List getRequestSecurityTokenResponses() {
}
/**
- * Sets the list of RequestSecurityTokenResponses.
+ * Sets the list of RequestSecurityTokenResponses.
* @param rstrResponses the list of
- * RequestSecurityTokenResponses.
+ * RequestSecurityTokenResponses.
*/
public void setRequestSecurityTokenResponses(List rstrResponses) {
this.rstResponses = rstrResponses;
@@ -64,7 +65,8 @@ public void setRequestSecurityTokenResponses(List rstrResponses) {
* Converts into DOM Element.
* @return the DOM Element for the
* RequestSecurityTokenResponseCollection
- * @throws com.sun.identity.wss.trust.WSTException
+ * @throws com.sun.identity.wss.trust.WSTException if the DOM element
+ * cannot be created.
*/
public abstract Element toDOMElement() throws WSTException;
@@ -72,7 +74,8 @@ public void setRequestSecurityTokenResponses(List rstrResponses) {
* Converts into XML String.
* @return the XML String for the
* RequestSecurityTokenResponseCollection
- * @throws com.sun.identity.wss.trust.WSTException
+ * @throws com.sun.identity.wss.trust.WSTException if the XML string
+ * cannot be created.
*/
public abstract String toXMLString() throws WSTException;
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/RequestedProofToken.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/RequestedProofToken.java
index 3bd078deb2..f141cf770a 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/RequestedProofToken.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/RequestedProofToken.java
@@ -24,6 +24,7 @@
*
* $Id: RequestedProofToken.java,v 1.1 2009/08/29 03:06:00 mallas Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.wss.trust;
@@ -71,14 +72,16 @@ public void setProofToken(Object proofToken) {
/**
* Returns the DOM Element representation for the requested proof token.
* @return the DOM Element representation for the requested proof token.
- * @throws com.sun.identity.wss.sts.protocol.WSTException
+ * @throws com.sun.identity.wss.trust.WSTException if the DOM element
+ * cannot be created.
*/
public abstract Element toDOMElement() throws WSTException;
/**
* Converts into XML String
* @return the XML String for RequestedProofToken.
- * @throws com.sun.identity.wss.trust.WSTException
+ * @throws com.sun.identity.wss.trust.WSTException if the XML string
+ * cannot be created.
*/
public abstract String toXMLString() throws WSTException;
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/WSTrustFactory.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/WSTrustFactory.java
index d09c73a1a4..8ca359842d 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/WSTrustFactory.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/WSTrustFactory.java
@@ -24,6 +24,7 @@
*
* $Id: WSTrustFactory.java,v 1.1 2008/09/19 16:00:56 mallas Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.wss.trust;
@@ -90,7 +91,8 @@ public RequestSecurityToken createRequestSecurityToken() {
* given DOM Element.
* @param element the DOM Element for RequestSecurityToken
* @return the instance of RequestSecurityToken
- * @throws com.sun.identity.wss.trust.WSTException
+ * @throws com.sun.identity.wss.trust.WSTException if the request security
+ * token cannot be created from the element.
*/
public RequestSecurityToken createRequestSecurityToken(Element element)
throws WSTException {
@@ -123,7 +125,8 @@ public RequestSecurityTokenResponse createRequestSecurityTokenResponse() {
* @param element the DOM element representation of
* RequestSecurityTokenResponse
* @return an instance of RequestSecurityTokenResponse
- * @throws com.sun.identity.wss.trust.WSTException
+ * @throws com.sun.identity.wss.trust.WSTException if the request security
+ * token response cannot be created from the element.
*/
public RequestSecurityTokenResponse createRequestSecurityTokenResponse
(Element element) throws WSTException {
@@ -156,8 +159,9 @@ public RequestSecurityTokenResponse createRequestSecurityTokenResponse() {
* for a given DOM Element.
* @param element the DOM Element representation of
* RequestSecurityTokenResponseCollection
- * @return the RequestSecurityTokenResponseCollection
- * @throws com.sun.identity.wss.trust.WSTException
+ * @return the RequestSecurityTokenResponseCollection
+ * @throws com.sun.identity.wss.trust.WSTException if the request security
+ * token response collection cannot be created from the element.
*/
public RequestSecurityTokenResponseCollection
createRequestSecurityTokenResponseCollection(Element element)
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/wst10/BinarySecret_Impl.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/wst10/BinarySecret_Impl.java
index fed77bbb4a..b0935e4535 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/wst10/BinarySecret_Impl.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/wst10/BinarySecret_Impl.java
@@ -24,6 +24,7 @@
*
* $Id: BinarySecret_Impl.java,v 1.1 2009/08/29 03:06:00 mallas Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.wss.trust.wst10;
@@ -71,7 +72,8 @@ public BinarySecret_Impl(Element element) throws WSTException {
/**
* Returns the DOM Element representation for the binary secret.
* @return the DOM Element representation for the binary secret.
- * @throws com.sun.identity.wss.sts.protocol.WSTException
+ * @throws com.sun.identity.wss.trust.WSTException if the DOM element
+ * cannot be created.
*/
public Element toDOMElement() throws WSTException {
if(secretE != null) {
@@ -84,7 +86,8 @@ public Element toDOMElement() throws WSTException {
/**
* Converts into XML String
* @return the XML String for BinarySecret.
- * @throws com.sun.identity.wss.trust.WSTException
+ * @throws com.sun.identity.wss.trust.WSTException if the XML string
+ * cannot be created.
*/
public String toXMLString() throws WSTException {
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/wst13/BinarySecret_Impl.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/wst13/BinarySecret_Impl.java
index 21e9107f38..1864c86600 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/wst13/BinarySecret_Impl.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/trust/wst13/BinarySecret_Impl.java
@@ -24,6 +24,7 @@
*
* $Id: BinarySecret_Impl.java,v 1.1 2009/08/29 03:06:01 mallas Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.wss.trust.wst13;
@@ -71,7 +72,8 @@ public BinarySecret_Impl(Element element) throws WSTException {
/**
* Returns the DOM Element representation for the binary secret.
* @return the DOM Element representation for the binary secret.
- * @throws com.sun.identity.wss.sts.protocol.WSTException
+ * @throws com.sun.identity.wss.trust.WSTException if the DOM element
+ * cannot be created.
*/
public Element toDOMElement() throws WSTException {
if(secretE != null) {
@@ -84,7 +86,8 @@ public Element toDOMElement() throws WSTException {
/**
* Converts into XML String
* @return the XML String for BinarySecret.
- * @throws com.sun.identity.wss.trust.WSTException
+ * @throws com.sun.identity.wss.trust.WSTException if the XML string
+ * cannot be created.
*/
public String toXMLString() throws WSTException {
diff --git a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/xmlsig/WSSSignatureProvider.java b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/xmlsig/WSSSignatureProvider.java
index 9565c8c09d..8ba680f608 100644
--- a/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/xmlsig/WSSSignatureProvider.java
+++ b/openam-federation/OpenFM/src/main/java/com/sun/identity/wss/xmlsig/WSSSignatureProvider.java
@@ -25,6 +25,7 @@
* $Id: WSSSignatureProvider.java,v 1.13 2009/11/16 21:53:00 mallas Exp $
*
* Portions Copyrighted 2014 ForgeRock AS
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.wss.xmlsig;
@@ -807,12 +808,13 @@ private PublicKey getPublicKeyFromWSSToken(Document doc) {
/**
* Sign with Kerberos Token
- * @param doc
- * @param key
- * @param algorithm
- * @param ids
+ * @param doc the document to be signed.
+ * @param key the key to sign with.
+ * @param algorithm the signature algorithm to use.
+ * @param ids the list of element ids to be signed.
* @return Kerberos Security Token signature
- * @throws com.sun.identity.saml.xmlsig.XMLSignatureException
+ * @throws com.sun.identity.saml.xmlsig.XMLSignatureException if the message
+ * cannot be signed.
*/
public org.w3c.dom.Element signWithKerberosToken(
org.w3c.dom.Document doc,
@@ -936,7 +938,8 @@ public org.w3c.dom.Element signWithKerberosToken(
* @param document the document to be validated
* @param key the secret key to be used for validating signature
* @return true if verification is successful.
- * @throws com.sun.identity.saml.xmlsig.XMLSignatureException
+ * @throws com.sun.identity.saml.xmlsig.XMLSignatureException if the
+ * signature cannot be verified.
*/
public boolean verifyWSSSignature(org.w3c.dom.Document document,
java.security.Key key)
@@ -953,7 +956,8 @@ public boolean verifyWSSSignature(org.w3c.dom.Document document,
* @param encryptAlias the certificate alias that may be used to decrypt
* the symmetric key that is part of KeyInfo
* @return true if verification is successful.
- * @throws com.sun.identity.saml.xmlsig.XMLSignatureException
+ * @throws com.sun.identity.saml.xmlsig.XMLSignatureException if the
+ * signature cannot be verified.
*/
public boolean verifyWSSSignature(Document doc, java.security.Key key,
String certAlias, String encryptAlias) throws XMLSignatureException {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/cot/CircleOfTrustManager.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/cot/CircleOfTrustManager.java
index 57ae00797a..4a78a82b4e 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/cot/CircleOfTrustManager.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/cot/CircleOfTrustManager.java
@@ -25,6 +25,7 @@
* $Id: CircleOfTrustManager.java,v 1.13 2009/10/28 23:58:56 exu Exp $
*
* Portions Copyrighted 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.cot;
@@ -977,7 +978,7 @@ public boolean isInCircleOfTrust(String realm, String name,
* @param realm the realm the circle of trust is in.
* @param name the circle of trust name.
* @return true if circle of trust name is valid.
- * @throws COTException if the circle of trust name is invalid.
+ * @throws COTException if the circle of trust name is invalid.
*/
boolean isValidCOTName(String realm,String name) throws COTException {
String classMethod = "COTManager.isValidCOTName: ";
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/accountmgmt/FSAccountManager.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/accountmgmt/FSAccountManager.java
index d479754f20..aadd23b01e 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/accountmgmt/FSAccountManager.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/accountmgmt/FSAccountManager.java
@@ -24,6 +24,7 @@
*
* $Id: FSAccountManager.java,v 1.5 2008/06/25 05:46:39 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.federation.accountmgmt;
@@ -47,7 +48,7 @@
import java.util.logging.Level;
/**
- * This class is used for storing & retrieving user account's federation
+ * This class is used for storing & retrieving user account's federation
* specific information.
*/
public class FSAccountManager {
@@ -313,9 +314,9 @@ public void removeAccountFedInfo(String userID, FSAccountFedInfo fedInfo)
* @param userID user id
* @param fedInfo Account federation info as FSAccountFedInfo object.
* @param fedInfoKey Account Fed Info Key which contains NameSpace
- * & opaque handle sent/received.
+ * & opaque handle sent/received.
* @param oldFedInfoKey Account Fed Info Key which contains NameSpace
- * & opaque handle sent/received, which will be removed.
+ * & opaque handle sent/received, which will be removed.
* @throws FSAccountMgmtException if illegal argument passed.
*/
public void writeAccountFedInfo(
@@ -332,7 +333,7 @@ public void writeAccountFedInfo(
* Removes Account's federation Info Key in data store.
* @param userID user id
* @param fedInfoKey Account Fed Info Key which contains NameSpace
- * & opaque handle sent/received, which will be removed.
+ * & opaque handle sent/received, which will be removed.
* @throws FSAccountMgmtException if illegal argument passed.
*/
public void removeAccountFedInfoKey(
@@ -391,10 +392,10 @@ public void removeAccountFedInfoKey(
* in fedInfo object.
* @param userID user id
* @param fedInfoKey Account Fed Info Key which contains NameSpace
- * & opaque handle sent/received.
+ * & opaque handle sent/received.
* @param providerID Remote ProviderID value.
* @throws FSAccountMgmtException - If Account fed info is not found for
- * given user & given ProviderID.
+ * given user & given ProviderID.
*/
public void removeAccountFedInfo(
String userID,
@@ -678,7 +679,7 @@ public Set readAllFederatedProviderID(String providerID, String userID)
* @return true/false if Account's federation Status is Active / Inactive
* for given providerID.
* @throws FSAccountMgmtException - If Account fed info is not found for
- * given user & given ProviderID.
+ * given user & given ProviderID.
*/
public boolean isFederationActive(
String userID,
@@ -791,10 +792,10 @@ public boolean hasAnyActiveFederation(
}
/**
- * Searches user with given combination of ProviderID & Opaque handle
+ * Searches user with given combination of ProviderID & Opaque handle
* in Default Organization.
* @param fedInfoKey Account Fed Info Key which contains NameSpace
- * & opaque handle sent/received.
+ * & opaque handle sent/received.
* @param env - Extra parameters that can be used for user mapping.
* @throws FSAccountMgmtException - If Unable to get Organization
* @return User DN if user found with given combination else returns null.
@@ -809,10 +810,10 @@ public String getUserID(
}
/**
- * Searches user with given combination of ProviderID & Opaque handle
+ * Searches user with given combination of ProviderID & Opaque handle
* in given Organization.
* @param fedInfoKey Account Fed Info Key which contains NameSpace
- * & opaque handle sent/received.
+ * & opaque handle sent/received.
* @param orgDN organization DN.
* @param env Extra parameters that can be used for user mapping.
* @throws FSAccountMgmtException - If Unable to get Organization.
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/accountmgmt/package-info.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/accountmgmt/package-info.java
index 1739ccf933..6078659d96 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/accountmgmt/package-info.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/accountmgmt/package-info.java
@@ -24,12 +24,13 @@
*
* $Id: package-info.java,v 1.4 2008/06/25 05:46:40 qcheng Exp $
* Portions Copyrighted 2014 ForgeRock AS
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
/**
* Defines Federation Account Management API.
*
*
- * @deprecated since 12.0.0
+ * Deprecated since 12.0.0.
*/
package com.sun.identity.federation.accountmgmt;
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/common/FSException.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/common/FSException.java
index 81129ca8ea..e08ea48a37 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/common/FSException.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/common/FSException.java
@@ -24,6 +24,7 @@
*
* $Id: FSException.java,v 1.3 2008/06/25 05:46:40 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.federation.common;
@@ -34,7 +35,7 @@
/**
* This class is the super-class for all Federation checked exceptions.
- *
+ *
* Some Exception throwing guidelines:
* -------------------------------------
*
@@ -136,22 +137,22 @@
* }
*
* 3. Throwing an Exception using the ResourceSetManager
- *
- *
+ * <TBD : write some eg & format for properties file>
+ *
* - Logging/Dealing with an Exception, inclunding all nested exceptions
* try {
* .......
* .......
* } catch (FSException fse) {
* if (fse.getRootCause() instanceof UMSException) {
- * PrintWriter pw = new PrintWriter();
+ * PrintWriter pw = new PrintWriter(<some file stream>);
* fse.log(pw);
* } else {
* System.out.println(fse.getMessage());
* }
* }
*
- *
+ *
*
* @see #FSException(String, Object[], Throwable)
* @see #getRootCause()
@@ -303,9 +304,9 @@ public String toString() {
}
/**
- * Prints this exception's stack trace to System.err.
+ * Prints this exception's stack trace to System.err.
* If this exception has a root exception; the stack trace of the
- * root exception is printed to System.err instead.
+ * root exception is printed to System.err instead.
*/
public void printStackTrace() {
printStackTrace( System.err );
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/common/FSRedirectException.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/common/FSRedirectException.java
index 085d335cc5..61b4c77f52 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/common/FSRedirectException.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/common/FSRedirectException.java
@@ -24,6 +24,7 @@
*
* $Id: FSRedirectException.java,v 1.2 2008/06/25 05:46:40 qcheng Exp $
* Portions Copyrighted 2014 ForgeRock AS
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
/*
@@ -141,7 +142,7 @@
* }
*
* 3. Throwing an Exception using the ResourceSetManager
- *
+ * <TBD : write some eg & format for properties file>
*
* - Logging/Dealing with an Exception, inclunding all nested exceptions
* try {
@@ -150,7 +151,7 @@
* } catch (FSRedirectException fse) {
*
* if (fse.getRootCause() instanceof UMSException) {
- * PrintWriter pw = new PrintWriter();
+ * PrintWriter pw = new PrintWriter(<some file stream>);
* fse.log(pw);
* } else {
* System.out.println(fse.getMessage());
@@ -305,9 +306,9 @@ public String toString() {
}
/**
- * Prints this exception's stack trace to System.err.
+ * Prints this exception's stack trace to System.err.
* If this exception has a root exception; the stack trace of the
- * root exception is printed to System.err instead.
+ * root exception is printed to System.err instead.
*
*/
public void printStackTrace() {
@@ -362,7 +363,7 @@ public void printStackTrace(java.io.PrintWriter pw) {
* java.lang.Throwable
* java.lang.Exception
* FSRedirectException
- *
+ * <name of exception being thrown>
*
*/
static private String getStackTrace(Throwable xcpt) {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/common/FSUtils.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/common/FSUtils.java
index 3ea00046a5..8502f5d2a7 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/common/FSUtils.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/common/FSUtils.java
@@ -25,7 +25,7 @@
* $Id: FSUtils.java,v 1.10 2009/11/20 23:52:57 ww203982 Exp $
*
* Portions Copyrighted 2013-2016 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.federation.common;
@@ -240,7 +240,7 @@ public static void checkHTTPRequestLength(HttpServletRequest request)
* in the same web container as current opensso web
* apps serving the request.
* @param request HttpServletRequest
- * @param url
+ * @param url the URL to test against the current web container
* @return true if request and url are in the same web container else false
*/
public static boolean isSameContainer(
@@ -743,7 +743,7 @@ public static void postToTarget(HttpServletRequest request, HttpServletResponse
*
* @param exception
* Thrown and caught exception
- * @throws SAML2Exception
+ * @throws SAML2Exception if a SAML2 error occurs
* Single general exception that is thrown on
*/
private static void handleForwardException(Exception exception) throws SAML2Exception {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/common/package-info.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/common/package-info.java
index bc7a94524a..a8381aa73c 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/common/package-info.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/common/package-info.java
@@ -24,12 +24,13 @@
*
* $Id: package-info.java,v 1.2 2008/06/25 05:46:41 qcheng Exp $
* Portions Copyrighted 2014 ForgeRock AS
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
/**
* Defines Federation Common Utils.
*
*
- * @deprecated since 12.0.0
+ * Deprecated since 12.0.0.
*/
package com.sun.identity.federation.common;
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSAssertion.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSAssertion.java
index 5bdcc24480..e45e949e6a 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSAssertion.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSAssertion.java
@@ -25,6 +25,7 @@
* $Id: FSAssertion.java,v 1.2 2008/06/25 05:46:43 qcheng Exp $
*
* Portions Copyrighted 2014-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -86,7 +87,7 @@ public class FSAssertion extends Assertion {
protected String id;
/**
- * The value of the MinorVersion attribute in
+ * The value of the MinorVersion attribute in
* the Assertion.
*/
protected int minorVersion = IFSConstants.FF_11_ASSERTION_MINOR_VERSION;
@@ -378,7 +379,7 @@ public String getID(){
}
/**
- * Sets value of id attribute.
+ * Sets value of id attribute.
*
* @param id value of id attribute.
* @see #getID
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSAssertionArtifact.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSAssertionArtifact.java
index 0672296531..af3f89cf4d 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSAssertionArtifact.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSAssertionArtifact.java
@@ -24,6 +24,7 @@
*
* $Id: FSAssertionArtifact.java,v 1.3 2008/06/25 05:46:43 qcheng Exp $
* Portions Copyrighted 2014 ForgeRock AS
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.federation.message;
@@ -79,7 +80,7 @@ protected FSAssertionArtifact() {
* Constructor to create AssertionArtifact object.
*
* @param theArtifact is the string that is generated by a provider.
- * @throws SAMLException if there is an error decoding
+ * @throws FSMsgException if there is an error decoding
* the artifact string , the length of the artifact string
* is incorrect , the TYPE CODE in the artifact
* or other errors which prevent creation of
@@ -135,7 +136,7 @@ public FSAssertionArtifact(String theArtifact) throws FSMsgException {
*
* @param idBytes the source identifier in the Assertion
* @param handleBytes the assertion identifier
- * @throws SAMLException if wrong input or couldn't encode the artifact.
+ * @throws FSMsgException if wrong input or couldn't encode the artifact.
*/
public FSAssertionArtifact(byte[] idBytes, byte[] handleBytes)
throws FSMsgException {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSAuthenticationStatement.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSAuthenticationStatement.java
index 451549dcb8..4c97d5b233 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSAuthenticationStatement.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSAuthenticationStatement.java
@@ -24,6 +24,7 @@
*
* $Id: FSAuthenticationStatement.java,v 1.2 2008/06/25 05:46:43 qcheng Exp $
* Portions Copyrighted 2014 ForgeRock AS
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.federation.message;
@@ -295,7 +296,7 @@ public FSAuthenticationStatement(Element element)
/**
* Returns the value of SessionIndex attribute.
*
- * @return the value of SessionIndex attribute.
+ * @return the value of SessionIndex attribute.
* @see #setSessionIndex(String)
*/
public String getSessionIndex(){
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSAuthnRequest.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSAuthnRequest.java
index 5cfc7d8ab5..1511935b06 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSAuthnRequest.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSAuthnRequest.java
@@ -25,7 +25,7 @@
* $Id: FSAuthnRequest.java,v 1.4 2008/07/08 06:03:37 exu Exp $
*
* Portions Copyrighted 2014-2016 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.federation.message;
@@ -109,7 +109,7 @@ public FSAuthnRequest() {
* @param authnCxt Authentication Context used for the SSO.
* @param relaySt Relay State i.e. original URL to be redirected after SSO.
* @param authContextCompType AuthContext comparison type.
- * @throws FSMsgException on error.
+ * @throws FSMsgException on error.
*/
public FSAuthnRequest(String requestId,
List respondWiths,
@@ -164,7 +164,7 @@ public FSAuthnRequest(String requestId,
* Constructor to create FSAuthnRequest object.
*
* @param root the Document Element object.
- * @throws FSMsgException on error.
+ * @throws FSMsgException on error.
*/
public FSAuthnRequest(Element root) throws FSMsgException {
String tag = null;
@@ -791,9 +791,9 @@ public void setNameIDPolicy(String nameIDPolicy) {
}
/**
- * Returns the value of ProtocolProfile attribute.
+ * Returns the value of ProtocolProfile attribute.
*
- * @return the value of ProtocolProfile attribute.
+ * @return the value of ProtocolProfile attribute.
* @see #setProtocolProfile(String)
*/
public String getProtocolProfile() {
@@ -801,9 +801,9 @@ public String getProtocolProfile() {
}
/**
- * Sets the value of ProtocolProfile attribute.
+ * Sets the value of ProtocolProfile attribute.
*
- * @param protocolProf the value of ProtocolProfile attribute.
+ * @param protocolProf the value of ProtocolProfile attribute.
* @see #getProtocolProfile()
*/
public void setProtocolProfile(String protocolProf) {
@@ -854,7 +854,7 @@ public void setAuthnContext(RequestAuthnContext authnCxt) {
* Returns the value of ProviderID attribute.
*
* @return the value of ProviderID attribute.
- * @see #setProviderId(String).
+ * @see #setProviderId(String)
*/
public String getProviderId() {
return providerId;
@@ -1533,7 +1533,7 @@ public static FSAuthnRequest parseBASE64EncodedString(String encodedReq)
* Signs the Request.
*
* @param certAlias the Certificate Alias.
- * @throws XMLSignatureException if FSAuthnRequest
+ * @throws SAMLException if FSAuthnRequest
* cannot be signed.
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSAuthnRequestEnvelope.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSAuthnRequestEnvelope.java
index 99053fd64e..c282d139ba 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSAuthnRequestEnvelope.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSAuthnRequestEnvelope.java
@@ -24,6 +24,7 @@
*
* $Id: FSAuthnRequestEnvelope.java,v 1.2 2008/06/25 05:46:43 qcheng Exp $
* Portions Copyrighted 2014 ForgeRock AS
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.federation.message;
@@ -180,7 +181,7 @@ public void setMinorVersion(int minorVersion) {
* based on the Liberty Request schema.
*
* @return XML String representing the request.
- * @throws FSMsgException if there is an error.
+ * @throws FSMsgException if there is an error.
*/
public String toXMLString() throws FSMsgException {
@@ -212,7 +213,7 @@ public String toXMLString(boolean includeNS,boolean declareNS)
* @param includeHeader Determines whether the output include the xml
* declaration header.
* @return A string containing the valid XML for this element.
- * @throws FSMsgException if there is an error.
+ * @throws FSMsgException if there is an error.
*/
public String toXMLString(boolean includeNS,
boolean declareNS,
@@ -433,7 +434,7 @@ public void setOtherElements(List otherElements) {
* request String.
*
* @param encodedReq the encoded string.
- * @throws FSMsgException if there is an error
+ * @throws FSMsgException if there is an error
* creating FSAuthnRequestEnvelope object.
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSAuthnResponse.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSAuthnResponse.java
index df14f917ed..3b1cb57025 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSAuthnResponse.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSAuthnResponse.java
@@ -25,6 +25,7 @@
* $Id: FSAuthnResponse.java,v 1.2 2008/06/25 05:46:43 qcheng Exp $
*
* Portions Copyrighted 2014-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -100,7 +101,7 @@ public FSAuthnResponse(String responseID,String inResponseTo,
* Creates FSAuthnResponse object from XML Schema.
*
* @param xml the XML Schema for this object.
- * @throws SAMLException on error.
+ * @throws SAMLException on error.
* @throws FSMsgException on error.
*/
public static FSAuthnResponse parseAuthnResponseXML(
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSAuthnResponseEnvelope.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSAuthnResponseEnvelope.java
index 9daf1f63c3..ca3339e16b 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSAuthnResponseEnvelope.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSAuthnResponseEnvelope.java
@@ -24,6 +24,7 @@
*
* $Id: FSAuthnResponseEnvelope.java,v 1.2 2008/06/25 05:46:43 qcheng Exp $
* Portions Copyrighted 2014 ForgeRock AS
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.federation.message;
@@ -138,7 +139,7 @@ public int getMinorVersion() {
}
/**
- * Sets the value of MinorVersion attribute.
+ * Sets the value of MinorVersion attribute.
*
* @param minorVersion the MinorVersion attribute.
*/
@@ -238,7 +239,7 @@ public String toXMLString() throws FSMsgException {
}
/**
- * Creates a String representation of the Response object.
+ * Creates a String representation of the Response object.
* @param includeNS : Determines whether or not the namespace qualifier
* is prepended to the Element when converted
* @param declareNS : Determines whether or not the namespace is declared
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSFederationTerminationNotification.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSFederationTerminationNotification.java
index 4f0ae4acbc..30ae24d413 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSFederationTerminationNotification.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSFederationTerminationNotification.java
@@ -25,7 +25,7 @@
* $Id: FSFederationTerminationNotification.java,v 1.3 2008/06/25 05:46:44 qcheng Exp $
*
* Portions Copyrighted 2014-2016 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.federation.message;
@@ -94,7 +94,7 @@ public FSFederationTerminationNotification() {
}
/**
- * Creates FSFederationTerminationNotification.
* @see #getStatus
*/
public void setStatus(String status) {
@@ -416,7 +416,7 @@ public void setStatus(String status) {
/**
* Sets the Logout Status.
*
- * @param status the Logout StatusStatus object.
* @see #getStatus
*/
public void setStatus(Status status) {
@@ -752,7 +752,7 @@ public void signXML() {
* Signs the LogoutResponse.
*
* @param certAlias the Certificate Alias.
- * @throws XMLSignatureException if this object cannot be signed.
+ * @throws SAMLException if this object cannot be signed.
*/
public void signXML(String certAlias) throws SAMLException {
FSUtils.debug.message("FSLogoutResponse.signXML: Called");
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSNameIdentifierMappingRequest.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSNameIdentifierMappingRequest.java
index a5df988c1b..f6ce8535c8 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSNameIdentifierMappingRequest.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSNameIdentifierMappingRequest.java
@@ -25,6 +25,7 @@
* $Id: FSNameIdentifierMappingRequest.java,v 1.2 2008/06/25 05:46:44 qcheng Exp $
*
* Portions Copyrighted 2014-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.federation.message;
@@ -61,7 +62,7 @@
/**
* The class FSNameIdentifierMappingRequest is used to
- * create or parse NameIdentifierMappingRequest.
+ * create or parse NameIdentifierMappingRequest.
*
*
* @deprecated since 12.0.0
@@ -76,7 +77,7 @@ public class FSNameIdentifierMappingRequest extends AbstractRequest {
private String signatureString;
/**
- * Constructor to create FSNameIdentifierMappingRequest.
+ * Constructor to create FSNameIdentifierMappingRequest.
*
* @param providerID the requesting provider's ID
* @param nameIdentifier the NameIdentifier qualified by the
@@ -97,7 +98,7 @@ public FSNameIdentifierMappingRequest(String providerID,
}
/**
- * Constructor to create FSNameIdentifierMappingRequest from
+ * Constructor to create FSNameIdentifierMappingRequest from
* the Document Element.
*
* @param root the NameIdentifierMappingRequest Document
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSNameRegistrationRequest.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSNameRegistrationRequest.java
index 7aea15a2ee..f9cbb10845 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSNameRegistrationRequest.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSNameRegistrationRequest.java
@@ -25,7 +25,7 @@
* $Id: FSNameRegistrationRequest.java,v 1.4 2008/06/25 05:46:44 qcheng Exp $
*
* Portions Copyrighted 2014-2016 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.federation.message;
@@ -202,7 +202,7 @@ public FSNameRegistrationRequest(
}
/**
- * Constructor creates FSNameRegistrationRequest> object
+ * Constructor creates FSNameRegistrationRequest object
* from a Document Element.
*
* @param root the Document Element.
@@ -504,7 +504,7 @@ public OldProvidedNameIdentifier getOldProvidedNameIdentifier() {
* Returns the value of ProviderID attribute.
*
* @return the value of ProviderID attribute.
- * @see #setProviderId(String).
+ * @see #setProviderId(String)
*/
public String getProviderId() {
return this.providerId;
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSNameRegistrationResponse.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSNameRegistrationResponse.java
index 1e0f37bdd2..7325723f25 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSNameRegistrationResponse.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSNameRegistrationResponse.java
@@ -25,7 +25,7 @@
* $Id: FSNameRegistrationResponse.java,v 1.3 2008/06/25 05:46:45 qcheng Exp $
*
* Portions Copyrighted 2014-2016 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.federation.message;
@@ -132,7 +132,7 @@ public void setID(String id){
* Returns the value of ProviderID attribute.
*
* @return the value of ProviderID attribute.
- * @see #setProviderId(String).
+ * @see #setProviderId(String)
*/
public String getProviderId(){
return providerId;
@@ -364,7 +364,7 @@ public Status getStatus() {
/**
* Sets the Response Status.
*
- * @param status the Response StatusStatus object.
* @see #getStatus
*/
public void setStatus(Status status) {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSRequest.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSRequest.java
index 7e32552543..175c087ea9 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSRequest.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSRequest.java
@@ -24,6 +24,7 @@
*
* $Id: FSRequest.java,v 1.3 2008/06/25 05:46:45 qcheng Exp $
* Portions Copyrighted 2014 ForgeRock AS
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
/**
@@ -116,7 +117,7 @@ protected FSRequest() {
* value is null then one will be generated.
* @param query AuthenticationQuery to be included in
* the Request.
- * @throws SAMLException on error.
+ * @throws SAMLException on error.
*/
public FSRequest(String requestId, Query query) throws SAMLException {
super(requestId, query);
@@ -140,7 +141,7 @@ public FSRequest(String requestId, Query query) throws SAMLException {
* AttributeQuery, 1 or more
* AssertionIDReference, or 1 or more of
* AssertionArtifact.
- * @throws SAMLException throws errors on exception.
+ * @throws SAMLException throws errors on exception.
*/
public FSRequest(String requestId, List contents) throws SAMLException {
super(requestId, contents);
@@ -175,7 +176,7 @@ public void setMinorVersion(int version) {
*
* @param xml the XML Document string.
* @return the Request object.
- * @throws SAMLException on error.
+ * @throws SAMLException on error.
*/
public static Request parseXML(String xml) throws SAMLException {
// parse the xml string
@@ -189,7 +190,7 @@ public static Request parseXML(String xml) throws SAMLException {
* a XML Document Element.
*
* @param root the XML Document Element.
- * @throws SAMLException on error.
+ * @throws SAMLException on error.
*/
public FSRequest(Element root) throws SAMLException {
// Make sure this is a Request
@@ -391,7 +392,7 @@ public FSRequest(Element root) throws SAMLException {
/* Returns the value of RespondWith attribute.
*
* @return value of the RespondWith attribute.
- * @throws SAMLException on error.
+ * @throws SAMLException on error.
*/
private String checkAndGetRespondWith(String respondWith)
throws SAMLException {
@@ -427,7 +428,7 @@ private String checkAndGetRespondWith(String respondWith)
*
* @param majorVer a String representing the MajorVersion to
* be set.
- * @throws FSMsgException on error.
+ * @throws FSMsgException on error.
*/
private void parseMajorVersion(String majorVer) throws SAMLException {
@@ -466,7 +467,7 @@ private void parseMajorVersion(String majorVer) throws SAMLException {
*
* @param minorVer a String representing the MinorVersion to
* be set.
- * @throws SAMLException when the version mismatchs.
+ * @throws SAMLException when the version mismatchs.
*/
private void parseMinorVersion(String minorVer) throws SAMLException {
try {
@@ -501,7 +502,7 @@ private void parseMinorVersion(String minorVer) throws SAMLException {
* AttributeQeury, or AuthorizationDecisionQuery.
*
* @param child a DOM Node.
- * @throws SAMLException if the Query is invalid.
+ * @throws SAMLException if the Query is invalid.
*/
private void parseQuery(Node child) throws SAMLException {
NamedNodeMap nm = child.getAttributes();
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSResponse.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSResponse.java
index fa7a19fc65..6650f037d6 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSResponse.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSResponse.java
@@ -24,6 +24,7 @@
*
* $Id: FSResponse.java,v 1.2 2008/06/25 05:46:45 qcheng Exp $
* Portions Copyrighted 2014 ForgeRock AS
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.federation.message;
@@ -514,7 +515,7 @@ public String toBASE64EncodedString() throws FSMsgException {
* Signs the Response.
*
* @param certAlias the Certificate Alias.
- * @throws XMLSignatureException if FSAuthnRequest
+ * @throws SAMLException if FSAuthnRequest
* cannot be signed.
*/
public void signXML(String certAlias) throws SAMLException {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSScoping.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSScoping.java
index c977f5be2a..5752fd7b89 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSScoping.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/FSScoping.java
@@ -24,7 +24,7 @@
*
* $Id: FSScoping.java,v 1.2 2008/06/25 05:46:45 qcheng Exp $
* Portions Copyrighted 2014 ForgeRock AS
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.federation.message;
@@ -244,7 +244,6 @@ public String toURLEncodedQueryString() throws FSMsgException {
* object.
*
* @param request the HttpServletRequest object.
- * @throws FSMsgException if there is an error creating this object.
*/
public static FSScoping parseURLEncodedRequest(HttpServletRequest request) {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/EncryptableNameIdentifier.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/EncryptableNameIdentifier.java
index 9ad52eee42..56ae6961cc 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/EncryptableNameIdentifier.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/EncryptableNameIdentifier.java
@@ -25,6 +25,7 @@
* $Id: EncryptableNameIdentifier.java,v 1.4 2008/06/25 05:46:46 qcheng Exp $
*
* Portions Copyrighted 2014-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.federation.message.common;
@@ -90,11 +91,11 @@ public EncryptableNameIdentifier(NameIdentifier ni) throws FSException {
/**
* Consturctor creates EncryptableNameIdentifier object.
*
- * @param name
- * @param nameQualifier
- * @param format
+ * @param name the name identifier value.
+ * @param nameQualifier the security or administrative domain that qualifies the name.
+ * @param format the format of the name identifier.
* @param issueInstant the Issue Instant
- * @param nonce
+ * @param nonce the nonce value used for encryption.
* @throws FSException if there is an error.
*/
public EncryptableNameIdentifier(String name,String nameQualifier,
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/Extension.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/Extension.java
index a444f379c9..2fd8e1a515 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/Extension.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/Extension.java
@@ -24,7 +24,7 @@
*
* $Id: Extension.java,v 1.2 2008/06/25 05:46:46 qcheng Exp $
* Portions Copyrighted 2014 ForgeRock AS
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.federation.message.common;
@@ -284,7 +284,7 @@ public String toXMLString(boolean includeNS, boolean declareNS)
* @param prefix the string that is prepended to the key of query
* string.
* @param minorVersion the MinorVersion.
- * @return object.
+ * @return Extension object.
* @throws FSMsgException if there is an error creating
* Extension object.
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/IDPEntry.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/IDPEntry.java
index 2fc47e7ddd..a3291bda14 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/IDPEntry.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/IDPEntry.java
@@ -24,6 +24,7 @@
*
* $Id: IDPEntry.java,v 1.2 2008/06/25 05:46:47 qcheng Exp $
* Portions Copyrighted 2014 ForgeRock AS
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -66,7 +67,7 @@ public IDPEntry() {
*
* @param providerID the Identity Provider identifier.
* @param providerName the Identity Provider name.
- * @param location
+ * @param location the location URL of the Identity Provider.
*/
public IDPEntry(String providerID,String providerName,String location) {
this.providerID = providerID;
@@ -226,8 +227,8 @@ public String toXMLString(boolean includeNS,boolean declareNS,
* Constructor creates IDPEntry Object from
* Document Element.
*
- * @param root Document Element of IDPEntry object.
- * @throws FSMsgException if IDPEntry cannot be created.
+ * @param root Document Element of IDPEntry object.
+ * @throws FSMsgException if IDPEntry cannot be created.
*/
public IDPEntry(Element root) throws FSMsgException {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/IDPProvidedNameIdentifier.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/IDPProvidedNameIdentifier.java
index 94316f134b..91eea69c64 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/IDPProvidedNameIdentifier.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/IDPProvidedNameIdentifier.java
@@ -24,6 +24,7 @@
*
* $Id: IDPProvidedNameIdentifier.java,v 1.2 2008/06/25 05:46:47 qcheng Exp $
* Portions Copyrighted 2014 ForgeRock AS
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.federation.message.common;
@@ -51,8 +52,8 @@ public class IDPProvidedNameIdentifier extends NameIdentifier {
* Constructor creates IDPProvidedNameIdentifier object.
*
* @param name the Identity Provider name.
- * @param nameQualifier
- * @param format
+ * @param nameQualifier the security or administrative domain that qualifies the name.
+ * @param format the format of the name identifier.
* @throws SAMLException on error.
*/
public IDPProvidedNameIdentifier(String name,String nameQualifier,
@@ -109,8 +110,8 @@ public IDPProvidedNameIdentifier(Element idpProvidedNameIdentifierElement)
/**
* Constructor creates IDPProvidedNameIdentifier object.
*
- * @param securityDomain
- * @param name
+ * @param securityDomain the security domain of the name identifier.
+ * @param name the name identifier value.
* @throws FSMsgException on error.
*/
public IDPProvidedNameIdentifier(
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/OldProvidedNameIdentifier.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/OldProvidedNameIdentifier.java
index 99096bf42f..7977736a3b 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/OldProvidedNameIdentifier.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/OldProvidedNameIdentifier.java
@@ -24,6 +24,7 @@
*
* $Id: OldProvidedNameIdentifier.java,v 1.2 2008/06/25 05:46:47 qcheng Exp $
* Portions Copyrighted 2014 ForgeRock AS
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -51,9 +52,9 @@ public class OldProvidedNameIdentifier extends NameIdentifier {
/**
* Constructor to create OldProvidedNameIdentifier object.
*
- * @param name
- * @param nameQualifier
- * @param format
+ * @param name the name identifier value.
+ * @param nameQualifier the security or administrative domain that qualifies the name.
+ * @param format the format of the name identifier.
* @throws SAMLException on error.
*/
public OldProvidedNameIdentifier(String name,String nameQualifier,
@@ -110,8 +111,8 @@ public OldProvidedNameIdentifier(
/**
* Constructor creates OldProvidedNameIdentifier object.
*
- * @param securityDomain
- * @param name
+ * @param securityDomain the security domain of the name identifier.
+ * @param name the name identifier value.
* @throws FSMsgException it there is an error creating this object.
*/
public OldProvidedNameIdentifier(
@@ -155,7 +156,7 @@ public int getMinorVersion() {
* Returns a String representation of this object.
*
* @return a String representation of this object.
- * @throws FSMsgExceptionif there is an error converting
+ * @throws FSMsgException if there is an error converting
* this object to a string.
*/
public String toXMLString() throws FSMsgException {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/RequestAuthnContext.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/RequestAuthnContext.java
index 46373f7d90..e095466ae2 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/RequestAuthnContext.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/RequestAuthnContext.java
@@ -24,7 +24,7 @@
*
* $Id: RequestAuthnContext.java,v 1.2 2008/06/25 05:46:47 qcheng Exp $
* Portions Copyrighted 2014 ForgeRock AS
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.federation.message.common;
@@ -70,7 +70,7 @@ public class RequestAuthnContext {
* Note: authnContextClassRefList and authContextStatementRefList
* are mutually exclusive lists.
* @param authnContextComparison AuthnContext Comparison Type.
- * Possible values are exact, minimum,
+ * Possible values are exact, minimum,
* better and maximum.
*/
public RequestAuthnContext (
@@ -392,7 +392,7 @@ public String toXMLString(boolean includeNS, boolean declareNS,
* object.
*
* @param request the HttpServletRequest object.
- * @return object.
+ * @return RequestAuthnContext object.
* @throws FSMsgException if there is an error
* creating RequestAuthnContext object.
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/SPProvidedNameIdentifier.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/SPProvidedNameIdentifier.java
index 81aca20eab..f1568c8348 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/SPProvidedNameIdentifier.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/SPProvidedNameIdentifier.java
@@ -24,6 +24,7 @@
*
* $Id: SPProvidedNameIdentifier.java,v 1.2 2008/06/25 05:46:48 qcheng Exp $
* Portions Copyrighted 2014 ForgeRock AS
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.federation.message.common;
@@ -52,9 +53,9 @@ public class SPProvidedNameIdentifier extends NameIdentifier {
/**
* Constructor creates SPProvidedNameIdentifier object.
*
- * @param name
- * @param nameQualifier
- * @param format
+ * @param name the name identifier value.
+ * @param nameQualifier the security or administrative domain that qualifies the name.
+ * @param format the format of the name identifier.
* @throws SAMLException on errors.
*/
public SPProvidedNameIdentifier(String name, String nameQualifier,
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/package-info.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/package-info.java
index dec46a9b60..44e36787f4 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/package-info.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/common/package-info.java
@@ -24,12 +24,13 @@
*
* $Id: package-info.java,v 1.2 2008/06/25 05:46:48 qcheng Exp $
* Portions Copyrighted 2014 ForgeRock AS
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
/**
* Defines common classes used by federation protocol messages.
*
*
- * @deprecated since 12.0.0
+ * Deprecated since 12.0.0.
*/
package com.sun.identity.federation.message.common;
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/package-info.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/package-info.java
index 4cd69a0c38..ad4642ba5c 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/package-info.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/message/package-info.java
@@ -24,12 +24,13 @@
*
* $Id: package-info.java,v 1.2 2008/06/25 05:46:45 qcheng Exp $
* Portions Copyrighted 2014 ForgeRock AS
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
/**
* Defines federation protocol message classes.
*
*
- * @deprecated since 12.0.0
+ * Deprecated since 12.0.0.
*/
package com.sun.identity.federation.message;
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/meta/IDFFCOTUtils.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/meta/IDFFCOTUtils.java
index 5270fb2b5d..704814b24e 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/meta/IDFFCOTUtils.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/meta/IDFFCOTUtils.java
@@ -24,6 +24,7 @@
*
* $Id: IDFFCOTUtils.java,v 1.6 2009/10/28 23:58:57 exu Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.federation.meta;
@@ -202,9 +203,9 @@ private boolean containsValue(List list, String name) {
* @param entityConfig the EntityConfigElement object
* @param objFactory the object factory object
* @param idffMetaMgr the IDFFMetaManager object.
- * @throws IDFFMetaException if there is an error retrieving
+ * @throws IDFFMetaException if there is an error retrieving
* and updating the entityConfig.
- * @throws JAXBException if there is an error setting the
+ * @throws JAXBException if there is an error setting the
* config.
*/
private void updateCOTAttrInConfig(String realm,
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/meta/IDFFMetaUtils.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/meta/IDFFMetaUtils.java
index 820c1a255f..c77ac1ff67 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/meta/IDFFMetaUtils.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/meta/IDFFMetaUtils.java
@@ -24,6 +24,7 @@
*
* $Id: IDFFMetaUtils.java,v 1.5 2008/11/10 22:56:57 veiming Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
/**
@@ -398,8 +399,8 @@ public static List getAttributeValueFromConfig(
/**
* Returns the realm by parsing the metaAlias. MetaAlias format is
*
- * <realm>/<any string without '/'> for non-root realm or
- * /<any string without '/'> for root realm.
+ * <realm>/<any string without '/'> for non-root realm or
+ * /<any string without '/'> for root realm.
*
* @param metaAlias The metaAlias.
* @return the realm associated with the metaAlias.
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/plugins/package-info.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/plugins/package-info.java
index 2636a0b874..ba0b1273e2 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/plugins/package-info.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/plugins/package-info.java
@@ -24,12 +24,13 @@
*
* $Id: package-info.java,v 1.2 2008/06/25 05:46:50 qcheng Exp $
* Portions Copyrighted 2014 ForgeRock AS
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
/**
* Defines Federation Adapter for Service Provider.
*
*
- * @deprecated since 12.0.0
+ * Deprecated since 12.0.0.
*/
package com.sun.identity.federation.plugins;
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSAssertionManager.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSAssertionManager.java
index eb38fec55b..7ddfeafeb4 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSAssertionManager.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSAssertionManager.java
@@ -25,6 +25,7 @@
* $Id: FSAssertionManager.java,v 1.12 2009/08/03 18:18:36 bigfatrat Exp $
*
* Portions Copyrighted 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.federation.services;
@@ -375,7 +376,8 @@ public static synchronized FSAssertionManager getInstance(
* @param inResponseTo value to InResponseTo attribute. It's the request ID.
* @param minorVersion request minor version, used to determine assertion's
* minor version
- * @exception FSException,SAMLException if error occurrs
+ * @exception FSException if error occurrs
+ * @exception SAMLException if error occurrs
*/
public AssertionArtifact createFSAssertionArtifact(
String id,
@@ -446,7 +448,8 @@ public AssertionArtifact createFSAssertionArtifact(
* @param idpHandle identity provider issued NameIdentifier
* @param inResponseTo value to InResponseTo attribute. It's the request ID.
* @param assertionMinorVersion minor version the assertion should use
- * @exception FSException,SAMLException if error occurrs
+ * @exception FSException if error occurrs
+ * @exception SAMLException if error occurrs
*/
public FSAssertion createFSAssertion(
String id,
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSAssertionManagerClient.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSAssertionManagerClient.java
index 7a3473000e..16f111c126 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSAssertionManagerClient.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSAssertionManagerClient.java
@@ -25,6 +25,7 @@
* $Id: FSAssertionManagerClient.java,v 1.8 2008/08/19 19:11:06 veiming Exp $
*
* Portions Copyrighted 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.federation.services;
@@ -91,7 +92,7 @@ public final class FSAssertionManagerClient {
* Returns an instance of AssertionManagerClient.
*
* @param metaAlias hosted provider's meta alias.
- * @throws FSException
+ * @throws FSException if a federation error occurs
*/
public FSAssertionManagerClient(String metaAlias) throws FSException
{
@@ -141,7 +142,7 @@ public FSAssertionManagerClient(String metaAlias) throws FSException
* @param metaAlias hosted provider's meta alias.
* @param url the FSAssertionManager service URL that
* will be used to create, get and delete Assertions
- * @throws FSException
+ * @throws FSException if a federation error occurs
*/
public FSAssertionManagerClient(String metaAlias, String url)
throws FSException {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSAssertionManagerIF.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSAssertionManagerIF.java
index aac4e58eb9..52504eb8d7 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSAssertionManagerIF.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSAssertionManagerIF.java
@@ -24,6 +24,7 @@
*
* $Id: FSAssertionManagerIF.java,v 1.4 2008/06/25 05:46:51 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.federation.services;
@@ -46,7 +47,8 @@ public interface FSAssertionManagerIF extends Remote {
* @param destID The destination site requesting the assertion using
* the artifact.
* @return The Assertion referenced to by artifact.
- * @exception FSRemoteException, RemoteException If an error occurred during
+ * @exception FSRemoteException If an error occurred during
+ * @exception RemoteException If an error occurred during
* the process
*/
public String getAssertion(
@@ -58,7 +60,8 @@ public String getAssertion(
* @param metaAlias hosted provider meta alias
* @param artifact assertion artifact string
* @return destination id
- * @exception FSRemoteException, RemoteException if error occurred.
+ * @exception FSRemoteException if error occurred.
+ * @exception RemoteException if error occurred.
*/
public String getDestIdForArtifact(String metaAlias, String artifact)
throws FSRemoteException, RemoteException;
@@ -69,7 +72,8 @@ public String getDestIdForArtifact(String metaAlias, String artifact)
* @param metaAlias hosted provider's meta alias
* @return true if the user exists; false
* otherwise.
- * @exception FSRemoteException,RemoteException if error occurred.
+ * @exception FSRemoteException if error occurred.
+ * @exception RemoteException if error occurred.
*/
public boolean isUserExists(String userDN, String metaAlias)
throws FSRemoteException, RemoteException;
@@ -77,7 +81,7 @@ public boolean isUserExists(String userDN, String metaAlias)
/**
* Returns the error status of a given artifact.
* @param metaAlias hosted provider's meta alias
- * @param artifact
+ * @param artifact the assertion artifact whose status is requested
* @return status encoded in XML
*/
public String getErrorStatus( String metaAlias, String artifact )
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSAssertionManagerImpl.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSAssertionManagerImpl.java
index 1d7fb31000..3b73dad08e 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSAssertionManagerImpl.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSAssertionManagerImpl.java
@@ -24,6 +24,7 @@
*
* $Id: FSAssertionManagerImpl.java,v 1.5 2008/11/10 22:56:58 veiming Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.federation.services;
@@ -63,7 +64,7 @@ public void checkForLocal() {
* @param destID The destination site requesting the assertion using
* the artifact.
* @return The Assertion referenced to by artifact.
- * @exception FSRemoteException, RemoteException If an error occurred during * the process
+ * @exception FSRemoteException if an error occurred during the process
*/
public String getAssertion(
String metaAlias, String artifact, String destID)
@@ -127,7 +128,7 @@ public String getDestIdForArtifact(String metaAlias, String artifact)
* @param metaAlias provider's Meta Alias.
* @return true if the user exists; false
* otherwise.
- * @exception FSRemoteException,RemoteException if error occurred.
+ * @exception FSRemoteException if error occurred.
*/
public boolean isUserExists(String userDN, String metaAlias)
throws FSRemoteException
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSAttributeMapper.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSAttributeMapper.java
index 7f752f0922..37c3a22a08 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSAttributeMapper.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSAttributeMapper.java
@@ -24,6 +24,7 @@
*
* $Id: FSAttributeMapper.java,v 1.3 2008/06/25 05:46:52 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.federation.services;
@@ -41,7 +42,6 @@
* Identity provider to local attributes so that the assertion consumer
* service will populate these attributes to the application via the
* single sign-on token.
- *
* @deprecated This SPI is deprecated.
* @see com.sun.identity.federation.services.FSRealmAttributeMapper
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSAttributePlugin.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSAttributePlugin.java
index c1c1343f60..74bad0008d 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSAttributePlugin.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSAttributePlugin.java
@@ -24,6 +24,7 @@
*
* $Id: FSAttributePlugin.java,v 1.3 2008/06/25 05:46:52 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.federation.services;
@@ -37,7 +38,6 @@
* AttributeStatements into the Assertion by the Identity Provider
* during the Single Sign-on process. The implementation of this plugin
* must return list of SAML AttributeStatements.
- *
*
* @deprecated This SPI is deprecated.
* @see com.sun.identity.federation.services.FSRealmAttributePlugin
@@ -50,7 +50,7 @@ public interface FSAttributePlugin {
* @param remoteProviderID Remote ProviderID.
* @param subject FSSubject to use in the statements
* @param token session object
- * @return List A list of SAML AttributeStatements.
+ * @return List A list of SAML AttributeStatements.
* @deprecated This method is deprecated.
* @see com.sun.identity.federation.services.FSRealmAttributePlugin
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSDefaultAttributePlugin.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSDefaultAttributePlugin.java
index 58a485a7ac..ad8200ef8d 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSDefaultAttributePlugin.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSDefaultAttributePlugin.java
@@ -24,6 +24,7 @@
*
* $Id: FSDefaultAttributePlugin.java,v 1.4 2008/11/10 22:56:58 veiming Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -70,7 +71,7 @@ public class FSDefaultAttributePlugin implements FSAttributePlugin {
* @param remoteEntityID Remote provider's entity id
* @param subject Subject subject of the authenticated principal.
* @param token user's session.
- * @return list of SAML AttributeStatements.
+ * @return list of SAML AttributeStatements.
* @deprecated This method is deprecated.
* @see #getAttributeStatements(String,String,String,FSSubject,Object)
*/
@@ -92,7 +93,7 @@ public List getAttributeStatements(
* @param remoteEntityID Remote provider's entity id
* @param subject Subject subject of the authenticated principal.
* @param token user's session.
- * @return list of SAML AttributeStatements.
+ * @return list of SAML AttributeStatements.
*/
public List getAttributeStatements(
String realm,
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSDefaultRealmAttributePlugin.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSDefaultRealmAttributePlugin.java
index ffd3c9903d..1147e32490 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSDefaultRealmAttributePlugin.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSDefaultRealmAttributePlugin.java
@@ -24,6 +24,7 @@
*
* $Id: FSDefaultRealmAttributePlugin.java,v 1.2 2008/06/25 05:46:53 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -71,7 +72,7 @@ public class FSDefaultRealmAttributePlugin implements FSRealmAttributePlugin {
* @param remoteEntityID Remote provider's entity id
* @param subject Subject subject of the authenticated principal.
* @param token user's session.
- * @return list of SAML AttributeStatements.
+ * @return list of SAML AttributeStatements.
*/
public List getAttributeStatements(
String realm,
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSLoginHelperException.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSLoginHelperException.java
index b6212677ec..d4320ed657 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSLoginHelperException.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSLoginHelperException.java
@@ -24,6 +24,7 @@
*
* $Id: FSLoginHelperException.java,v 1.2 2008/06/25 05:46:55 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.federation.services;
@@ -31,7 +32,7 @@
import com.sun.identity.federation.common.FSException;
/**
- * This class handles all preLogin & postLogin exceptions.
+ * This class handles all preLogin & postLogin exceptions.
*
* @see com.sun.identity.federation.common.FSException
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSRealmAttributeMapper.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSRealmAttributeMapper.java
index 35304d37a5..68943e176c 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSRealmAttributeMapper.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSRealmAttributeMapper.java
@@ -24,6 +24,7 @@
*
* $Id: FSRealmAttributeMapper.java,v 1.2 2008/06/25 05:46:55 qcheng Exp $
* Portions Copyrighted 2014 ForgeRock AS
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.federation.services;
@@ -41,7 +42,6 @@
* Identity provider to local attributes so that the assertion consumer
* service will populate these attributes to the application via the
* single sign-on token.
- *
*
* @deprecated since 12.0.0
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSRealmAttributePlugin.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSRealmAttributePlugin.java
index 7ac470ca7b..2235499e8f 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSRealmAttributePlugin.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSRealmAttributePlugin.java
@@ -24,6 +24,7 @@
*
* $Id: FSRealmAttributePlugin.java,v 1.2 2008/06/25 05:46:55 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.federation.services;
@@ -37,7 +38,6 @@
* AttributeStatements into the Assertion by the Identity Provider
* during the Single Sign-on process. The implementation of this plugin
* must return list of SAML AttributeStatements.
- *
*
*/
public interface FSRealmAttributePlugin {
@@ -49,7 +49,7 @@ public interface FSRealmAttributePlugin {
* @param remoteProviderID Remote ProviderID.
* @param subject FSSubject to use in the statements
* @param token session object
- * @return List A list of SAML AttributeStatements.
+ * @return List A list of SAML AttributeStatements.
*/
public List getAttributeStatements(
String realm,
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSSOAPReceiver.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSSOAPReceiver.java
index 4fd596b637..437bc12854 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSSOAPReceiver.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSSOAPReceiver.java
@@ -24,7 +24,7 @@
*
* $Id: FSSOAPReceiver.java,v 1.7 2008/06/25 05:46:56 qcheng Exp $
*
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
@@ -135,7 +135,8 @@ public FSSOAPReceiver() {
* Handles post request.
* @param request http request object
* @param response http response object
- * @exception ServletException, IOException if error occurrs.
+ * @exception ServletException if error occurrs.
+ * @exception java.io.IOException if error occurrs.
*/
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws jakarta.servlet.ServletException, java.io.IOException
@@ -1467,7 +1468,7 @@ private void handleLECPRequest(
* @param msg request soap message
* @param cert Certificate to be used in verifying the signature.
* @return boolean true if signature verfication successful;
- * otherwise return false.
+ * otherwise return false.
*/
protected boolean verifyRequestSignature(
Element elt,
@@ -1504,7 +1505,8 @@ protected boolean verifyRequestSignature(
* @param id the value of the id attributer to be signed
* @param hostedConfig hosted provider's extended meta
* @return SOAPMessage the signed response message
- * @exception SAMLException, FSMsgException if error occurrs
+ * @exception SAMLException if error occurrs
+ * @exception FSMsgException if error occurrs
*/
protected SOAPMessage signResponse (
SOAPMessage msg,
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSSOAPService.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSSOAPService.java
index 68fd026cf6..95c3924b21 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSSOAPService.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSSOAPService.java
@@ -24,7 +24,7 @@
*
* $Id: FSSOAPService.java,v 1.4 2008/11/10 22:56:58 veiming Exp $
*
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.federation.services;
@@ -135,7 +135,8 @@ public SOAPMessage bind(String xmlString) {
* @param msg the SOAPMessage to be sent
* @param soapEndPoint the SOAPEndpoint URL of remote provider
* @return SOAPMessage response message from remote provider
- * @exception IOException, SOAPException if error occurrs
+ * @exception IOException if error occurrs
+ * @exception SOAPException if error occurrs
*/
public SOAPMessage sendMessage(
SOAPMessage msg,
@@ -430,7 +431,8 @@ private Node getFederationElement(Element body, String nodeName)
* @param needAuthn determines forced authn
* @return SOAPMessage corresponding to liberty
* request/response message
- * @exception IOException, SOAPException if error occurrs
+ * @exception IOException if error occurrs
+ * @exception SOAPException if error occurrs
*/
public SOAPMessage doSyncCall(
HttpServletResponse response,
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSSPAuthenticationContextInfo.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSSPAuthenticationContextInfo.java
index 97bbddb767..17244633c1 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSSPAuthenticationContextInfo.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/FSSPAuthenticationContextInfo.java
@@ -24,6 +24,7 @@
*
* $Id: FSSPAuthenticationContextInfo.java,v 1.3 2008/11/10 22:56:58 veiming Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.federation.services;
@@ -97,7 +98,7 @@ public FSSPAuthenticationContextInfo(String mapping)
* Creates new FSSPAuthenticationContextInfo
* @param authenticationContext the authContext name.
* @param authenticationLevel the authentication level.
- * @throws FSSPAuthenticationContextInfo if
+ * @throws FSException if
* authenticationContext or
* authenticationLevel is invalid.
*/
@@ -115,7 +116,7 @@ public FSSPAuthenticationContextInfo(
*
* @param authenticationContext the authContext name.
* @param authenticationLevel the authentication level.
- * @throws FSSPAuthenticationContextInfo if
+ * @throws FSException if
* authenticationContext or
* authenticationLevel is invalid.
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/fednsso/FSAssertionConsumerService.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/fednsso/FSAssertionConsumerService.java
index 4a023f31f6..b86dd86898 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/fednsso/FSAssertionConsumerService.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/fednsso/FSAssertionConsumerService.java
@@ -24,7 +24,7 @@
*
* $Id: FSAssertionConsumerService.java,v 1.3 2008/06/25 05:46:57 qcheng Exp $
*
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.federation.services.fednsso;
@@ -87,7 +87,8 @@ public FSAssertionConsumerService() {
* Handles artifact profile.
* @param request HttpServletRequest object
* @param response HttpServletResponse object
- * @exception ServletException, IOException if error occurrs.
+ * @exception ServletException if error occurrs.
+ * @exception IOException if error occurrs.
*/
public void doGet(
HttpServletRequest request,
@@ -225,7 +226,8 @@ public void doGet(
* Handles post profile.
* @param request HttpServletRequest object
* @param response HttpServletResponse object
- * @exception ServletException, IOException if error occurs.
+ * @exception ServletException if error occurs.
+ * @exception IOException if error occurs.
*/
public void doPost(
HttpServletRequest request,
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/fednsso/FSIDPFinderService.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/fednsso/FSIDPFinderService.java
index b6f5cf59ef..e19002eac7 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/fednsso/FSIDPFinderService.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/fednsso/FSIDPFinderService.java
@@ -24,7 +24,7 @@
*
* $Id: FSIDPFinderService.java,v 1.4 2008/06/25 05:46:58 qcheng Exp $
*
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
@@ -90,7 +90,8 @@ public class FSIDPFinderService extends HttpServlet {
* request to the IDP.
* @param request HttpServletRequest object
* @param response HttpServletResponse object
- * @exception ServletException, IOException if error occurred.
+ * @exception ServletException if error occurred.
+ * @exception IOException if error occurred.
*/
public void doGet(
HttpServletRequest request,
@@ -195,7 +196,8 @@ public void doGet(
* request to the IDP.
* @param request HttpServletRequest object
* @param response HttpServletResponse object
- * @exception ServletException, IOException if error occurred.
+ * @exception ServletException if error occurred.
+ * @exception IOException if error occurred.
*/
public void doPost(
HttpServletRequest request,
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/fednsso/FSIntersiteTransferService.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/fednsso/FSIntersiteTransferService.java
index 80109728be..052698f1d7 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/fednsso/FSIntersiteTransferService.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/fednsso/FSIntersiteTransferService.java
@@ -24,7 +24,7 @@
*
* $Id: FSIntersiteTransferService.java,v 1.6 2008/08/29 04:57:16 exu Exp $
*
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.federation.services.fednsso;
@@ -306,7 +306,8 @@ private String signAndReturnQueryString(
* Generates AuthnRequest and sends it to IDP.
* @param request HttpServletRequest object
* @param response HttpServletResponse object
- * @exception ServletException,IOException if error occurred
+ * @exception ServletException if error occurred
+ * @exception IOException if error occurred
*/
public void doGet(
HttpServletRequest request,
@@ -506,7 +507,8 @@ public void doGet(
* Generates AuthnRequest and sends it to IDP.
* @param request HttpServletRequest object
* @param response HttpServletResponse object
- * @exception ServletException,IOException if error occurred
+ * @exception ServletException if error occurred
+ * @exception IOException if error occurred
*/
public void doPost(
HttpServletRequest request,
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/fednsso/FSSSOAndFedService.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/fednsso/FSSSOAndFedService.java
index 40a54b319c..7c8ba38319 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/fednsso/FSSSOAndFedService.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/fednsso/FSSSOAndFedService.java
@@ -24,7 +24,7 @@
*
* $Id: FSSSOAndFedService.java,v 1.8 2009/06/19 02:45:50 bigfatrat Exp $
*
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.federation.services.fednsso;
@@ -109,7 +109,8 @@ public void init(ServletConfig config) throws ServletException {
* Processes single sign on request.
* @param request HttpServletRequest object
* @param response HttpServletResponse object
- * @exception ServletException, IOException if an error occurred
+ * @exception ServletException if an error occurred
+ * @exception IOException if an error occurred
*/
public void doGet(
HttpServletRequest request,
@@ -269,7 +270,8 @@ public void doGet(
* Processes single sign on POST request.
* @param request HttpServletRequest object
* @param response HttpServletResponse object
- * @exception ServletException, IOException if an error occurred
+ * @exception ServletException if an error occurred
+ * @exception IOException if an error occurred
*/
public void doPost(
HttpServletRequest request,
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/logout/FSProcessLogoutServlet.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/logout/FSProcessLogoutServlet.java
index 691b652cff..6e06e8e268 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/logout/FSProcessLogoutServlet.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/logout/FSProcessLogoutServlet.java
@@ -24,7 +24,7 @@
*
* $Id: FSProcessLogoutServlet.java,v 1.7 2008/12/19 06:50:47 exu Exp $
*
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
@@ -635,7 +635,8 @@ private void doLogoutInitiation(
* @param remoteEntity Id the remote provider's entity id
* @return true if the signature is valid; false
* otherwise.
- * @exception SAMLException, FSException if an error occurred during the
+ * @exception SAMLException if an error occurred during the
+ * @exception FSException if an error occurred during the
* process
*/
private boolean verifyLogoutSignature(
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/logout/FSReturnLogoutServlet.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/logout/FSReturnLogoutServlet.java
index e64dc530b6..d348854052 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/logout/FSReturnLogoutServlet.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/logout/FSReturnLogoutServlet.java
@@ -24,7 +24,7 @@
*
* $Id: FSReturnLogoutServlet.java,v 1.6 2008/12/19 06:50:47 exu Exp $
*
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.federation.services.logout;
@@ -352,7 +352,8 @@ private void doGetPost(HttpServletRequest request,
* @param isRemoteIDP whether the remote provider is an IDP or not
* @return true if the signature is verified; null
* otherwise.
- * @exception SAMLException, FSException
+ * @exception SAMLException if a SAML error occurs
+ * @exception FSException if a federation error occurs
*/
private boolean verifyResponseSignature(
HttpServletRequest request,
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/logout/FSReturnSessionManager.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/logout/FSReturnSessionManager.java
index 3f3a291d50..b98ca089b2 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/logout/FSReturnSessionManager.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/logout/FSReturnSessionManager.java
@@ -25,6 +25,7 @@
* $Id: FSReturnSessionManager.java,v 1.4 2009/01/28 05:35:07 ww203982 Exp $
*
* Portions Copyright 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.federation.services.logout;
@@ -135,7 +136,7 @@ public void removeUserProviderInfo(String userDN){
/**
* Gets the singleton instance of FSReturnSessionManager.
* There is a single instance for each hosted provider.
- * @return metaAlias the hosted provider whose instance needs to be
+ * @param metaAlias the hosted provider whose instance needs to be
* returned
* @return the singleton FSReturnSessionManager instance
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/logout/FSSingleLogoutHandler.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/logout/FSSingleLogoutHandler.java
index 6ee5c6519b..d147ecc9e1 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/logout/FSSingleLogoutHandler.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/logout/FSSingleLogoutHandler.java
@@ -25,7 +25,7 @@
* $Id: FSSingleLogoutHandler.java,v 1.15 2009/11/04 00:06:11 exu Exp $
*
* Portions Copyrighted 2013 ForgeRock AS
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*
*/
package com.sun.identity.federation.services.logout;
@@ -1656,7 +1656,8 @@ private boolean supportSOAPProfile(ProviderDescriptorType currentDesc)
* @param idAttrName id attribute name
* @param id id attribute value
* @return the signed logout request
- * @exception SAMLException, FSMsgException if an error occurred during
+ * @exception SAMLException if an error occurred during
+ * @exception FSMsgException if an error occurred during
* the process
*/
private SOAPMessage signLogoutRequest(
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/namemapping/FSNameMappingHandler.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/namemapping/FSNameMappingHandler.java
index 9d394e1cbc..ea6bf39680 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/namemapping/FSNameMappingHandler.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/namemapping/FSNameMappingHandler.java
@@ -24,7 +24,7 @@
*
* $Id: FSNameMappingHandler.java,v 1.3 2008/06/25 05:47:02 qcheng Exp $
*
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
@@ -106,7 +106,8 @@ public FSNameMappingHandler(
* a local provider; false otherwise.
* @return NameIdentifier of an user corresponding to
* remoteProviderID.
- * @exception FSAccountMgmtException, SAMLException if an error occurred.
+ * @exception FSAccountMgmtException if an error occurred.
+ * @exception SAMLException if an error occurred.
*/
public NameIdentifier getNameIdentifier(
String userID,
@@ -158,7 +159,8 @@ public NameIdentifier getNameIdentifier(
* a local provider; false otherwise.
* @return NameIdentifier corresponding to
* remoteProviderID.
- * @exception FSAccountMgmtException, SAMLException if an error occurred.
+ * @exception FSAccountMgmtException if an error occurred.
+ * @exception SAMLException if an error occurred.
*/
public NameIdentifier getNameIdentifier(
FSNameIdentifierMappingRequest mappingRequest,
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/package-info.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/package-info.java
index 2cf368ded3..c2b6ec6c55 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/package-info.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/package-info.java
@@ -24,12 +24,13 @@
*
* $Id: package-info.java,v 1.2 2008/06/25 05:46:57 qcheng Exp $
* Portions Copyrighted 2014 ForgeRock AS
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
/**
* Handles ID-FF federation profiles.
*
- * @deprecated since 12.0.0
+ * Deprecated since 12.0.0.
*/
package com.sun.identity.federation.services;
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/registration/FSNameRegistrationHandler.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/registration/FSNameRegistrationHandler.java
index 226d4fb6cd..24136cee8e 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/registration/FSNameRegistrationHandler.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/registration/FSNameRegistrationHandler.java
@@ -24,7 +24,7 @@
*
* $Id: FSNameRegistrationHandler.java,v 1.7 2008/12/19 06:50:47 exu Exp $
*
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
@@ -1564,7 +1564,8 @@ public void returnLocallyAtSource(
* @param idAttrName name of the id attribute to be signed
* @param id the value of the id attribute to be signed
* @return signed Name registration request
- * @exception SAMLException, FSMsgException if error occurred.
+ * @exception SAMLException if error occurred.
+ * @exception FSMsgException if error occurred.
*/
protected SOAPMessage signRegistrationRequest(
SOAPMessage msg, String idAttrName, String id)
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/registration/FSRegistrationInitiationServlet.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/registration/FSRegistrationInitiationServlet.java
index 569ec6006a..da689ace61 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/registration/FSRegistrationInitiationServlet.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/registration/FSRegistrationInitiationServlet.java
@@ -24,7 +24,7 @@
*
* $Id: FSRegistrationInitiationServlet.java,v 1.7 2008/12/19 06:50:47 exu Exp $
*
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
@@ -141,7 +141,8 @@ public void doPost(
* request the client has made of the servlet.
* @param response HttpServletResponse object that contains
* the response the servlet sends to the client.
- * @exception ServletException, IOException if the request could not be
+ * @exception ServletException if the request could not be
+ * @exception IOException if the request could not be
* handled
*/
private void doGetPost(
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/registration/FSRegistrationRequestServlet.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/registration/FSRegistrationRequestServlet.java
index 1bd8d233f5..d5a2f0e294 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/registration/FSRegistrationRequestServlet.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/registration/FSRegistrationRequestServlet.java
@@ -24,7 +24,7 @@
*
* $Id: FSRegistrationRequestServlet.java,v 1.4 2008/06/25 05:47:03 qcheng Exp $
*
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.federation.services.registration;
@@ -408,7 +408,8 @@ private void doRequestProcessing(
* @return true if the signature is verified;
* false
* otherwise
- * @exception SAMLException, FSException if an error occurred during
+ * @exception SAMLException if an error occurred during
+ * @exception FSException if an error occurred during
* the process
*/
private boolean verifyRegistrationSignature(
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/registration/FSRegistrationReturnServlet.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/registration/FSRegistrationReturnServlet.java
index 8e9bf7a778..bf553bfa02 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/registration/FSRegistrationReturnServlet.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/registration/FSRegistrationReturnServlet.java
@@ -24,7 +24,7 @@
*
* $Id: FSRegistrationReturnServlet.java,v 1.4 2008/06/25 05:47:03 qcheng Exp $
*
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.federation.services.registration;
@@ -289,7 +289,8 @@ private void doGetPost(HttpServletRequest request,
* @param isIDP whether the remote provider is an IDP or not
* @return true if the signature is valid; false
* otherwise.
- * @exception SAMLException, FSException if an error occurred during the
+ * @exception SAMLException if an error occurred during the
+ * @exception FSException if an error occurred during the
* process
*/
private boolean verifyResponseSignature(
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/termination/FSTerminationInitiationServlet.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/termination/FSTerminationInitiationServlet.java
index 43c181ae41..551c90dcae 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/termination/FSTerminationInitiationServlet.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/termination/FSTerminationInitiationServlet.java
@@ -24,7 +24,7 @@
*
* $Id: FSTerminationInitiationServlet.java,v 1.7 2008/12/19 06:50:47 exu Exp $
*
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
@@ -119,7 +119,8 @@ public void doPost(
* request the client has made of the servlet.
* @param response HttpServletResponse object that contains
* the response the servlet sends to the client.
- * @exception ServletException,IOException if the request could not be
+ * @exception ServletException if the request could not be
+ * @exception IOException if the request could not be
* handled
*/
private void doGetPost(
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/termination/FSTerminationRequestServlet.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/termination/FSTerminationRequestServlet.java
index 7be4a30c40..62900443d4 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/termination/FSTerminationRequestServlet.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/termination/FSTerminationRequestServlet.java
@@ -24,7 +24,7 @@
*
* $Id: FSTerminationRequestServlet.java,v 1.4 2008/06/25 05:47:04 qcheng Exp $
*
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
@@ -403,7 +403,8 @@ private void doRequestProcessing (
* @param isIDP whether the remote provider is an IDP or not
* @return true if signatre is valid; false
* otherwise.
- * @exception SAMLException, FSException if an error occurred during the
+ * @exception SAMLException if an error occurred during the
+ * @exception FSException if an error occurred during the
* process
*/
private boolean verifyTerminationSignature(
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/util/FSServiceUtils.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/util/FSServiceUtils.java
index 88438546fb..27d1ed6eea 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/util/FSServiceUtils.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/federation/services/util/FSServiceUtils.java
@@ -25,7 +25,7 @@
* $Id: FSServiceUtils.java,v 1.11 2008/11/10 22:56:59 veiming Exp $
*
* Portions Copyrighted 2012-2016 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.federation.services.util;
@@ -386,7 +386,8 @@ public static String getBaseURL (HttpServletRequest request) {
* Outputs the DOM representation given as root as XML string.
* @param root The DOM representation to be outputted
* @return string representation of DOM node.
- * @exception TransformerException, TransformerConfigurationException,
+ * @exception TransformerException if an error occurs
+ * @exception TransformerConfigurationException if an error occurs
* FileNotFoundException
*/
public static String printDocument (Node root) throws TransformerException, TransformerConfigurationException,
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/authnsvc/mechanism/package-info.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/authnsvc/mechanism/package-info.java
index 4da1d05b9e..cd876bc771 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/authnsvc/mechanism/package-info.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/authnsvc/mechanism/package-info.java
@@ -24,13 +24,14 @@
*
* $Id: package-info.java,v 1.2 2008/06/25 05:47:07 qcheng Exp $
* Portions Copyrighted 2014 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
/**
* Defines interface to handle different SASL mechanisms.
*
*
- * @deprecated since 12.0.0
+ * Deprecated since 12.0.0.
*/
package com.sun.identity.liberty.ws.authnsvc.mechanism;
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/authnsvc/package-info.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/authnsvc/package-info.java
index 200f8865ed..a54c78ddb8 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/authnsvc/package-info.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/authnsvc/package-info.java
@@ -24,13 +24,14 @@
*
* $Id: package-info.java,v 1.2 2008/06/25 05:47:06 qcheng Exp $
* Portions Copyrighted 2014 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
/**
* Provides classes to manage liberty authentication service.
*
*
- * @deprecated since 12.0.0
+ * Deprecated since 12.0.0.
*/
package com.sun.identity.liberty.ws.authnsvc;
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/authnsvc/protocol/package-info.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/authnsvc/protocol/package-info.java
index 8954d0302b..e7ee89553e 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/authnsvc/protocol/package-info.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/authnsvc/protocol/package-info.java
@@ -24,13 +24,14 @@
*
* $Id: package-info.java,v 1.2 2008/06/25 05:47:08 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
/**
* Provides classes to manage liberty authentication service protocol.
*
*
- * @deprecated since 12.0.0
+ * Deprecated since 12.0.0.
*/
package com.sun.identity.liberty.ws.authnsvc.protocol;
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/common/Status.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/common/Status.java
index 07cb8e0eff..05743890c1 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/common/Status.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/common/Status.java
@@ -24,6 +24,7 @@
*
* $Id: Status.java,v 1.2 2008/06/25 05:47:09 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -36,18 +37,18 @@
* The following schema fragment specifies the expected content within the
* Status object.
*
- * <complexType name="Status">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element ref="Status" minOccurs="0"/>
- * </sequence>
- * <attribute name="code" use="required" type="{http://www.w3.org/2001/XMLSchema}QName" />
- * <attribute name="comment" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="ref" type="{http://www.w3.org/2001/XMLSchema}IDREF" />
- * </restriction>
- * </complexContent>
- * </complexType>
+ * <complexType name="Status">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="Status" minOccurs="0"/>
+ * </sequence>
+ * <attribute name="code" use="required" type="{http://www.w3.org/2001/XMLSchema}QName" />
+ * <attribute name="comment" type="{http://www.w3.org/2001/XMLSchema}string" />
+ * <attribute name="ref" type="{http://www.w3.org/2001/XMLSchema}IDREF" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/common/wsse/BinarySecurityToken.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/common/wsse/BinarySecurityToken.java
index 63549c3ab8..245e44ea73 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/common/wsse/BinarySecurityToken.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/common/wsse/BinarySecurityToken.java
@@ -24,6 +24,7 @@
*
* $Id: BinarySecurityToken.java,v 1.5 2008/08/06 17:28:07 exu Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -50,31 +51,30 @@
* Certificate Token Profile and Liberty ID-WSF Security Mechanisms
* specifications.
* The following schema fragment specifies the expected content within the BinarySecurityToken object.
- *
*
- * <element name="BinarySecurityToken" type="wsse:BinarySecurityTokenType/>
- * <complexType name="BinarySecurityTokenType">
- * <simpleContent>
- * <extension base="<http://schemas.xmlsoap.org/ws/2003/06/secext>EncodedString">
- * <attribute name="ValueType" type="{http://www.w3.org/2001/XMLSchema}QName" />
- * </extension>
- * </simpleContent>
- * </complexType>
- * <xsd:complexType name="EncodedString">
- * <xsd:simpleContent>
- * <xsd:extension base="wsse:AttributedString">
- * <xsd:attribute name="EncodingType" type="xsd:QName"/>
- * </xsd:extension>
- * </xsd:simpleContent>
- * </xsd:complexType>
- * <xsd:complexType name="AttributedString">
- * <xsd:simpleContent>
- * <xsd:extension base="xsd:string">
- * <xsd:attribute ref="wsu:Id"/>
- * <xsd:anyAttribute namespace="##other" processContents="lax"/>
- * </xsd:extension>
- * </xsd:simpleContent>
- * </xsd:complexType>
+ * <element name="BinarySecurityToken" type="wsse:BinarySecurityTokenType/>
+ * <complexType name="BinarySecurityTokenType">
+ * <simpleContent>
+ * <extension base="<http://schemas.xmlsoap.org/ws/2003/06/secext>EncodedString">
+ * <attribute name="ValueType" type="{http://www.w3.org/2001/XMLSchema}QName" />
+ * </extension>
+ * </simpleContent>
+ * </complexType>
+ * <xsd:complexType name="EncodedString">
+ * <xsd:simpleContent>
+ * <xsd:extension base="wsse:AttributedString">
+ * <xsd:attribute name="EncodingType" type="xsd:QName"/>
+ * </xsd:extension>
+ * </xsd:simpleContent>
+ * </xsd:complexType>
+ * <xsd:complexType name="AttributedString">
+ * <xsd:simpleContent>
+ * <xsd:extension base="xsd:string">
+ * <xsd:attribute ref="wsu:Id"/>
+ * <xsd:anyAttribute namespace="##other" processContents="lax"/>
+ * </xsd:extension>
+ * </xsd:simpleContent>
+ * </xsd:complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/Description.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/Description.java
index ac917f52c8..a47ddf390c 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/Description.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/Description.java
@@ -24,6 +24,7 @@
*
* $Id: Description.java,v 1.2 2008/06/25 05:47:10 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -46,23 +47,22 @@
* Description Type of a service instance.
* The following schema fragment specifies the expected content within the
* Description object.
- *
*
- * <complexType name="DescriptionType">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element name="SecurityMechID" type="{http://www.w3.org/2001/XMLSchema}anyURI" maxOccurs="unbounded"/>
- * <element name="CredentialRef" type="{http://www.w3.org/2001/XMLSchema}IDREF" maxOccurs="unbounded" minOccurs="0"/>
- * <choice>
- * <group ref="{urn:liberty:disco:2003-08}WsdlRef"/>
- * <group ref="{urn:liberty:disco:2003-08}BriefSoapHttpDescription"/>
- * </choice>
- * </sequence>
- * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
- * </restriction>
- * </complexContent>
- * </complexType>
+ * <complexType name="DescriptionType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element name="SecurityMechID" type="{http://www.w3.org/2001/XMLSchema}anyURI" maxOccurs="unbounded"/>
+ * <element name="CredentialRef" type="{http://www.w3.org/2001/XMLSchema}IDREF" maxOccurs="unbounded" minOccurs="0"/>
+ * <choice>
+ * <group ref="{urn:liberty:disco:2003-08}WsdlRef"/>
+ * <group ref="{urn:liberty:disco:2003-08}BriefSoapHttpDescription"/>
+ * </choice>
+ * </sequence>
+ * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/Directive.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/Directive.java
index 0afdb459b3..973f780df7 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/Directive.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/Directive.java
@@ -24,6 +24,7 @@
*
* $Id: Directive.java,v 1.2 2008/06/25 05:47:10 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -49,13 +50,13 @@
* The following schema fragment specifies the expected content within the
* DirectiveType object.
*
- * <complexType name="DirectiveType">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <attribute name="descriptionIDRefs" type="{http://www.w3.org/2001/XMLSchema}IDREFS" />
- * </restriction>
- * </complexContent>
- * </complexType>
+ * <complexType name="DirectiveType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <attribute name="descriptionIDRefs" type="{http://www.w3.org/2001/XMLSchema}IDREFS" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/EncryptedResourceID.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/EncryptedResourceID.java
index c64e8dc6e6..824d340fab 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/EncryptedResourceID.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/EncryptedResourceID.java
@@ -24,6 +24,7 @@
*
* $Id: EncryptedResourceID.java,v 1.4 2008/06/25 05:47:10 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -43,19 +44,18 @@
* Resource ID element for the Discovery Service.
* The following schema fragment specifies the expected content within the
* EncryptedResourceID object.
- *
*
- * <xs:element name="EncryptedResourceID" type="EncryptedResourceIDType"/>
- * <complexType name="EncryptedResourceIDType">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element ref="{http://www.w3.org/2001/04/xmlenc#}EncryptedData"/>
- * <element ref="{http://www.w3.org/2001/04/xmlenc#}EncryptedKey"/>
- * </sequence>
- * </restriction>
- * </complexContent>
- * </complexType>
+ * <xs:element name="EncryptedResourceID" type="EncryptedResourceIDType"/>
+ * <complexType name="EncryptedResourceIDType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{http://www.w3.org/2001/04/xmlenc#}EncryptedData"/>
+ * <element ref="{http://www.w3.org/2001/04/xmlenc#}EncryptedKey"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/InsertEntry.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/InsertEntry.java
index fe6e75d242..29b8cc7209 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/InsertEntry.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/InsertEntry.java
@@ -24,6 +24,7 @@
*
* $Id: InsertEntry.java,v 1.2 2008/06/25 05:47:10 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -43,19 +44,18 @@
* Modify request.
* The following schema fragment specifies the expected content within the
* InsertEntry object.
- *
*
- * <xs:element name="InsertEntry" type="InsertEntryType">
- * <complexType name="InsertEntryType">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element ref="{urn:liberty:disco:2003-08}ResourceOffering"/>
- * <any/>
- * </sequence>
- * </restriction>
- * </complexContent>
- * </complexType>
+ * <xs:element name="InsertEntry" type="InsertEntryType">
+ * <complexType name="InsertEntryType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{urn:liberty:disco:2003-08}ResourceOffering"/>
+ * <any/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/Modify.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/Modify.java
index 9b78899c77..ee36ae31c8 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/Modify.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/Modify.java
@@ -24,6 +24,7 @@
*
* $Id: Modify.java,v 1.2 2008/06/25 05:47:10 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -41,19 +42,19 @@
* The following schema fragment specifies the expected content within
* the Modify object.
*
- * <xs:element name="Modify" type="ModifyType"/>
- * <complexType name="ModifyType">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <group ref="{urn:liberty:disco:2003-08}ResourceIDGroup"/>
- * <element name="InsertEntry" type="{urn:liberty:disco:2003-08}InsertEntryType" maxOccurs="unbounded" minOccurs="0"/>
- * <element name="RemoveEntry" type="{urn:liberty:disco:2003-08}RemoveEntryType" maxOccurs="unbounded" minOccurs="0"/>
- * </sequence>
- * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
- * </restriction>
- * </complexContent>
- * </complexType>
+ * <xs:element name="Modify" type="ModifyType"/>
+ * <complexType name="ModifyType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <group ref="{urn:liberty:disco:2003-08}ResourceIDGroup"/>
+ * <element name="InsertEntry" type="{urn:liberty:disco:2003-08}InsertEntryType" maxOccurs="unbounded" minOccurs="0"/>
+ * <element name="RemoveEntry" type="{urn:liberty:disco:2003-08}RemoveEntryType" maxOccurs="unbounded" minOccurs="0"/>
+ * </sequence>
+ * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/ModifyResponse.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/ModifyResponse.java
index 30b1a472bc..1e2c936d72 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/ModifyResponse.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/ModifyResponse.java
@@ -24,6 +24,7 @@
*
* $Id: ModifyResponse.java,v 1.2 2008/06/25 05:47:10 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -46,23 +47,22 @@
* modify request.
* The following schema fragment specifies the expected content within the
* ModifyResponse object.
- *
*
- * <complexType name="ModifyResponseType">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element ref="{urn:liberty:disco:2003-08}Status"/>
- * </sequence>
- * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
- * <attribute name="newEntryIDs">
- * <simpleType>
- * <list itemType="{urn:liberty:disco:2003-08}IDReferenceType" />
- * </simpleType>
- * </attribute>
- * </restriction>
- * </complexContent>
- * </complexType>
+ * <complexType name="ModifyResponseType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{urn:liberty:disco:2003-08}Status"/>
+ * </sequence>
+ * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
+ * <attribute name="newEntryIDs">
+ * <simpleType>
+ * <list itemType="{urn:liberty:disco:2003-08}IDReferenceType" />
+ * </simpleType>
+ * </attribute>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/Query.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/Query.java
index c46c32c4fc..6b54c8f0b7 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/Query.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/Query.java
@@ -24,6 +24,7 @@
*
* $Id: Query.java,v 1.2 2008/06/25 05:47:10 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -41,29 +42,29 @@
* The following schema fragment specifies the expected content within the
* Query object.
*
- * <xs:element name="Query" type="Query"/>
- * <complexType name="Query">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <group ref="{urn:liberty:disco:2003-08}ResourceIDGroup"/>
- * <element name="RequestedServiceType" maxOccurs="unbounded" minOccurs="0">
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element ref="{urn:liberty:disco:2003-08}ServiceType"/>
- * <element ref="{urn:liberty:disco:2003-08}Options" minOccurs="0"/>
- * </sequence>
- * </restriction>
- * </complexContent>
- * </complexType>
- * </element>
- * </sequence>
- * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
- * </restriction>
- * </complexContent>
- * </complexType>
+ * <xs:element name="Query" type="Query"/>
+ * <complexType name="Query">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <group ref="{urn:liberty:disco:2003-08}ResourceIDGroup"/>
+ * <element name="RequestedServiceType" maxOccurs="unbounded" minOccurs="0">
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{urn:liberty:disco:2003-08}ServiceType"/>
+ * <element ref="{urn:liberty:disco:2003-08}Options" minOccurs="0"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </element>
+ * </sequence>
+ * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/QueryResponse.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/QueryResponse.java
index cf0ad2ec1b..ee6b2516ce 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/QueryResponse.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/QueryResponse.java
@@ -24,6 +24,7 @@
*
* $Id: QueryResponse.java,v 1.2 2008/06/25 05:47:10 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -47,28 +48,28 @@
* The following schema fragment specifies the expected content within the
* QueryResponse object.
*
- * <complexType name="QueryResponseType">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element ref="{urn:liberty:disco:2003-08}Status"/>
- * <element ref="{urn:liberty:disco:2003-08}ResourceOffering" maxOccurs="unbounded" minOccurs="0"/>
- * <element name="Credentials" minOccurs="0">
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <any/>
- * </sequence>
- * </restriction>
- * </complexContent>
- * </complexType>
- * </element>
- * </sequence>
- * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
- * </restriction>
- * </complexContent>
- * </complexType>
+ * <complexType name="QueryResponseType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{urn:liberty:disco:2003-08}Status"/>
+ * <element ref="{urn:liberty:disco:2003-08}ResourceOffering" maxOccurs="unbounded" minOccurs="0"/>
+ * <element name="Credentials" minOccurs="0">
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <any/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </element>
+ * </sequence>
+ * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/RemoveEntry.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/RemoveEntry.java
index a2408fd1be..6cad7117d3 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/RemoveEntry.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/RemoveEntry.java
@@ -24,6 +24,7 @@
*
* $Id: RemoveEntry.java,v 1.2 2008/06/25 05:47:10 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -36,16 +37,15 @@
* the discovery modify request.
* The following schema fragment specifies the expected content
* within the RemoveEntry object.
- *
*
- * <xs:element name="RemoveEntry" type="RemoveEntryType">
- * <complexType name="RemoveEntryType">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <attribute name="entryID" type="{urn:liberty:disco:2003-08}IDReferenceType" />
- * </restriction>
- * </complexContent>
- * </complexType>
+ * <xs:element name="RemoveEntry" type="RemoveEntryType">
+ * <complexType name="RemoveEntryType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <attribute name="entryID" type="{urn:liberty:disco:2003-08}IDReferenceType" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/RequestedService.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/RequestedService.java
index 8af5b73145..fc17f07032 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/RequestedService.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/RequestedService.java
@@ -24,6 +24,7 @@
*
* $Id: RequestedService.java,v 1.2 2008/06/25 05:47:11 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -42,25 +43,23 @@
* instance complying with one of the specified service type.
* The following schema fragment specifies the expected content
* within the RequestedService object.
- *
*
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element ref="{urn:liberty:disco:2003-08}ServiceType"/>
- * <element ref="{urn:liberty:disco:2003-08}Options" minOccurs="0"/>
- * * </sequence>
- * </restriction>
- * </complexContent>
- * </complexType>
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{urn:liberty:disco:2003-08}ServiceType"/>
+ * <element ref="{urn:liberty:disco:2003-08}Options" minOccurs="0"/>
+ * * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
- *
*
* In this implementation, the value of Options has the following meanings:
* When the List of options is null, no Options element will be created;
* When the List of options is an empty List, or is Collection.EMPTY_LIST,
- * empty Options element <Options></Options> will be created;
+ * empty Options element <Options></Options> will be created;
* When the List of options is not empty,
* Options element with child Option element(s) will be created.
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/ResourceID.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/ResourceID.java
index 32021f64cc..dcad682cba 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/ResourceID.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/ResourceID.java
@@ -24,6 +24,7 @@
*
* $Id: ResourceID.java,v 1.2 2008/06/25 05:47:11 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -40,14 +41,14 @@
* The following schema fragment specifies the expected content within the
* ResourceID object.
*
- * <xs:element name="ResourceID" type="ResourceIDType"/>
- * <complexType name="ResourceIDType">
- * <simpleContent>
- * <extension base="<http://www.w3.org/2001/XMLSchema>anyURI">
- * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
- * </extension>
- * </simpleContent>
- * </complexType>
+ * <xs:element name="ResourceID" type="ResourceIDType"/>
+ * <complexType name="ResourceIDType">
+ * <simpleContent>
+ * <extension base="<http://www.w3.org/2001/XMLSchema>anyURI">
+ * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
+ * </extension>
+ * </simpleContent>
+ * </complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/ResourceOffering.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/ResourceOffering.java
index 12a34bf24a..ca3646fd2a 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/ResourceOffering.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/ResourceOffering.java
@@ -24,6 +24,7 @@
*
* $Id: ResourceOffering.java,v 1.2 2008/06/25 05:47:11 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -44,50 +45,49 @@
* instance that provides access to that resource.
* The following schema fragment specifies the expected content within the
* ResourceOffering object.
- *
*
- * <complexType name="ResourceOfferingType">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <group ref="{urn:liberty:disco:2003-08}ResourceIDGroup"/>
- * <element name="ServiceInstance" type="{urn:liberty:disco:2003-08}ServiceInstanceType"/>
- * <element ref="{urn:liberty:disco:2003-08}Options" minOccurs="0"/>
- * <element name="Abstract" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
- * </sequence>
- * <attribute name="entryID" type="{urn:liberty:disco:2003-08}IDType" />
- * </restriction>
- * </complexContent>
- * </complexType>
+ * <complexType name="ResourceOfferingType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <group ref="{urn:liberty:disco:2003-08}ResourceIDGroup"/>
+ * <element name="ServiceInstance" type="{urn:liberty:disco:2003-08}ServiceInstanceType"/>
+ * <element ref="{urn:liberty:disco:2003-08}Options" minOccurs="0"/>
+ * <element name="Abstract" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * </sequence>
+ * <attribute name="entryID" type="{urn:liberty:disco:2003-08}IDType" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
* An example of the ResourceOffering is :
*
- * <ResourceOffering xmlns="urn:liberty:disco:2003-08">
- * <ResourceID>http://profile-provider.com/profiles/l4m0B82k15csaUxs</ResourceID>
- * <ServiceInstance xmlns="urn:liberty:disco:2003-08">
- * <ServiceType>urn:liberty:idpp:2003-08</ServiceType>
- * <ProviderID>http://profile-provider.com/</ProviderID>
- * <Description>
- * <SecurityMechID>urn:liberty:disco:2003-08:anonymous</SecurityMechID>
- * <SecurityMechID>urn:liberty:security:2003-08:x509</SecurityMechID>
- * <SecurityMechID>urn:liberty:security:2003-08:saml</SecurityMechID>
- * <Endpoint>https://soap.profile-provider.com/soap/</Endpoint>
- * </Description>
- * <Description>
- * <SecurityMechID>urn:ietf:rfc:2246</SecurityMechID>
- * <Endpoint>https://soap-auth.profile-provider.com/soap/</Endpoint>
- * </Description>
- * </ServiceInstance>
- * <Options>
- * <Option>urn:liberty:idpp</Option>
- * <Option>urn:liberty:idpp:cn</Option>
- * <Option>urn:liberty:idpp:can</Option>
- * <Option>urn:liberty:idpp:can:cn</Option>
- * </Options>
- * <Abstract>
+ * <ResourceOffering xmlns="urn:liberty:disco:2003-08">
+ * <ResourceID>http://profile-provider.com/profiles/l4m0B82k15csaUxs</ResourceID>
+ * <ServiceInstance xmlns="urn:liberty:disco:2003-08">
+ * <ServiceType>urn:liberty:idpp:2003-08</ServiceType>
+ * <ProviderID>http://profile-provider.com/</ProviderID>
+ * <Description>
+ * <SecurityMechID>urn:liberty:disco:2003-08:anonymous</SecurityMechID>
+ * <SecurityMechID>urn:liberty:security:2003-08:x509</SecurityMechID>
+ * <SecurityMechID>urn:liberty:security:2003-08:saml</SecurityMechID>
+ * <Endpoint>https://soap.profile-provider.com/soap/</Endpoint>
+ * </Description>
+ * <Description>
+ * <SecurityMechID>urn:ietf:rfc:2246</SecurityMechID>
+ * <Endpoint>https://soap-auth.profile-provider.com/soap/</Endpoint>
+ * </Description>
+ * </ServiceInstance>
+ * <Options>
+ * <Option>urn:liberty:idpp</Option>
+ * <Option>urn:liberty:idpp:cn</Option>
+ * <Option>urn:liberty:idpp:can</Option>
+ * <Option>urn:liberty:idpp:can:cn</Option>
+ * </Options>
+ * <Abstract>
* This is a personal profile containing common name information.
- * </Abstract>
- * </ResourceOffering>
+ * </Abstract>
+ * </ResourceOffering>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/ServiceInstance.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/ServiceInstance.java
index be4c74ed1b..0e05ab676f 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/ServiceInstance.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/ServiceInstance.java
@@ -24,6 +24,7 @@
*
* $Id: ServiceInstance.java,v 1.2 2008/06/25 05:47:11 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -44,20 +45,19 @@
* distinct protocol endpoint.
* The following schema fragment specifies the expected content
* within the ServiceInstance object.
- *
*
- * <xs:element name="ServiceInstance" type="ServiceInstanceType"/>
- * <complexType name="ServiceInstanceType">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element ref="{urn:liberty:disco:2003-08}ServiceType"/>
- * <element name="ProviderID" type="{urn:liberty:metadata:2003-08}entityIDType"/>
- * <element name="Description" type="{urn:liberty:disco:2003-08}DescriptionType" maxOccurs="unbounded"/>
- * </sequence>
- * </restriction>
- * </complexContent>
- * </complexType>
+ * <xs:element name="ServiceInstance" type="ServiceInstanceType"/>
+ * <complexType name="ServiceInstanceType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{urn:liberty:disco:2003-08}ServiceType"/>
+ * <element name="ProviderID" type="{urn:liberty:metadata:2003-08}entityIDType"/>
+ * <element name="Description" type="{urn:liberty:disco:2003-08}DescriptionType" maxOccurs="unbounded"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/common/DiscoUtils.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/common/DiscoUtils.java
index e263f0cf39..6fd520dff4 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/common/DiscoUtils.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/common/DiscoUtils.java
@@ -86,10 +86,10 @@ private DiscoUtils() {
* @param token token of this soap session.
* @return Map of following key value pairs:
*
- * Key: OFFERINGS
- * Value: List of ResourceOfferings
- * Key: CREDENTIALS
- * Value: List of credentials (Assertions)
+ * Key: <code>OFFERINGS</code>
+ * Value: List of <code>ResourceOffering</code>s
+ * Key: <code>CREDENTIALS</code>
+ * Value: List of credentials (<code>Assertion</code>s)
*
*/
public static Map checkPolicyAndHandleDirectives(
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/plugins/IDFFNameIdentifierMapper.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/plugins/IDFFNameIdentifierMapper.java
index 8d33832ad7..d306f1432a 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/plugins/IDFFNameIdentifierMapper.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/plugins/IDFFNameIdentifierMapper.java
@@ -24,6 +24,7 @@
*
* $Id: IDFFNameIdentifierMapper.java,v 1.3 2008/06/25 05:47:12 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -47,7 +48,6 @@
/**
* The class IDFFNameIdentifierMapper is an implementation
* of NameIdentifierMapper for Liberty ID-FF providers.
- *
*
*/
public class IDFFNameIdentifierMapper implements NameIdentifierMapper {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/plugins/NameIdentifierMapper.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/plugins/NameIdentifierMapper.java
index e92c64e397..edd76b9773 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/plugins/NameIdentifierMapper.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/disco/plugins/NameIdentifierMapper.java
@@ -24,6 +24,7 @@
*
* $Id: NameIdentifierMapper.java,v 1.2 2008/06/25 05:47:12 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -37,7 +38,6 @@
* The class NameIdentifierMapper is an interface that is
* used to map user's NameIdentifier from one provider
* to another.
- *
*
*
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTClient.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTClient.java
index dc0851874b..920d6c212c 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTClient.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTClient.java
@@ -24,7 +24,7 @@
*
* $Id: DSTClient.java,v 1.5 2008/12/16 01:48:32 exu Exp $
*
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.liberty.ws.dst;
@@ -288,7 +288,7 @@ public DSTClient(ResourceOffering resourceOffering,
/**
* Parses the given discovery resource offering for the Data service.
* @param offering ResourceOffering
- * @exception DSTException.
+ * @exception DSTException .
*/
private void parseResourceOffering(ResourceOffering offering)
throws DSTException {
@@ -452,7 +452,7 @@ private void parseResourceOffering(ResourceOffering offering)
/**
* Generates X509 security token for the WSC.
* @param credential Credential of WSC
- * @exception DSTException
+ * @exception DSTException if a data service error occurs
*/
private void generateBinarySecurityToken(Object credential)
throws DSTException {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTData.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTData.java
index 138db7521d..87f0e562c0 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTData.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTData.java
@@ -24,6 +24,7 @@
*
* $Id: DSTData.java,v 1.2 2008/06/25 05:47:13 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -43,18 +44,18 @@
* The following schema fragment specifies the expected content within
* the DSTData object.
*
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <any/>
- * </sequence>
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <any/>
+ * </sequence>
* <attribute name="itemIDRef"
- * type="{urn:liberty:idpp:2003-08}IDReferenceType" />
- * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
- * </restriction>
- * </complexContent>
- * </complexType>
+ * type="{urn:liberty:idpp:2003-08}IDReferenceType" />
+ * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*
*
@@ -84,7 +85,7 @@ public DSTData (java.util.List data, String serviceNS) {
* Constructor
*
* @param element DOM Element
- * @throws DSTException
+ * @throws DSTException if a data service error occurs
*/
public DSTData(org.w3c.dom.Element element) throws DSTException{
if(element == null) {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTModification.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTModification.java
index 0b5d12cb29..2ce2c1ae44 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTModification.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTModification.java
@@ -24,6 +24,7 @@
*
* $Id: DSTModification.java,v 1.2 2008/06/25 05:47:13 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -47,33 +48,32 @@
*
* The following schema fragment specifies the expected content within
* the DSTModification object.
- *
*
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
* <element name="Select"
- * type="{urn:liberty:idpp:2003-08}SelectType"/>
- * <element name="NewData" minOccurs="0">
- * <complexType>
- * <complexContent>
+ * type="{urn:liberty:idpp:2003-08}SelectType"/>
+ * <element name="NewData" minOccurs="0">
+ * <complexType>
+ * <complexContent>
* <restriction base="{http://www.w3.org/2001/XMLSchema}
- * anyType">
- * <sequence>
- * <any/>
- * </sequence>
- * </restriction>
- * </complexContent>
- * </complexType>
- * </element>
- * </sequence>
+ * anyType">
+ * <sequence>
+ * <any/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </element>
+ * </sequence>
* <attribute name="overrideAllowed"
- * type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
- * </restriction>
- * </complexContent>
- * </complexType>
+ * type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*
*
@@ -112,7 +112,7 @@ public DSTModification(String select,
* Constructor
*
* @param element DOM Element.
- * @throws DSTException
+ * @throws DSTException if a data service error occurs
*/
public DSTModification(org.w3c.dom.Element element) throws DSTException{
if(element == null) {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTModify.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTModify.java
index f498e64fb0..521f5f9d65 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTModify.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTModify.java
@@ -24,6 +24,7 @@
*
* $Id: DSTModify.java,v 1.2 2008/06/25 05:47:13 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -46,48 +47,48 @@
* the DSTModify object.
*
*
- * <complexType name="ModifyType">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <group ref="{urn:liberty:idpp:2003-08}ResourceIDGroup"/>
- * <element name="Modification" maxOccurs="unbounded">
- * <complexType>
- * <complexContent>
+ * <complexType name="ModifyType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <group ref="{urn:liberty:idpp:2003-08}ResourceIDGroup"/>
+ * <element name="Modification" maxOccurs="unbounded">
+ * <complexType>
+ * <complexContent>
* <restriction base="{http://www.w3.org/2001/XMLSchema}
- * anyType">
- * <sequence>
+ * anyType">
+ * <sequence>
* <element name="Select"
- * type="{urn:liberty:idpp:2003-08}SelectType"/>
- * <element name="NewData" minOccurs="0">
- * <complexType>
- * <complexContent>
+ * type="{urn:liberty:idpp:2003-08}SelectType"/>
+ * <element name="NewData" minOccurs="0">
+ * <complexType>
+ * <complexContent>
* <restriction
- * base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <any/>
- * </sequence>
- * </restriction>
- * </complexContent>
- * </complexType>
- * </element>
- * </sequence>
+ * base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <any/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </element>
+ * </sequence>
* <attribute name="overrideAllowed"
- * type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ * type="{http://www.w3.org/2001/XMLSchema}boolean" />
* <attribute name="id"
- * type="{http://www.w3.org/2001/XMLSchema}ID" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </element>
+ * type="{http://www.w3.org/2001/XMLSchema}ID" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </element>
* <element ref="{urn:liberty:idpp:2003-08}Extension"
- * maxOccurs="unbounded" minOccurs="0"/>
- * </sequence>
- * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
- * <attribute name="itemID" type="{urn:liberty:idpp:2003-08}IDType" />
- * </restriction>
- * </complexContent>
- * </complexType>
+ * maxOccurs="unbounded" minOccurs="0"/>
+ * </sequence>
+ * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
+ * <attribute name="itemID" type="{urn:liberty:idpp:2003-08}IDType" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*
*
@@ -158,7 +159,7 @@ public DSTModify(
/**
* Constructor
* @param element DOM Element.
- * @exception DSTException
+ * @exception DSTException if a data service error occurs
*/
public DSTModify(org.w3c.dom.Element element) throws DSTException{
if(element == null) {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTModifyResponse.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTModifyResponse.java
index 49a5fbed2d..a548bf90e0 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTModifyResponse.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTModifyResponse.java
@@ -24,6 +24,7 @@
*
* $Id: DSTModifyResponse.java,v 1.2 2008/06/25 05:47:13 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -46,22 +47,22 @@
* The following schema fragment specifies the expected content within the
* DSTModifyResponse object.
*
- * <complexType name="ResponseType">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element ref="{urn:liberty:idpp:2003-08}Status"/>
+ * <complexType name="ResponseType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{urn:liberty:idpp:2003-08}Status"/>
* <element ref="{urn:liberty:idpp:2003-08}Extension"
- * maxOccurs="unbounded" minOccurs="0"/>
- * </sequence>
+ * maxOccurs="unbounded" minOccurs="0"/>
+ * </sequence>
* <attribute name="timeStamp"
- * type="{http://www.w3.org/2001/XMLSchema}dateTime" />
+ * type="{http://www.w3.org/2001/XMLSchema}dateTime" />
* <attribute name="itemIDRef"
- * type="{urn:liberty:idpp:2003-08}IDReferenceType" />
- * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
- * </restriction>
- * </complexContent>
- * </complexType>
+ * type="{urn:liberty:idpp:2003-08}IDReferenceType" />
+ * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*
*
@@ -84,7 +85,7 @@ public DSTModifyResponse () {}
/**
* Constructor
* @param element DOM Element.
- * @throws DSTException
+ * @throws DSTException if a data service error occurs
*/
public DSTModifyResponse(org.w3c.dom.Element element) throws DSTException{
if(element == null) {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTQuery.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTQuery.java
index 0e4ff665cf..b2aea844c9 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTQuery.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTQuery.java
@@ -24,6 +24,7 @@
*
* $Id: DSTQuery.java,v 1.3 2008/06/25 05:47:13 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -42,42 +43,41 @@
* The DSTQuery class represents a DST query request.
* The following schema fragment specifies the expected content within the
* DSTQuery object.
- *
*
- * <complexType name="QueryType">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <group ref="{urn:liberty:idpp:2003-08}ResourceIDGroup"/>
- * <element name="QueryItem" maxOccurs="unbounded">
- * <complexType>
- * <complexContent>
+ * <complexType name="QueryType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <group ref="{urn:liberty:idpp:2003-08}ResourceIDGroup"/>
+ * <element name="QueryItem" maxOccurs="unbounded">
+ * <complexType>
+ * <complexContent>
* <restriction base="{http://www.w3.org/2001/XMLSchema}
- * anyType">
- * <sequence>
+ * anyType">
+ * <sequence>
* <element name="Select"
- * type="{urn:liberty:idpp:2003-08}SelectType"/>
- * </sequence>
+ * type="{urn:liberty:idpp:2003-08}SelectType"/>
+ * </sequence>
* <attribute name="id"
- * type="{http://www.w3.org/2001/XMLSchema}ID" />
+ * type="{http://www.w3.org/2001/XMLSchema}ID" />
* <attribute name="changedSince"
- * type="{http://www.w3.org/2001/XMLSchema}dateTime" />
+ * type="{http://www.w3.org/2001/XMLSchema}dateTime" />
* <attribute name="itemID"
- * type="{urn:liberty:idpp:2003-08}IDType" />
+ * type="{urn:liberty:idpp:2003-08}IDType" />
* <attribute name="includeCommonAttributes"
- * type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </element>
+ * type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </element>
* <element ref="{urn:liberty:idpp:2003-08}Extension"
- * maxOccurs="unbounded" minOccurs="0"/>
- * </sequence>
- * <attribute name="itemID" type="{urn:liberty:idpp:2003-08}IDType" />
- * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
- * </restriction>
- * </complexContent>
- * </complexType>
+ * maxOccurs="unbounded" minOccurs="0"/>
+ * </sequence>
+ * <attribute name="itemID" type="{urn:liberty:idpp:2003-08}IDType" />
+ * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*
*
@@ -144,7 +144,7 @@ public DSTQuery(com.sun.identity.liberty.ws.disco.EncryptedResourceID
* Constructor
*
* @param element DOM Element.
- * @throws DSTException
+ * @throws DSTException if a data service error occurs
*/
public DSTQuery(org.w3c.dom.Element element) throws DSTException{
if(element == null) {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTQueryItem.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTQueryItem.java
index 0acbda9c29..1cfcf7e4b2 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTQueryItem.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTQueryItem.java
@@ -24,6 +24,7 @@
*
* $Id: DSTQueryItem.java,v 1.2 2008/06/25 05:47:13 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.liberty.ws.dst;
@@ -42,26 +43,26 @@
* The following schema fragment specifies the expected content within the
* DSTQueryItem object.
*
- * <element name="QueryItem" maxOccurs="unbounded">
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
+ * <element name="QueryItem" maxOccurs="unbounded">
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
* <element name="Select"
- * type="{urn:liberty:id-sis-pp:2003-08}SelectType"/>
- * </sequence>
+ * type="{urn:liberty:id-sis-pp:2003-08}SelectType"/>
+ * </sequence>
* <attribute name="itemID"
- * type="{urn:liberty:id-sis-pp:2003-08}IDType" />
+ * type="{urn:liberty:id-sis-pp:2003-08}IDType" />
* <attribute name="changedSince"
- * type="{http://www.w3.org/2001/XMLSchema}dateTime" />
+ * type="{http://www.w3.org/2001/XMLSchema}dateTime" />
* <attribute name="includeCommonAttributes"
- * type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ * type="{http://www.w3.org/2001/XMLSchema}boolean" />
* <attribute name="id"
- * type="{http://www.w3.org/2001/XMLSchema}ID" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </element>
+ * type="{http://www.w3.org/2001/XMLSchema}ID" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </element>
*
*
*
@@ -109,7 +110,7 @@ public DSTQueryItem (String select,
/**
* Constructor
* @param element DOM Element
- * @throws DSTException
+ * @throws DSTException if a data service error occurs
*/
public DSTQueryItem(org.w3c.dom.Element element) throws DSTException{
if(element == null) {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTQueryResponse.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTQueryResponse.java
index 72d703df47..60742e1224 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTQueryResponse.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/DSTQueryResponse.java
@@ -24,6 +24,7 @@
*
* $Id: DSTQueryResponse.java,v 1.2 2008/06/25 05:47:13 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -46,38 +47,38 @@
* The following schema fragment specifies the expected content within
* the DSTQueryResponse object.
*
- * <complexType name="QueryResponse">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element ref="{urn:liberty:idpp:2003-08}Status"/>
- * <element name="Data" maxOccurs="unbounded" minOccurs="0">
- * <complexType>
- * <complexContent>
+ * <complexType name="QueryResponse">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{urn:liberty:idpp:2003-08}Status"/>
+ * <element name="Data" maxOccurs="unbounded" minOccurs="0">
+ * <complexType>
+ * <complexContent>
* <restriction
- * base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <any/>
- * </sequence>
+ * base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <any/>
+ * </sequence>
* <attribute name="itemIDRef"
- * type="{urn:liberty:idpp:2003-08}IDReferenceType" />
+ * type="{urn:liberty:idpp:2003-08}IDReferenceType" />
* <attribute name="id"
- * type="{http://www.w3.org/2001/XMLSchema}ID" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </element>
+ * type="{http://www.w3.org/2001/XMLSchema}ID" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </element>
* <element ref="{urn:liberty:idpp:2003-08}Extension"
- * maxOccurs="unbounded" minOccurs="0"/>
- * </sequence>
+ * maxOccurs="unbounded" minOccurs="0"/>
+ * </sequence>
* <attribute name="timeStamp"
- * type="{http://www.w3.org/2001/XMLSchema}dateTime" />
+ * type="{http://www.w3.org/2001/XMLSchema}dateTime" />
* <attribute name="itemIDRef"
- * type="{urn:liberty:idpp:2003-08}IDReferenceType" />
- * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
- * </restriction>
- * </complexContent>
- * </complexType>
+ * type="{urn:liberty:idpp:2003-08}IDReferenceType" />
+ * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*
*
@@ -114,7 +115,7 @@ public DSTQueryResponse(java.util.List data, String serviceNS) {
* Constructor
*
* @param element DOM Element
- * @throws DSTException
+ * @throws DSTException if a data service error occurs
*/
public DSTQueryResponse(org.w3c.dom.Element element) throws DSTException {
if(element == null) {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/service/DSTRequestHandler.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/service/DSTRequestHandler.java
index 18f09c90a6..e0bd745dd3 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/service/DSTRequestHandler.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/dst/service/DSTRequestHandler.java
@@ -24,6 +24,7 @@
*
* $Id: DSTRequestHandler.java,v 1.3 2008/06/25 05:47:14 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.liberty.ws.dst.service;
@@ -135,7 +136,7 @@ private List processSOAPBodies(List requestBodies,
* Generates the binary security token if the security profile is X509.
* @param msg Request Message.
* @return BinarySecurityToken.
- * @exception DSTException.
+ * @exception DSTException .
*/
private BinarySecurityToken generateBinarySecurityToken(Message msg)
throws DSTException {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/PPInteractionHelper.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/PPInteractionHelper.java
index 096796b6a8..8315c5bf16 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/PPInteractionHelper.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/PPInteractionHelper.java
@@ -24,6 +24,7 @@
*
* $Id: PPInteractionHelper.java,v 1.2 2008/06/25 05:47:14 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -45,8 +46,8 @@
* Personal Profile Service for creating questions for Interaction for value
* and interaction for consent.
* The question key will always be of the following form in a properties file.
- * Question: _Value_Question for interact for value
- * Question: _Consent_Question for interfact for consent
+ * Question: {@code _Value_Question} for interact for value
+ * Question: {@code _Consent_Question} for interfact for consent
* For e.g. CN_Value_Question or CN_Consent_Question.
* There will be a default question key for Consent if there's not one for the
* rquested attribute., but it's not true for interact for the value.
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/PPRequestHandler.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/PPRequestHandler.java
index e4ed2d0e4f..1b5c342e98 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/PPRequestHandler.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/PPRequestHandler.java
@@ -24,6 +24,7 @@
*
* $Id: PPRequestHandler.java,v 1.2 2008/06/25 05:47:14 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -104,8 +105,7 @@ public PPRequestHandler() {
* @param requestMsg Request Message.
* @param responseMsg Response Message.
* @return Object processed response object.
- * @exception SOAPFaultException for the interaction redirects
- * @exception Exception for any failure.
+ * @exception SOAPFaultException for the interaction redirects
*/
public Object processDSTRequest(
Object request,
@@ -366,7 +366,7 @@ public Object processDSTRequest(
* Get the data from the queried results
* @param queryResults map of DSTQueryItems and the corresponding results.
* @return List queried data.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
private List getData(Map queryResults) throws IDPPException {
@@ -665,7 +665,7 @@ private Map getPolicyEnvMap(String resourceID, Message requestMsg) {
* Gets the query response and set the status to OK.
* @param query JAXB query object.
* @return QueryResponseElement JAXB query response.
- * @exception IDPPException
+ * @exception IDPPException if an error occurs
*/
public QueryResponseElement getQueryResponse(QueryElement query)
throws IDPPException {
@@ -694,7 +694,7 @@ public QueryResponseElement getQueryResponse(QueryElement query)
* Gets the modify response and set the status to OK.
* @param modify JAXB modify object.
* @return ModifyResponseElement JAXB modify response.
- * @exception IDPPException
+ * @exception IDPPException if an error occurs
*/
public ModifyResponseElement getModifyResponse(ModifyElement modify)
throws IDPPException {
@@ -809,7 +809,7 @@ private void initInteraction(boolean isQuery, Map interactResourceMap,
* @param resource resource that needs an interaction
* @param msg Message.
* @return Confirm Interaction JAXB Confirm Element
- * @exception IDPPException
+ * @exception IDPPException if an error occurs
*/
private Confirm getInteractConfirmElement(
boolean isQuery, String resource, Message msg)
@@ -853,7 +853,7 @@ private Confirm getInteractConfirmElement(
* @param resource resource that needs an interaction
* @param msg Message.
* @return List list of Interaction JAXB TextElements.
- * @exception IDPPException
+ * @exception IDPPException if an error occurs
*/
private List getInteractTextElements(
@@ -1056,7 +1056,7 @@ private String getLanguage(Message requestMsg) {
/**
* Gets the service instance update header.
*
- * @exception SOAPFaultException.
+ * @exception SOAPFaultException .
*/
private ServiceInstanceUpdateHeader getServiceInstanceUpdateHeader()
throws SOAPFaultException {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/PersonalProfile.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/PersonalProfile.java
index ac77564875..6ff0a88032 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/PersonalProfile.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/PersonalProfile.java
@@ -106,7 +106,7 @@ public PersonalProfile() {
* it's value.
* @return Map map of processed query items and the correspoding list
* of results.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
public Map queryData(Object credential,
String resourceID,
@@ -416,7 +416,7 @@ private IDPPContainer getIDPPContainer(
* @param String userDN.
* @param List list of DSTQueryItems.
* @return Map of user attribute value pairs.
- * @throws IDPPException.
+ * @throws IDPPException .
*/
private Map getUserData(String userDN, List dstQueryItems)
throws IDPPException {
@@ -490,7 +490,7 @@ private Map getUserData(String userDN, List dstQueryItems)
* it's value.
* @param request a Document object
* @return true if successful in modifying the data.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
public boolean modifyData(Object credential,
String resourceID,
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPAddressCard.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPAddressCard.java
index 22517105fc..b1c2544ae7 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPAddressCard.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPAddressCard.java
@@ -24,6 +24,7 @@
*
* $Id: IDPPAddressCard.java,v 1.2 2008/06/25 05:47:15 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.liberty.ws.idpp.container;
@@ -64,7 +65,7 @@ public IDPPAddressCard() {
* Gets the container object i.e. LegalIdentity JAXB Object
* @param userMap user map
* @return LegalIdentityElement JAXB Object.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
public Object getContainerObject(Map userMap) throws IDPPException {
@@ -229,7 +230,7 @@ public Set getContainerAttributesForSelect(String select) {
* @param select select expression
* @param data list of new data objects.
* @return Attribute key value pair for the given select.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
public Map getDataMapForSelect(String select, List data)
throws IDPPException {
@@ -269,7 +270,7 @@ public Map getDataMapForSelect(String select, List data)
* @param expContext Given select expression context.
* @param dataElement DataElement.
* @return Map Modifiable attribute value pair.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
private Map getDataMap(String expContext, Object dataElement)
throws IDPPException {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPBaseContainer.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPBaseContainer.java
index 1152d54029..9aa80ce767 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPBaseContainer.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPBaseContainer.java
@@ -25,6 +25,7 @@
* $Id: IDPPBaseContainer.java,v 1.2 2008/06/25 05:47:15 qcheng Exp $
*
* Portions Copyrighted 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.liberty.ws.idpp.container;
@@ -309,7 +310,7 @@ protected DSTInteger getDSTInteger(String value) {
* Gets AnalyzedName JAXB Object.
* @param userMap user map
* @return AnalyzedNameType JAXB Object.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
protected AnalyzedNameType getAnalyzedName(Map userMap)
throws IDPPException {
@@ -366,7 +367,7 @@ userMap, getAttributeMapper().getDSAttribute(
* This method is an implementation of IDPPContainer.
* @param userMap user map
* @return Document XML document representation of container.
- * @exception IDPPException
+ * @exception IDPPException if an error occurs
*/
public Document toXMLDocument(Map userMap)
throws IDPPException {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPCommonName.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPCommonName.java
index d48fdffb7f..7ef6ff87c6 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPCommonName.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPCommonName.java
@@ -24,6 +24,7 @@
*
* $Id: IDPPCommonName.java,v 1.2 2008/06/25 05:47:15 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.liberty.ws.idpp.container;
@@ -61,7 +62,7 @@ public IDPPCommonName() {
* Gets the common name jaxb element
* @param userMap user map
* @return CommonNameElement JAXB Object.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
public Object getContainerObject(Map userMap) throws IDPPException {
@@ -167,7 +168,7 @@ public Set getContainerAttributesForSelect(String select) {
* @param select Select expression.
* @param data list of new data objects.
* @return Attribute key value pair for the given select.
- * @throws IDPPException.
+ * @throws IDPPException .
*/
public Map getDataMapForSelect(String select, List data)
throws IDPPException {
@@ -284,7 +285,7 @@ private Map getCommonNameMap(Object obj, Map map)
* @param dataObject list of data objects
* @param map map to be filled in
* @return Map map to be returned
- * @exception IDPPException
+ * @exception IDPPException if an error occurs
*/
private Map getAltCNMap(List dataObject, Map map) throws IDPPException {
IDPPUtils.debug.message("IDPPCommonName:getAltCNMap:Init");
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPDemographics.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPDemographics.java
index 66b776fd64..659950a98c 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPDemographics.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPDemographics.java
@@ -24,6 +24,7 @@
*
* $Id: IDPPDemographics.java,v 1.2 2008/06/25 05:47:16 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.liberty.ws.idpp.container;
@@ -61,7 +62,7 @@ public IDPPDemographics() {
* Gets the common name jaxb element
* @param userMap user map
* @return CommonNameElement JAXB Object.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
public Object getContainerObject(Map userMap) throws IDPPException {
@@ -172,7 +173,7 @@ public Set getContainerAttributesForSelect(String select) {
* @param select Select expression.
* @param data list of new data objects.
* @return Map Attribute key value pair map for the given select.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
public Map getDataMapForSelect(String select, List data)
throws IDPPException {
@@ -261,7 +262,7 @@ public Map getDataMapForSelect(String select, List data)
* @param obj DemographicsType JAXB object.
* @param map map that sets attribute/value pairs.
* @return Map Attribute value pair map that needs to be modified.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
private Map getDemographicsMap(Object obj, Map map)
throws IDPPException {
@@ -303,7 +304,7 @@ private Map getDemographicsMap(Object obj, Map map)
* @param dataObject list of data objects
* @param map map to be filled in
* @return Map map to be returned
- * @exception IDPPException
+ * @exception IDPPException if an error occurs
*/
private Map getLanguageMap(List dataObject, Map map) throws IDPPException {
IDPPUtils.debug.message("IDPPDemographics:getLanguageMap:Init");
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPEmergencyContact.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPEmergencyContact.java
index 8b0ef8ebdf..0a18b24660 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPEmergencyContact.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPEmergencyContact.java
@@ -24,6 +24,7 @@
*
* $Id: IDPPEmergencyContact.java,v 1.2 2008/06/25 05:47:16 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.liberty.ws.idpp.container;
@@ -59,7 +60,7 @@ public IDPPEmergencyContact() {
* Gets the Emergency Contact Object
* @param userMap user map
* @return EmergencyContactElement JAXB Object.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
public Object getContainerObject(Map userMap) throws IDPPException {
IDPPUtils.debug.message("IDPPEmergencyContact:getContainerObject:Init");
@@ -108,7 +109,7 @@ public Set getContainerAttributesForSelect(String select) {
* @param select Select expression.
* @param data list of new data objects.
* @return Attribute key value pair for the given select.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
public Map getDataMapForSelect(String select, List data)
throws IDPPException {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPEmploymentIdentity.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPEmploymentIdentity.java
index f9cb926c79..82b267eaf6 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPEmploymentIdentity.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPEmploymentIdentity.java
@@ -24,6 +24,7 @@
*
* $Id: IDPPEmploymentIdentity.java,v 1.2 2008/06/25 05:47:16 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.liberty.ws.idpp.container;
@@ -59,7 +60,7 @@ public IDPPEmploymentIdentity() {
* Gets the employment identity jaxb object
* @param userMap user map
* @return EmploymentIdentityElement JAXB Object.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
public Object getContainerObject(Map userMap) throws IDPPException {
IDPPUtils.debug.message("IDPPEmploymentIdentity:getContainerObj:Init");
@@ -141,7 +142,7 @@ public Set getContainerAttributesForSelect(String select) {
* @param select Select expression.
* @param data list of new data objects.
* @return Attribute key value pair for the given select.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
public Map getDataMapForSelect(String select, List data)
throws IDPPException {
@@ -230,7 +231,7 @@ private Map getEmploymentIdentityMap(Object obj, Map map)
* @param dataObject list of data objects
* @param map map to be filled in
* @return Map map to be returned
- * @exception IDPPException
+ * @exception IDPPException if an error occurs
*/
private Map getAltOMap(List dataObject, Map map) throws IDPPException {
IDPPUtils.debug.message("IDPPEmploymentIdentity:getAltOMap:Init");
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPEncryptKey.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPEncryptKey.java
index d53d7208c2..fb72e10c2b 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPEncryptKey.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPEncryptKey.java
@@ -24,6 +24,7 @@
*
* $Id: IDPPEncryptKey.java,v 1.2 2008/06/25 05:47:16 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.liberty.ws.idpp.container;
@@ -59,7 +60,7 @@ public IDPPEncryptKey() {
* Gets the common name jaxb element
* @param userMap user map
* @return EncryptKeyElement JAXB Object.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
public Object getContainerObject(Map userMap) throws IDPPException {
IDPPUtils.debug.message("IDPPEncryptKey:getContainerObject:Init");
@@ -124,7 +125,7 @@ public Set getContainerAttributesForSelect(String select) {
* @param select Select expression.
* @param data list of new data objects.
* @return Attribute key value pair for the given select.
- * @throws IDPPException.
+ * @throws IDPPException .
*/
public Map getDataMapForSelect(String select, List data)
throws IDPPException {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPExtensionContainer.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPExtensionContainer.java
index 9767a3f74f..df82e28e03 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPExtensionContainer.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPExtensionContainer.java
@@ -24,6 +24,7 @@
*
* $Id: IDPPExtensionContainer.java,v 1.2 2008/06/25 05:47:16 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.liberty.ws.idpp.container;
@@ -64,7 +65,7 @@ public IDPPExtensionContainer() {
* Gets the container extension jaxb object.
* @param userMap user map
* @return ExtensionElement JAXB Object.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
public Object getContainerObject(Map userMap) throws IDPPException {
IDPPUtils.debug.message("IDPPContainers:getContainerObject:Init");
@@ -175,7 +176,7 @@ private String getExtAttributeName(String select) {
* @param select Select expression.
* @param data list of new data objects.
* @return Attribute key value pair for the given select.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
public Map getDataMapForSelect(String select, List data)
throws IDPPException {
@@ -231,7 +232,7 @@ public Map getDataMapForSelect(String select, List data)
* Gets the PP ISExtension element.
* @param attrName Extension attribute name.
* @param attrValue Extension attribute value.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
private PPISExtensionElement getISExtension(
String attrName, String attrValue) throws IDPPException {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPFacade.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPFacade.java
index 3e2c2c3d16..e525df29eb 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPFacade.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPFacade.java
@@ -24,6 +24,7 @@
*
* $Id: IDPPFacade.java,v 1.2 2008/06/25 05:47:16 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.liberty.ws.idpp.container;
@@ -61,7 +62,7 @@ public IDPPFacade() {
* Gets the Facade JAXB Element.
* @param userMap user map
* @return FacadeElement JAXB Object.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
public Object getContainerObject(Map userMap) throws IDPPException {
@@ -162,7 +163,7 @@ public Set getContainerAttributesForSelect(String select) {
* @param select Select Expression.
* @param data list of new data objects.
* @return Map Key/value data map.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
public Map getDataMapForSelect(String select, List data)
throws IDPPException {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPInformalName.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPInformalName.java
index cd7dcbf069..5ce698704c 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPInformalName.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPInformalName.java
@@ -24,6 +24,7 @@
*
* $Id: IDPPInformalName.java,v 1.2 2008/06/25 05:47:16 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.liberty.ws.idpp.container;
@@ -57,7 +58,7 @@ public IDPPInformalName() {
* Gets the Informal Name JAXB Object
* @param userMap user map
* @return InformalNameElement JAXB Object.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
public Object getContainerObject(Map userMap) throws IDPPException {
IDPPUtils.debug.message("IDPPInformalName:getInformalName:Init");
@@ -107,7 +108,7 @@ public Set getContainerAttributesForSelect(String select) {
* @param select Select Excepression.
* @param data list of new data objects.
* @return Attribute key value pair for the given select.
- * @throws IDPPException.
+ * @throws IDPPException .
*/
public Map getDataMapForSelect(String select, List data)
throws IDPPException {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPLegalIdentity.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPLegalIdentity.java
index 77e30ef545..3f064bed18 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPLegalIdentity.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPLegalIdentity.java
@@ -24,6 +24,7 @@
*
* $Id: IDPPLegalIdentity.java,v 1.2 2008/06/25 05:47:16 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.liberty.ws.idpp.container;
@@ -60,7 +61,7 @@ public IDPPLegalIdentity() {
* Gets the container object i.e. LegalIdentity JAXB Object
* @param userMap user map
* @return LegalIdentityElement JAXB Object.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
public Object getContainerObject(Map userMap) throws IDPPException {
@@ -134,7 +135,7 @@ userMap, getAttributeMapper().getDSAttribute(
* Gets the AltIDType JAXB Object.
* @param userMap user data
* @return AltIDType JAXB Object
- * @exception IDPPException
+ * @exception IDPPException if an error occurs
*/
private AltIDType getAltID(Map userMap) throws IDPPException {
IDPPUtils.debug.message("IDPPLegalIdentity:getAltID:Init");
@@ -175,7 +176,7 @@ userMap, getAttributeMapper().getDSAttribute(
* Gets the VATType JAXB Object.
* @param userMap user data
* @return VATType JAXB Object
- * @exception IDPPException
+ * @exception IDPPException if an error occurs
*/
private VATType getVAT(Map userMap) throws IDPPException {
IDPPUtils.debug.message("IDPPLegalIdentity:getVATType:Init");
@@ -290,7 +291,7 @@ public Set getContainerAttributesForSelect(String select) {
* @param select select expression
* @param data list of new data objects.
* @return Attribute key value pair for the given select.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
public Map getDataMapForSelect(String select, List data)
throws IDPPException {
@@ -490,7 +491,7 @@ private Map getLegalIdentityMap(Object obj, Map map)
* @param dataObject List of altID objects
* @param map map of attrib/val pairs
* @return Map map of attrib/val pairs
- * @exception IDPPException
+ * @exception IDPPException if an error occurs
*/
private Map getAltIDMap(List dataObject, Map map) throws IDPPException {
//Currently, we handle only one AltID.
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPMsgContact.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPMsgContact.java
index a5d7e42c0a..94ad62ad40 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPMsgContact.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPMsgContact.java
@@ -24,6 +24,7 @@
*
* $Id: IDPPMsgContact.java,v 1.3 2008/06/25 05:47:16 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.liberty.ws.idpp.container;
@@ -60,7 +61,7 @@ public IDPPMsgContact() {
* Gets the common name jaxb element
* @param userMap user map
* @return InformalNameElement JAXB Object.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
public Object getContainerObject(Map userMap) throws IDPPException {
IDPPUtils.debug.message("IDPPMsgContact:getContainerObject:Init");
@@ -98,7 +99,7 @@ public Object getContainerObject(Map userMap) throws IDPPException {
* @param entry MsgContact Entry
* @userMap UserData Map.
* @return MsgContactElement.
- * @exception JAXBException.
+ * @exception JAXBException .
*/
private MsgContactElement parseEntry(String entry, Map userMap)
throws JAXBException {
@@ -197,7 +198,7 @@ public Set getContainerAttributesForSelect(String select) {
* @param select Select expression.
* @param data list of new data objects.
* @return Attribute key value pair for the given select.
- * @throws IDPPException.
+ * @throws IDPPException .
*/
public Map getDataMapForSelect(String select, List data)
throws IDPPException {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPSignKey.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPSignKey.java
index 2edc24483f..4b0f4b533c 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPSignKey.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/container/IDPPSignKey.java
@@ -24,6 +24,7 @@
*
* $Id: IDPPSignKey.java,v 1.2 2008/06/25 05:47:16 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.liberty.ws.idpp.container;
@@ -59,7 +60,7 @@ public IDPPSignKey() {
* Gets the common name jaxb element
* @param userMap user map
* @return InformalNameElement JAXB Object.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
public Object getContainerObject(Map userMap) throws IDPPException {
IDPPUtils.debug.message("IDPPSignKey:getContainerObject:Init");
@@ -126,7 +127,7 @@ public Set getContainerAttributesForSelect(String select) {
* @param select Select expression.
* @param data list of new data objects.
* @return Attribute key value pair for the given select.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
public Map getDataMapForSelect(String select, List data)
throws IDPPException {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/plugin/IDPPContainer.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/plugin/IDPPContainer.java
index 634150748d..bed8b501c3 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/plugin/IDPPContainer.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/plugin/IDPPContainer.java
@@ -24,6 +24,7 @@
*
* $Id: IDPPContainer.java,v 1.2 2008/06/25 05:47:17 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.liberty.ws.idpp.plugin;
@@ -49,7 +50,7 @@ public interface IDPPContainer {
* Converts all the supported container values into an XML document.
* @param userMap user data map
* @return Document XML representation of container.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
public Document toXMLDocument(Map userMap) throws IDPPException;
@@ -71,7 +72,7 @@ public interface IDPPContainer {
* @param select select expression.
* @param data list of new data objects.
* @return Map Attribute value pair for the given select and data.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
public Map getDataMapForSelect(String select, List data)
throws IDPPException;
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/plugin/IDPPExtension.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/plugin/IDPPExtension.java
index 98992b2427..22fee0ccb0 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/plugin/IDPPExtension.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/idpp/plugin/IDPPExtension.java
@@ -24,6 +24,7 @@
*
* $Id: IDPPExtension.java,v 1.2 2008/06/25 05:47:17 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -51,7 +52,7 @@ public interface IDPPExtension {
*
* @return list of PPISExtensionElement JAXB
* Objects.
- * @exception IDPPException.
+ * @exception IDPPException .
*/
public List getExtAttributes() throws IDPPException;
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/interaction/InteractionManager.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/interaction/InteractionManager.java
index a12fbaec09..5f62d56ec7 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/interaction/InteractionManager.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/interaction/InteractionManager.java
@@ -25,7 +25,7 @@
* $Id: InteractionManager.java,v 1.5 2008/08/06 17:28:10 exu Exp $
*
* Portions Copyrighted 2016 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.liberty.ws.interaction;
@@ -253,7 +253,7 @@ private InteractionManager() {
* @throws InteractionException for generic interaction error
* @throws InteractionRedirectException if user agent is redirected to
* WSP for resource owner interactions
- * @throws SOAPBindingException for generic SOAP binding errors
+ * @throws SOAPBindingException for generic SOAP binding errors
* @throws SOAPFaultException if the response message has SOAP fault
*
*
@@ -398,7 +398,7 @@ public Message resendRequest(String returnToURL,
* @throws InteractionException for generic interaction error
* @throws InteractionRedirectException if user agent is redirected to
* WSP for resource owner interactions
- * @throws SOAPBindingException for generic SOAP errors
+ * @throws SOAPBindingException for generic SOAP errors
* @throws SOAPFaultException if the response message has SOAP fault
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/interfaces/Authorizer.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/interfaces/Authorizer.java
index cd0ad07feb..e61f2f47c2 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/interfaces/Authorizer.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/interfaces/Authorizer.java
@@ -24,6 +24,7 @@
*
* $Id: Authorizer.java,v 1.2 2008/06/25 05:47:18 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.liberty.ws.interfaces;
@@ -97,7 +98,7 @@ public boolean isAuthorized(Object credential, String action,
* com.sun.identity.liberty.ws.soapbinding.Message.
* @return AuthorizationDecision object contains authorization
* decision information for the given resource.
- * @exception Exception
+ * @exception Exception if an error occurs while making the authorization decision.
*/
public Object getAuthorizationDecision(
Object credential,
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/paos/PAOSRequest.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/paos/PAOSRequest.java
index f2a4f701f8..96da658cb8 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/paos/PAOSRequest.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/paos/PAOSRequest.java
@@ -24,6 +24,7 @@
*
* $Id: PAOSRequest.java,v 1.3 2008/06/25 05:47:20 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -214,7 +215,7 @@ public String toXMLString() throws PAOSException {
* @param declareNS determines whether or not the namespace is declared
* within the Element.
* @return a String representation of this Object.
- * @exception PAOSException ,if it could not create String object.
+ * @exception PAOSException if it could not create String object.
*/
public String toXMLString(boolean includeNSPrefix,boolean declareNS)
throws PAOSException {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/paos/PAOSResponse.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/paos/PAOSResponse.java
index 1f688c24af..483e5590f9 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/paos/PAOSResponse.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/paos/PAOSResponse.java
@@ -24,6 +24,7 @@
*
* $Id: PAOSResponse.java,v 1.3 2008/06/25 05:47:20 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -167,7 +168,7 @@ public String toXMLString() throws PAOSException {
* @param declareNS determines whether or not the namespace is declared
* within the Element.
* @return a String representation of this Object.
- * @exception PAOSException ,if it could not create String object.
+ * @exception PAOSException if it could not create String object.
*/
public String toXMLString(boolean includeNSPrefix,boolean declareNS)
throws PAOSException {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/security/LibSecurityTokenProvider.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/security/LibSecurityTokenProvider.java
index f22f3cf821..06e9e9743e 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/security/LibSecurityTokenProvider.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/security/LibSecurityTokenProvider.java
@@ -220,7 +220,7 @@ public void setCertificate(X509Certificate cert)
/**
* Gets X509 certificate from key store based on the certAlias
*
- * @return the X509Certificate in the keystore.
+ * @return the X509Certificate in the keystore.
* @throws SecurityTokenException if there is an error retrieving
* the certificate.
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/security/SecurityAssertion.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/security/SecurityAssertion.java
index b037426725..e5fd3488c7 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/security/SecurityAssertion.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/security/SecurityAssertion.java
@@ -24,6 +24,7 @@
*
* $Id: SecurityAssertion.java,v 1.3 2009/10/01 18:42:07 mallas Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.liberty.ws.security;
@@ -299,8 +300,6 @@ public Subject getBearerSubject() {
* @return A string containing the valid XML for this element.
* By default name space name is prepended to the element name
* example <saml:Assertion>.
- *
- * @return the String representation of this element.
*/
public java.lang.String toString() {
// call toString() with includeNS true by default and declareNS false
@@ -312,7 +311,7 @@ public java.lang.String toString() {
* element.
*
* @param includeNS if true prepends all elements by their Namespace
- * name example <saml:Assertion>
+ * name example <saml:Assertion>
* @param declareNS if true includes the namespace within the generated
* XML.
* @return A string containing the valid XML for this element.
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/security/SecurityTokenManagerImpl.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/security/SecurityTokenManagerImpl.java
index d43861f29c..b304041a84 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/security/SecurityTokenManagerImpl.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/security/SecurityTokenManagerImpl.java
@@ -24,6 +24,7 @@
*
* $Id: SecurityTokenManagerImpl.java,v 1.3 2008/06/25 05:47:21 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -139,7 +140,7 @@ public String getSAMLAuthenticationToken(String senderIdentity)
* Assertion (for AuthorizeRequester directive). If
* false, a SessionContextStatement will be included i
* the Assertion (for AuthenticationSessionContext
- * directive). In the case when both AuthorizeRequesterAuthorizeRequester
* and AuthenticationSessionContext directive need to be
* handled, use "true" as parameter here since the
* SessionContext will always be included in the
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/security/SecurityTokenProvider.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/security/SecurityTokenProvider.java
index 8d7faba905..982581e6f6 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/security/SecurityTokenProvider.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/security/SecurityTokenProvider.java
@@ -24,6 +24,7 @@
*
* $Id: SecurityTokenProvider.java,v 1.3 2008/06/25 05:47:21 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -104,7 +105,7 @@ public BinarySecurityToken getX509CertificateToken()
* @return Assertion which contains an AuthenticationStatement.
* @throws SecurityTokenException if the assertion could not be
* obtained.
- * @throws SAMLException
+ * @throws SAMLException if a SAML error occurs
*/
public SecurityAssertion getSAMLAuthenticationToken(
NameIdentifier senderIdentity)
@@ -118,7 +119,7 @@ public SecurityAssertion getSAMLAuthenticationToken(
* @param senderIdentity name identifier of the sender.
* @param invocatorSession SessionContext of the invocation
* identity, it is normally obtained by the credential reference in
- * the SAML AttributeDesignator for discovery resource
+ * the SAML AttributeDesignator for discovery resource
* offering which is part of the liberty ID-FF
* AuthenResponse.
* @param resourceID id for the resource to be accessed.
@@ -140,7 +141,7 @@ public SecurityAssertion getSAMLAuthenticationToken(
* @param recipientProviderID recipient's provider ID.
* @return SecurityAssertion object.
* @throws SecurityTokenException if the assertion could not be obtained
- * @throws SAMLException
+ * @throws SAMLException if a SAML error occurs
*/
public SecurityAssertion getSAMLAuthorizationToken(
NameIdentifier senderIdentity,
@@ -172,7 +173,7 @@ public SecurityAssertion getSAMLAuthorizationToken(
* Assertion (for AuthorizeRequester directive). If
* false, a SessionContextStatement will be included i
* the Assertion (for AuthenticationSessionContext
- * directive). In the case when both AuthorizeRequesterAuthorizeRequester
* and AuthenticationSessionContext directive need to be
* handled, use "true" as parameter here since the
* SessionContext will always be included in the
@@ -252,7 +253,7 @@ public SecurityAssertion getSAMLBearerToken(
* false, a SessionContextStatement will be included
* in the Assertion (for AuthenticationSessionContext
* directive). In the case when both AuthorizeRequester
- * and AuthenticationSessionContext/code> directive need to be
+ * and AuthenticationSessionContext directive need to be
* handled, use "true" as parameter here since the
* SessionContext will always be included in the
* ResourceAccessStatement.
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/security/SessionSubject.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/security/SessionSubject.java
index 91f45ef4e6..064638392d 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/security/SessionSubject.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/security/SessionSubject.java
@@ -24,6 +24,7 @@
*
* $Id: SessionSubject.java,v 1.2 2008/06/25 05:47:22 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -52,7 +53,7 @@
public class SessionSubject extends FSSubject {
/**
- * Constructs a SessionSubject object from a
+ * Constructs a SessionSubject object from a
* NameIdentifier object, SubjectConfirmation and
* IDPProvidedNameIdentifier object.
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/soapbinding/ConsentHeader.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/soapbinding/ConsentHeader.java
index 50a5ed4ada..cc61de9e34 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/soapbinding/ConsentHeader.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/soapbinding/ConsentHeader.java
@@ -24,6 +24,7 @@
*
* $Id: ConsentHeader.java,v 1.2 2008/06/25 05:47:22 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -134,8 +135,8 @@ public String getId() {
}
/**
- * Returns value of mustUnderstand attribute.
- * @return value of mustUnderstand attribute
+ * Returns value of mustUnderstand attribute.
+ * @return value of mustUnderstand attribute
*/
public Boolean getMustUnderstand() {
return mustUnderstand;
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/soapbinding/SOAPReceiver.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/soapbinding/SOAPReceiver.java
index 39427ee6a9..6467df8008 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/soapbinding/SOAPReceiver.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/soapbinding/SOAPReceiver.java
@@ -24,6 +24,7 @@
*
* $Id: SOAPReceiver.java,v 1.3 2008/06/25 05:47:23 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
/*
@@ -74,7 +75,7 @@
* binding SM schema and store in a static HashMap. Each
* RequestHandler is associated with a unique key. When a web
* service client uses Client to send request, the SOAP URL must
- * be in the format of 'this_servlet_URL>/key'. The SOAPReceiver
+ * be in the format of {@code 'this_servlet_URL>/key'}. The SOAPReceiver
* will parse the SOAP URL to get the key and use it to find corresponding
* RequestHandler. After it is done processing, it will invoke
* RequestHandler.processRequest to let web service to do further
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/util/ProviderUtil.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/util/ProviderUtil.java
index 846fbd1cb2..4ac5dc896a 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/util/ProviderUtil.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/liberty/ws/util/ProviderUtil.java
@@ -24,6 +24,7 @@
*
* $Id: ProviderUtil.java,v 1.4 2008/08/06 17:28:12 exu Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.liberty.ws.util;
@@ -58,7 +59,7 @@ public class ProviderUtil {
* class name is specified with property
* "com.sun.identity.liberty.ws.uti.providerManagerClass"
* in FederationConfig.
- * @return ProviderManagerProviderManager.
*/
public static ProviderManager getProviderManager() {
return providerManager;
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/multiprotocol/MultiProtocolUtils.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/multiprotocol/MultiProtocolUtils.java
index b1121fa520..7073b41ae3 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/multiprotocol/MultiProtocolUtils.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/multiprotocol/MultiProtocolUtils.java
@@ -24,7 +24,7 @@
*
* $Id: MultiProtocolUtils.java,v 1.4 2009/03/20 21:06:32 weisun2 Exp $
*
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.multiprotocol;
@@ -343,7 +343,7 @@ public static void invalidateSession(Object session,
* LOGOUT_NO_ACTION_STATUS - single loglout not
* performed.
* @return single logout status in string form. Possible values:
- * IFSConstants.LOGOUT_SUCCESS,
+ * IFSConstants.LOGOUT_SUCCESS,
* IFSConstants.LOGOUT_FAILURE
*/
public static String getLogoutStatus(int status) {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/plugin/datastore/DataStoreProvider.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/plugin/datastore/DataStoreProvider.java
index 030e565494..a0a2a49f5b 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/plugin/datastore/DataStoreProvider.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/plugin/datastore/DataStoreProvider.java
@@ -24,6 +24,7 @@
*
* $Id: DataStoreProvider.java,v 1.2 2008/06/25 05:47:27 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
/**
@@ -37,7 +38,7 @@
/**
- * Interface used for storing & retrieving information. Also used to search
+ * Interface used for storing & retrieving information. Also used to search
* user.
*
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/plugin/monitoring/MonitorManager.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/plugin/monitoring/MonitorManager.java
index 231bad9433..d02b46980f 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/plugin/monitoring/MonitorManager.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/plugin/monitoring/MonitorManager.java
@@ -24,6 +24,7 @@
*
* $Id: MonitorManager.java,v 1.1 2009/06/19 02:48:04 bigfatrat Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.plugin.monitoring;
@@ -68,7 +69,6 @@ public final class MonitorManager {
* Returns an instance of the FedMonAgent object.
*
* @return instance of Logger object.
- * @exception LogException if there is an error.
*/
public static FedMonAgent getAgent() {
if (agentProvider != null) {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/plugin/session/SessionProvider.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/plugin/session/SessionProvider.java
index 49ccb15679..41ee77123b 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/plugin/session/SessionProvider.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/plugin/session/SessionProvider.java
@@ -25,7 +25,7 @@
* $Id: SessionProvider.java,v 1.7 2008/06/25 05:47:28 qcheng Exp $
*
* Portions Copyrighted 2014-2016 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.plugin.session;
@@ -278,7 +278,7 @@ public void addListener(Object session, SessionListener listener)
* Returns the time left for this session in seconds.
* @param session Session object.
* @return The time left for this session.
- * @exception A SessionException is thrown if the session reached its maximum
+ * @exception SessionException if the session reached its maximum
* session time, or the session was destroyed, or there was an error during
* communication with session service.
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/sae/api/SecureAttrs.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/sae/api/SecureAttrs.java
index 8e39ea58ea..25509f5f60 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/sae/api/SecureAttrs.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/sae/api/SecureAttrs.java
@@ -25,6 +25,7 @@
* $Id: SecureAttrs.java,v 1.12 2009/03/31 17:18:10 exu Exp $
*
* Portions Copyrighted 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.sae.api;
@@ -47,7 +48,7 @@
* Exchange" (SAE) feature. The class uses off the shelf digital
* signing and encryption algorithms to generate tamperproof/nonrepudiable
* strings representing attribute maps and to verify these strings.
- * Typical SAE usage is to securely send attributes (authentication &
+ * Typical SAE usage is to securely send attributes (authentication &
* use profile data) from an asserting application (eg running on an IDP) to
* a relying application (eg running on an SP). In this scenario the
* asserting party uses the "signing" interfaces to generate secure
@@ -293,7 +294,7 @@ public class SecureAttrs
/**
* Returns an instance to perform crypto operations.
- * @param name
+ * @param name the name of the SecureAttrs instance to return
* @return SecureAttrs instance.
*
*/
@@ -307,7 +308,7 @@ public static synchronized SecureAttrs getInstance(String name)
* Use SecureAttrs.getIstance(name) to obtain the instance.
* @param name Name of the SecureAttrs instance.
* @param type Cryptographic key type. Possible values are
- * SecureAttrs.SAE_CRYPTO_TYPE_SYM, and
+ * SecureAttrs.SAE_CRYPTO_TYPE_SYM, and
* SecureAttrs.SAE_CRYPTO_TYPE_ASYM
* @param properties : please see SAE_CONFIG_* constants for configurable
* values.
@@ -572,12 +573,12 @@ public Map getRawAttributesFromEncodedData(String str, String encSecret)
/**
* This interface allows to set the private to be used for signing
- * as an alternative to passing down SAE_CONFIG_PRIVATE_KEY_ALIAS
+ * as an alternative to passing down SAE_CONFIG_PRIVATE_KEY_ALIAS
* via init. Use this interface if you do not want
* SecureAttr to obtain the signing key from a configured keystore.
* To use this key during signing, specify secret as null.
- * @param privatekey
- *
+ * @param privatekey the private key to be used for signing
+ *
*/
public void setPrivateKey(PrivateKey privatekey)
{
@@ -588,7 +589,7 @@ public void setPrivateKey(PrivateKey privatekey)
* This interface allows to register a public key to be used for signature
* verification. Use this interface if you do not want SecureAttrs to
* obtain public keys from a configured keystore.
- * @param pubkeyalias
+ * @param pubkeyalias the alias under which to register the public key
* @param x509certificate instance.
*
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/SAMLClient.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/SAMLClient.java
index a14d66a375..a6d98caf6e 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/SAMLClient.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/SAMLClient.java
@@ -25,7 +25,7 @@
* $Id: SAMLClient.java,v 1.6 2008/08/19 19:11:11 veiming Exp $
*
* Portions Copyrighted 2015 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.saml;
@@ -357,7 +357,7 @@ public static boolean setLocalFlag(URL url) {
* wrapped around the request object.
* @param req A SAML request object
* @return a SOAPMessage
- * @exception SAMLException
+ * @exception SAMLException if a SAML error occurs
*/
private static String createSOAPMessage(Request req)
throws SAMLException {
@@ -593,7 +593,7 @@ private static Response getSAMLResponse(String xmlString)
* @param samlresponse A SAML Response object
* @param alist a List
* @return a List object representing a list of Assertion
- * @exception SAMLException
+ * @exception SAMLException if a SAML error occurs
*/
private static List getAssertionList(Response samlresponse, List alist)
throws SAMLException {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/assertion/Attribute.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/assertion/Attribute.java
index acd5b272fa..3e39d3e6cb 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/assertion/Attribute.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/assertion/Attribute.java
@@ -24,6 +24,7 @@
*
* $Id: Attribute.java,v 1.4 2008/09/03 22:28:40 weisun2 Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -247,7 +248,7 @@ public Attribute(String name, String nameSpace, String attributeValue)
*
* @return A list of DOM Element representing the
* AttributeValue block.
- * @throws SAMLException
+ * @throws SAMLException if a SAML error occurs
*/
public List getAttributeValue() throws SAMLException {
return _attributeValue;
@@ -257,7 +258,7 @@ public List getAttributeValue() throws SAMLException {
* Adds AttributeValue to the Attribute.
*
* @param value A String representing AttributeValue.
- * @exception SAMLException
+ * @exception SAMLException if a SAML error occurs
*/
public void addAttributeValue(String value) throws SAMLException {
if (value == null || value.length() == 0) {
@@ -302,7 +303,7 @@ public void addAttributeValue(String value) throws SAMLException {
*
* @param element An Element object representing
* AttributeValue.
- * @exception SAMLException
+ * @exception SAMLException if a SAML error occurs
*/
public void addAttributeValue(Element element) throws SAMLException {
if (element == null) {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/assertion/Evidence.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/assertion/Evidence.java
index f5686e7cd1..39efe29fb7 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/assertion/Evidence.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/assertion/Evidence.java
@@ -24,6 +24,7 @@
*
* $Id: Evidence.java,v 1.2 2008/06/25 05:47:32 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml.assertion;
@@ -60,7 +61,7 @@ public Evidence(org.w3c.dom.Element assertionSpecifierElement)
}
/**
- * Constructs a new Evidence> element containing a
+ * Constructs a new Evidence element containing a
* set of Assertion objects.
*
* @param evidenceContent A set of Assertion and
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/assertion/EvidenceBase.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/assertion/EvidenceBase.java
index 640f9ad42d..ec546a9035 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/assertion/EvidenceBase.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/assertion/EvidenceBase.java
@@ -24,6 +24,7 @@
*
* $Id: EvidenceBase.java,v 1.2 2008/06/25 05:47:32 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml.assertion;
@@ -119,7 +120,7 @@ public EvidenceBase(org.w3c.dom.Element assertionSpecifierElement)
}
/**
- * Constructs a new Evidence> element containing a
+ * Constructs a new Evidence element containing a
* set of Assertion objects.
*
* @param evidenceContent A set of Assertion and
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/assertion/SubjectConfirmation.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/assertion/SubjectConfirmation.java
index fbe3d0e6b9..6f12b5edde 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/assertion/SubjectConfirmation.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/assertion/SubjectConfirmation.java
@@ -24,6 +24,7 @@
*
* $Id: SubjectConfirmation.java,v 1.2 2008/06/25 05:47:33 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml.assertion;
@@ -59,7 +60,7 @@ public class SubjectConfirmation {
*
* @param subjectConfirmationElement a DOM Element representing the
* SubjectConfirmation object.
- * @throws SAMLException
+ * @throws SAMLException if a SAML error occurs
*/
public SubjectConfirmation(org.w3c.dom.Element subjectConfirmationElement)
throws SAMLException
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/assertion/SubjectLocality.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/assertion/SubjectLocality.java
index f8f7810306..336a26b020 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/assertion/SubjectLocality.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/assertion/SubjectLocality.java
@@ -24,6 +24,7 @@
*
* $Id: SubjectLocality.java,v 1.2 2008/06/25 05:47:33 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml.assertion;
@@ -119,7 +120,7 @@ public java.lang.String getIPAddress() {
}
/**
- * Sets the DNS address for SubjectLocality> locality.
+ * Sets the DNS address for SubjectLocality locality.
*
* @param dnsAddress A String representation of DNS address.
* @return true indicating the success of the operation.
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/common/SAMLConstants.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/common/SAMLConstants.java
index 32cc4e3250..89eeabb14f 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/common/SAMLConstants.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/common/SAMLConstants.java
@@ -25,6 +25,7 @@
* $Id: SAMLConstants.java,v 1.17 2009/06/12 22:21:39 mallas Exp $
*
* Portions Copyrighted 2010-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml.common;
@@ -72,7 +73,7 @@ public final class SAMLConstants
public static final String RIGHT_ANGLE = ">";
/**
- * String to identify "/>".
+ * String to identify {@code "/>"}.
*/
public static final String END_ELEMENT = "/>";
@@ -233,7 +234,7 @@ public final class SAMLConstants
"urn:oasis:names:tc:SAML:1.0:ghpp";
/**
- * String used in the ActionNamespace attribute to refer to
+ * String used in the ActionNamespace attribute to refer to
* common sets of actions to perform on resources.
*
* Title: UNIX File Permissions
@@ -243,12 +244,15 @@ public final class SAMLConstants
* digit numeric code: extended user group world
* Where the extended access permission has the value
*
- * +2 if sgid is set
- * +4 if suid is set
- * The user group and world access permissions have the value
- * +1 if execute permission is granted
- * +2 if write permission is granted
- * +4 if read permission is granted
+ * +2 if sgid is set
+ * +4 if suid is set
+ *
+ * The user group and world access permissions have the value
+ *
+ * +1 if execute permission is granted
+ * +2 if write permission is granted
+ * +4 if read permission is granted
+ *
* For example 0754 denotes the UNIX file access permission: user read,
* write and execute, group read and execute and world read.
*
@@ -1422,7 +1426,7 @@ public final class SAMLConstants
public static final String TAG_KEYNAME = "KeyName";
/**
- * Tag name for KeyValue.
+ * Tag name for KeyValue.
*/
public static final String TAG_KEYVALUE = "KeyValue";
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/common/SAMLServiceManager.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/common/SAMLServiceManager.java
index 7d4c7d9b45..2f3695d6f9 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/common/SAMLServiceManager.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/common/SAMLServiceManager.java
@@ -24,6 +24,7 @@
*
* $Id: SAMLServiceManager.java,v 1.10 2008/12/15 23:02:19 hengming Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml.common;
@@ -90,7 +91,7 @@ private SAMLServiceManager() {
/**
* This class contains the mapping between supported target
- * host:port(target) and its saml-aware-servlet URL & sourceid.
+ * host:port(target) and its saml-aware-servlet URL & sourceid.
* target is the primary Key.
*/
public static class SiteEntry {
@@ -294,7 +295,7 @@ public SOAPEntry(String sourceid, String soapUrl, String authType,
/**
* Returns certificate alias can be used to verify a signature signed
* by the partner site. It is used when the signature doesn't contain
- * a <KeyInfo> element.
+ * a <KeyInfo> element.
* @return String certificate alias.
*/
public String getCertAlias() {return certalias;}
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/common/SAMLUtils.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/common/SAMLUtils.java
index 9ec9bbd627..d4283dd4b7 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/common/SAMLUtils.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/common/SAMLUtils.java
@@ -25,7 +25,7 @@
* $Id: SAMLUtils.java,v 1.16 2010/01/09 19:41:06 qcheng Exp $
*
* Portions Copyrighted 2012-2016 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.saml.common;
@@ -814,8 +814,8 @@ public static boolean postYN(String targetIn) {
}
/**
- * Replaces every occurence of ch with
- * "<ascii code of ch>;"
+ * Replaces every occurence of ch with
+ * {@code ";"}
* @param srcStr orginal string to to be encoded.
* @param ch the charactor needs to be encoded.
* @return encoded string
@@ -1542,7 +1542,7 @@ public static Map processArtifact(String[] artifact, String target)
* @param request HttpServletRequest
* @param response HttpServletResponse
* @param attrMap Attribute Map
- * @exception if failed to create Session
+ * @exception SAMLException if failed to create Session
*/
public static Object generateSession(HttpServletRequest request,
HttpServletResponse response,
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/plugins/DefaultAttributeMapper.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/plugins/DefaultAttributeMapper.java
index 6233cc6313..23d64d0776 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/plugins/DefaultAttributeMapper.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/plugins/DefaultAttributeMapper.java
@@ -24,6 +24,7 @@
*
* $Id: DefaultAttributeMapper.java,v 1.4 2009/09/22 23:04:36 exu Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -80,7 +81,6 @@ public DefaultAttributeMapper() {}
* SubjectConfirmationData contains TEXT node only, then the method
* returns the concatenated string of all the TEXT nodes. Otherwise,
* it returns null.
- *
* @param query the AttributeQuery object.
* @see com.sun.identity.saml.plugins.AttributeMapper#getSSOTokenID
*/
@@ -105,7 +105,6 @@ public String getSSOTokenID(AttributeQuery query) {
* This method exams the SubjectConfirmationData of the Subject in the
* AttributeQuery. It returns the first Assertion that contains at least
* one AuthenticationStatement.
- *
* @see com.sun.identity.saml.plugins.AttributeMapper#getSSOAssertion
*/
public Assertion getSSOAssertion(AttributeQuery query) {
@@ -157,7 +156,6 @@ public Assertion getSSOAssertion(AttributeQuery query) {
* of the query. If there is no AttributeDesignator in the query,
* attributes of services specified as userServiceNameList in
* amSAML.properties will be returned.
- *
*
* @param query the AttributeQuery object.
* @param sourceID the Source Identifier.
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/plugins/PartnerAccountMapper.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/plugins/PartnerAccountMapper.java
index 0d27330a62..528e96f080 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/plugins/PartnerAccountMapper.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/plugins/PartnerAccountMapper.java
@@ -25,6 +25,7 @@
* $Id: PartnerAccountMapper.java,v 1.4 2008/08/19 19:11:14 veiming Exp $
*
* Portions Copyrighted 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml.plugins;
@@ -101,7 +102,7 @@ public interface PartnerAccountMapper {
* @param sourceID source ID for the site from which the subject
* originated.
* @return Map which contains NAME and ORG keys,
- * value of the NAME key is the user DN, value of the
+ * value of the NAME key is the user DN, value of the
* ORG is the user organization DN. Returns empty map
* if the mapped user could not be obtained from the subject.
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/protocol/AttributeQuery.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/protocol/AttributeQuery.java
index 3a3155c8a7..ea53fe8245 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/protocol/AttributeQuery.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/protocol/AttributeQuery.java
@@ -24,6 +24,7 @@
*
* $Id: AttributeQuery.java,v 1.2 2008/06/25 05:47:36 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -74,7 +75,7 @@ protected AttributeQuery() {
* tree that was built from the XML string.
*
* @param element the DOM tree element which contains an Attribute Query.
- * @throws SAMLException
+ * @throws SAMLException if a SAML error occurs
*/
public AttributeQuery(Element element) throws SAMLException {
// make sure the input is not null
@@ -143,7 +144,7 @@ public AttributeQuery(Element element) throws SAMLException {
* @param designators List of AttributeDesignators of this
* query.
* @param theResource the Resource attribute of this query in String format.
- * @throws SAMLException
+ * @throws SAMLException if a SAML error occurs
*/
public AttributeQuery(Subject theSubject,
List designators,
@@ -160,7 +161,7 @@ public AttributeQuery(Subject theSubject,
* @param theSubject Subject of this query.
* @param designators List of AttributeDesignators of this
* query.
- * @throws SAMLException
+ * @throws SAMLException if a SAML error occurs
*/
public AttributeQuery(Subject theSubject,
List designators) throws SAMLException {
@@ -172,7 +173,7 @@ public AttributeQuery(Subject theSubject,
* AttributeDesignator, and no Resource attribute.
*
* @param theSubject Subject of this query.
- * @throws SAMLException
+ * @throws SAMLException if a SAML error occurs
*/
public AttributeQuery(Subject theSubject) throws SAMLException {
buildAttributeQuery(theSubject, null, null);
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/protocol/AuthenticationQuery.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/protocol/AuthenticationQuery.java
index 919e37ae26..7f8a416ae8 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/protocol/AuthenticationQuery.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/protocol/AuthenticationQuery.java
@@ -24,6 +24,7 @@
*
* $Id: AuthenticationQuery.java,v 1.2 2008/06/25 05:47:36 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -136,7 +137,7 @@ public AuthenticationQuery(Element element) throws SAMLException {
* @param subject the Subject of the AuthenticationQuery.
* @param authMethod the AuthenticationMethod in string
* format. It could be null.
- * @throws SAMLException
+ * @throws SAMLException if a SAML error occurs
*/
public AuthenticationQuery(Subject subject,
String authMethod)
@@ -154,7 +155,7 @@ public AuthenticationQuery(Subject subject,
* Constructor.
*
* @param subject The Subject of the AuthenticationQuery.
- * @throws SAMLException
+ * @throws SAMLException if a SAML error occurs
*/
public AuthenticationQuery(Subject subject) throws SAMLException {
if (subject == null) {
@@ -196,7 +197,7 @@ public String toString() {
}
/**
- * Returns a String representation of the
+ * Returns a String representation of the {@code }
* element.
*
* @param includeNS Determines whether or not the namespace qualifier
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/protocol/Request.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/protocol/Request.java
index d1dde90ad5..57360b7ef7 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/protocol/Request.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/protocol/Request.java
@@ -25,6 +25,7 @@
* $Id: Request.java,v 1.2 2008/06/25 05:47:37 qcheng Exp $
*
* Portions Copyrighted 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml.protocol;
@@ -465,7 +466,7 @@ public static Request parseXML(String xml) throws SAMLException {
* Constructor.
*
* @param root Request element
- * @throws SAMLException
+ * @throws SAMLException if a SAML error occurs
*/
public Request(Element root) throws SAMLException {
// Make sure this is a Request
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/protocol/Status.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/protocol/Status.java
index d01a1d0bab..73daf0292b 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/protocol/Status.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/protocol/Status.java
@@ -24,6 +24,7 @@
*
* $Id: Status.java,v 1.2 2008/06/25 05:47:37 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -155,7 +156,7 @@ public Status(Element status) throws SAMLException {
* @param detail A DOM tree element that is the StatusDetail
* of the response. It could be null when there is no
* StatusDetail.
- * @throws SAMLException
+ * @throws SAMLException if a SAML error occurs
*/
public Status(StatusCode code, String message, Element detail)
throws SAMLException {
@@ -179,7 +180,7 @@ public Status(StatusCode code, String message, Element detail)
/**
* Constructs a Status object from a StatusCode.
* @param code StatusCode.
- * @throws SAMLException
+ * @throws SAMLException if a SAML error occurs
*/
public Status(StatusCode code) throws SAMLException {
if (code == null) {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/servlet/SAMLAwareServlet.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/servlet/SAMLAwareServlet.java
index cd8e69845a..758c1ba2b2 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/servlet/SAMLAwareServlet.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/servlet/SAMLAwareServlet.java
@@ -25,7 +25,7 @@
* $Id: SAMLAwareServlet.java,v 1.5 2009/06/12 22:21:39 mallas Exp $
*
* Portions Copyrighted 2013 ForgeRock AS
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.saml.servlet;
@@ -67,13 +67,14 @@ public class SAMLAwareServlet extends HttpServlet {
* Overrides doGet method to support SAML web browser artifact
* profile in two ways:
*
- * - Initiates SAML single sign-on
- * - Accepts SAML artifact to complete single sign-on
+ * - Initiates <code>SAML</code> single sign-on
+ * - Accepts <code>SAML</code> artifact to complete single sign-on
*
*
* @param request HttpServletRequest instance.
* @param response HttpServletResponse instance.
- * @throws IOException,ServletException if there is an error.
+ * @throws IOException if there is an error.
+ * @throws ServletException if there is an error.
*/
public void doGet(HttpServletRequest request,HttpServletResponse response)
throws IOException, ServletException {
@@ -117,7 +118,8 @@ public void doGet(HttpServletRequest request,HttpServletResponse response)
*
* @param request HttpServletRequest instance.
* @param response HttpServletResponse instance.
- * @throws IOException,ServletException if there is an error.
+ * @throws IOException if there is an error.
+ * @throws ServletException if there is an error.
*/
public void doPost(HttpServletRequest request,HttpServletResponse response)
throws IOException, ServletException {
@@ -170,7 +172,7 @@ private List createArtifact(Object sso,String target,
* @param request the HttpServletRequest object.
* @param response the HttpServletResponse object.
* @param target String representing the target host.
- * @throws IOException if there is an error.
+ * @throws IOException if there is an error.
* @throws SAMLException if there is an error.
*/
private void IntersiteTransfer(HttpServletRequest request,
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/servlet/SAMLPOSTProfileServlet.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/servlet/SAMLPOSTProfileServlet.java
index 17b1835c37..5be40298ee 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/servlet/SAMLPOSTProfileServlet.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/servlet/SAMLPOSTProfileServlet.java
@@ -25,7 +25,7 @@
* $Id: SAMLPOSTProfileServlet.java,v 1.4 2009/06/12 22:21:39 mallas Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.saml.servlet;
@@ -331,8 +331,8 @@ private Object getSession(HttpServletRequest request) {
*
* @param request HttpServletRequest instance
* @param response HttpServletResponse instance
- * @throws ServletException if there is an error.
- * @throws IOException if there is an error.
+ * @throws ServletException if there is an error.
+ * @throws IOException if there is an error.
*/
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/servlet/SAMLSOAPReceiver.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/servlet/SAMLSOAPReceiver.java
index afb1d46dbc..0e922abd9e 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/servlet/SAMLSOAPReceiver.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/servlet/SAMLSOAPReceiver.java
@@ -24,6 +24,7 @@
*
* $Id: SAMLSOAPReceiver.java,v 1.3 2009/06/12 22:21:39 mallas Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
/*
@@ -178,7 +179,7 @@ public void init(ServletConfig config) throws ServletException {
* @param req HttpServletRequest object.
* @param resp HttpServletResponse object.
* @throws ServletException if there is an error.
- * @throws IOException if there is an error.
+ * @throws java.io.IOException if there is an error.
*/
public void doPost(HttpServletRequest req,
HttpServletResponse resp)
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/xmlsig/AMSignatureProvider.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/xmlsig/AMSignatureProvider.java
index 92d1c0b19d..61c2a709bb 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/xmlsig/AMSignatureProvider.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/xmlsig/AMSignatureProvider.java
@@ -25,6 +25,7 @@
* $Id: AMSignatureProvider.java,v 1.11 2009/08/29 03:06:47 mallas Exp $
*
* Portions Copyrighted 2013-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml.xmlsig;
@@ -75,7 +76,6 @@
/**
* SignatureProvider is an interface
* to be implemented to sign and verify xml signature
- *
*/
public class AMSignatureProvider implements SignatureProvider {
@@ -1987,7 +1987,7 @@ public boolean verifyWSSSignature(org.w3c.dom.Document document,
* @param document the document to be validated
* @param key the secret key to be used for validating signature
* @return true if verification is successful.
- * @throws com.sun.identity.saml.xmlsig.XMLSignatureException
+ * @throws com.sun.identity.saml.xmlsig.XMLSignatureException if the object cannot be signed
*/
public boolean verifyWSSSignature(org.w3c.dom.Document document,
java.security.Key key)
@@ -2005,7 +2005,7 @@ public boolean verifyWSSSignature(org.w3c.dom.Document document,
* @param encryptAlias the certificate alias that may be used to decrypt
* the symmetric key that may be part of KeyInfo
* @return true if verification is successful.
- * @throws com.sun.identity.saml.xmlsig.XMLSignatureException
+ * @throws com.sun.identity.saml.xmlsig.XMLSignatureException if the object cannot be signed
*/
public boolean verifyWSSSignature(org.w3c.dom.Document document,
java.security.Key key,
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/xmlsig/JKSKeyProvider.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/xmlsig/JKSKeyProvider.java
index 127922d581..769067894b 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/xmlsig/JKSKeyProvider.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/xmlsig/JKSKeyProvider.java
@@ -24,6 +24,7 @@
*
* $Id: JKSKeyProvider.java,v 1.4 2008/06/25 05:47:38 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
/*
@@ -49,7 +50,6 @@
* The class JKSKeyProvider is a class
* that is implemented to retrieve X509Certificates and Private Keys from
* user data store.
- *
*/
public class JKSKeyProvider implements KeyProvider {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/xmlsig/OfflineResolver.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/xmlsig/OfflineResolver.java
index 4289fd02a9..e904e21970 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/xmlsig/OfflineResolver.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/xmlsig/OfflineResolver.java
@@ -25,6 +25,7 @@
* $Id: OfflineResolver.java,v 1.2 2008/06/25 05:47:38 qcheng Exp $
*
* Portions Copyrighted 2014-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml.xmlsig;
@@ -63,9 +64,9 @@ public boolean engineCanResolveURI(ResourceResolverContext context) {
/**
* Method engineResolve
*
- * @param uri
- * @param BaseURI
- * @throws ResourceResolverException
+ * @param uri the URI attribute to resolve
+ * @param BaseURI the base URI against which the URI is resolved
+ * @throws ResourceResolverException if an error occurs
*/
public XMLSignatureInput engineResolve(Attr uri, String BaseURI) throws ResourceResolverException {
@@ -99,8 +100,8 @@ public XMLSignatureInput engineResolve(Attr uri, String BaseURI) throws Resource
/**
* We resolve http URIs without fragment.
*
- * @param uri
- * @param BaseURI
+ * @param uri the URI attribute to resolve
+ * @param BaseURI the base URI against which the URI is resolved
*/
public boolean engineCanResolve(Attr uri, String BaseURI) {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/xmlsig/SignatureProvider.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/xmlsig/SignatureProvider.java
index becce905ed..46dcc4c89a 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/xmlsig/SignatureProvider.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/xmlsig/SignatureProvider.java
@@ -24,6 +24,7 @@
*
* $Id: SignatureProvider.java,v 1.10 2009/08/29 03:06:47 mallas Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
/*
@@ -609,7 +610,7 @@ public boolean verifyWSSSignature(org.w3c.dom.Document document,
* @param document the document to be validated
* @param key the secret key to be used for validating signature
* @return true if verification is successful.
- * @throws com.sun.identity.saml.xmlsig.XMLSignatureException
+ * @throws com.sun.identity.saml.xmlsig.XMLSignatureException if the object cannot be signed
*/
public boolean verifyWSSSignature(org.w3c.dom.Document document,
java.security.Key key)
@@ -624,7 +625,7 @@ public boolean verifyWSSSignature(org.w3c.dom.Document document,
* @param encryptAlias the certificate alias that may be used to decrypt
* the symmetric key that may be part of KeyInfo
* @return true if verification is successful.
- * @throws com.sun.identity.saml.xmlsig.XMLSignatureException
+ * @throws com.sun.identity.saml.xmlsig.XMLSignatureException if the object cannot be signed
*/
public boolean verifyWSSSignature(org.w3c.dom.Document document,
java.security.Key key,
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/xmlsig/XMLSignatureManager.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/xmlsig/XMLSignatureManager.java
index f0ebfc5862..7b27a454d3 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/xmlsig/XMLSignatureManager.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml/xmlsig/XMLSignatureManager.java
@@ -25,6 +25,7 @@
* $Id: XMLSignatureManager.java,v 1.11 2009/08/29 03:06:47 mallas Exp $
*
* Portions Copyrighted 2013-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml.xmlsig;
@@ -43,7 +44,6 @@
/**
* The class XMLSignatureManager provides methods
* to sign and verify XML signature.
- *
*/
public class XMLSignatureManager {
@@ -763,7 +763,7 @@ public boolean verifyWSSSignature(org.w3c.dom.Document document,
* @param document the document to be validated
* @param key the secret key to be used for validating signature
* @return true if verification is successful.
- * @throws com.sun.identity.saml.xmlsig.XMLSignatureException
+ * @throws com.sun.identity.saml.xmlsig.XMLSignatureException if the object cannot be signed
*/
public boolean verifyWSSSignature(org.w3c.dom.Document document,
java.security.Key key)
@@ -781,7 +781,7 @@ public boolean verifyWSSSignature(org.w3c.dom.Document document,
* @param encryptAlias the certificate alias that may be used to decrypt
* the symmetric key that may be part of KeyInfo
* @return true if verification is successful.
- * @throws com.sun.identity.saml.xmlsig.XMLSignatureException
+ * @throws com.sun.identity.saml.xmlsig.XMLSignatureException if the object cannot be signed
*/
public boolean verifyWSSSignature(org.w3c.dom.Document document,
java.security.Key key,
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/Action.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/Action.java
index e4395dd511..16f48ed857 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/Action.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/Action.java
@@ -24,6 +24,7 @@
*
* $Id: Action.java,v 1.2 2008/06/25 05:47:39 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml2.assertion;
@@ -33,16 +34,15 @@
/**
* The Action element specifies an action on the specified
* resource for which permission is sought. Its type is ActionType.
- *
*
- * <complexType name="ActionType">
- * <simpleContent>
- * <extension base="<http://www.w3.org/2001/XMLSchema>string">
+ * <complexType name="ActionType">
+ * <simpleContent>
+ * <extension base="<http://www.w3.org/2001/XMLSchema>string">
* <attribute name="Namespace" use="required"
- * type="{http://www.w3.org/2001/XMLSchema}anyURI" />
- * </extension>
- * </simpleContent>
- * </complexType>
+ * type="{http://www.w3.org/2001/XMLSchema}anyURI" />
+ * </extension>
+ * </simpleContent>
+ * </complexType>
*
*
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/AssertionIDRef.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/AssertionIDRef.java
index 75211195b5..14a9ff5843 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/AssertionIDRef.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/AssertionIDRef.java
@@ -24,6 +24,7 @@
*
* $Id: AssertionIDRef.java,v 1.2 2008/06/25 05:47:40 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml2.assertion;
@@ -34,9 +35,8 @@
* This class represents the AssertionIDRef element.
* The following schema fragment specifies the expected
* content contained within this java content object.
- *
*
- * <element name="AssertionIDRef" type="NCName"/>
+ * <element name="AssertionIDRef" type="NCName"/>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/Attribute.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/Attribute.java
index ef7627f9ae..315278c242 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/Attribute.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/Attribute.java
@@ -25,6 +25,7 @@
* $Id: Attribute.java,v 1.2 2008/06/25 05:47:40 qcheng Exp $
*
* Portions Copyrighted 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml2.assertion;
@@ -41,24 +42,23 @@
* The Attribute element identifies an attribute by name and
* optionally includes its value(s). It has the AttributeType
* complex type.
- *
*
- * <complexType name="AttributeType">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
+ * <complexType name="AttributeType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}
- * AttributeValue" maxOccurs="unbounded" minOccurs="0"/>
- * </sequence>
+ * AttributeValue" maxOccurs="unbounded" minOccurs="0"/>
+ * </sequence>
* <attribute name="FriendlyName"
- * type="{http://www.w3.org/2001/XMLSchema}string" />
+ * type="{http://www.w3.org/2001/XMLSchema}string" />
* <attribute name="Name" use="required"
- * type="{http://www.w3.org/2001/XMLSchema}string" />
+ * type="{http://www.w3.org/2001/XMLSchema}string" />
* <attribute name="NameFormat"
- * type="{http://www.w3.org/2001/XMLSchema}anyURI" />
- * </restriction>
- * </complexContent>
- * </complexType>
+ * type="{http://www.w3.org/2001/XMLSchema}anyURI" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/AttributeStatement.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/AttributeStatement.java
index 950a308d35..edb063ad64 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/AttributeStatement.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/AttributeStatement.java
@@ -25,6 +25,7 @@
* $Id: AttributeStatement.java,v 1.2 2008/06/25 05:47:40 qcheng Exp $
*
* Portions Copyrighted 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml2.assertion;
@@ -40,20 +41,19 @@
* The AttributeStatement element describes a statement by
* the SAML authority asserting that the assertion subject is associated with
* the specified attributes. It is of type AttributeStatementType.
- *
*
- * <complexType name="AttributeStatementType">
- * <complexContent>
+ * <complexType name="AttributeStatementType">
+ * <complexContent>
* <extension base="{urn:oasis:names:tc:SAML:2.0:assertion}
- * StatementAbstractType">
- * <choice maxOccurs="unbounded">
- * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}Attribute"/>
+ * StatementAbstractType">
+ * <choice maxOccurs="unbounded">
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}Attribute"/>
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}
- * EncryptedAttribute"/>
- * </choice>
- * </extension>
- * </complexContent>
- * </complexType>
+ * EncryptedAttribute"/>
+ * </choice>
+ * </extension>
+ * </complexContent>
+ * </complexType>
*
*
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/AuthnContext.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/AuthnContext.java
index 410171572a..096838089e 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/AuthnContext.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/AuthnContext.java
@@ -25,6 +25,7 @@
* $Id: AuthnContext.java,v 1.2 2008/06/25 05:47:40 qcheng Exp $
*
* Portions Copyrighted 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -41,36 +42,35 @@
* authentication event. The element can contain an authentication context
* class reference, an authentication declaration or declaration reference,
* or both. Its type is AuthnContextType.
- *
*
- * <complexType name="AuthnContextType">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <choice>
- * <sequence>
+ * <complexType name="AuthnContextType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <choice>
+ * <sequence>
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}
- * AuthnContextClassRef"/>
- * <choice minOccurs="0">
+ * AuthnContextClassRef"/>
+ * <choice minOccurs="0">
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}
- * AuthnContextDecl"/>
+ * AuthnContextDecl"/>
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}
- * AuthnContextDeclRef"/>
- * </choice>
- * </sequence>
- * <choice>
+ * AuthnContextDeclRef"/>
+ * </choice>
+ * </sequence>
+ * <choice>
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}
- * AuthnContextDecl"/>
+ * AuthnContextDecl"/>
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}
- * AuthnContextDeclRef"/>
- * </choice>
- * </choice>
+ * AuthnContextDeclRef"/>
+ * </choice>
+ * </choice>
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}
- * AuthenticatingAuthority" maxOccurs="unbounded" minOccurs="0"/>
- * </sequence>
- * </restriction>
- * </complexContent>
- * </complexType>
+ * AuthenticatingAuthority" maxOccurs="unbounded" minOccurs="0"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/AuthnStatement.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/AuthnStatement.java
index c2b1d8d319..001638816e 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/AuthnStatement.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/AuthnStatement.java
@@ -25,6 +25,7 @@
* $Id: AuthnStatement.java,v 1.2 2008/06/25 05:47:40 qcheng Exp $
*
* Portions Copyrighted 2015-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml2.assertion;
@@ -39,27 +40,26 @@
* SAML authority asserting that the assertion subject was authenticated
* by a particular means at a particular time. It is of type
* AuthnStatementType.
- *
*
- * <complexType name="AuthnStatementType">
- * <complexContent>
+ * <complexType name="AuthnStatementType">
+ * <complexContent>
* <extension base="{urn:oasis:names:tc:SAML:2.0:assertion}
- * StatementAbstractType">
- * <sequence>
+ * StatementAbstractType">
+ * <sequence>
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}
- * SubjectLocality" minOccurs="0"/>
+ * SubjectLocality" minOccurs="0"/>
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}
- * AuthnContext"/>
- * </sequence>
+ * AuthnContext"/>
+ * </sequence>
* <attribute name="AuthnInstant" use="required"
- * type="{http://www.w3.org/2001/XMLSchema}dateTime" />
+ * type="{http://www.w3.org/2001/XMLSchema}dateTime" />
* <attribute name="SessionIndex"
- * type="{http://www.w3.org/2001/XMLSchema}string" />
+ * type="{http://www.w3.org/2001/XMLSchema}string" />
* <attribute name="SessionNotOnOrAfter"
- * type="{http://www.w3.org/2001/XMLSchema}dateTime" />
- * </extension>
- * </complexContent>
- * </complexType>
+ * type="{http://www.w3.org/2001/XMLSchema}dateTime" />
+ * </extension>
+ * </complexContent>
+ * </complexType>
*
*
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/AuthzDecisionStatement.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/AuthzDecisionStatement.java
index d2604349b0..bb646fe853 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/AuthzDecisionStatement.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/AuthzDecisionStatement.java
@@ -24,6 +24,7 @@
*
* $Id: AuthzDecisionStatement.java,v 1.2 2008/06/25 05:47:40 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -39,25 +40,24 @@
* subject tot he specified resource has resulted in the specified authorization
* decision on the basis of some optionally specified evidence. Its type is
* AuthzDecisionStatementType.
- *
*
- * <complexType name="AuthzDecisionStatementType">
- * <complexContent>
+ * <complexType name="AuthzDecisionStatementType">
+ * <complexContent>
* <extension base="{urn:oasis:names:tc:SAML:2.0:assertion}
- * StatementAbstractType">
- * <sequence>
+ * StatementAbstractType">
+ * <sequence>
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}Action"
- * maxOccurs="unbounded"/>
+ * maxOccurs="unbounded"/>
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}Evidence"
- * minOccurs="0"/>
- * </sequence>
+ * minOccurs="0"/>
+ * </sequence>
* <attribute name="Decision" use="required"
- * type="{urn:oasis:names:tc:SAML:2.0:assertion}DecisionType" />
+ * type="{urn:oasis:names:tc:SAML:2.0:assertion}DecisionType" />
* <attribute name="Resource" use="required"
- * type="{http://www.w3.org/2001/XMLSchema}anyURI" />
- * </extension>
- * </complexContent>
- * </complexType>
+ * type="{http://www.w3.org/2001/XMLSchema}anyURI" />
+ * </extension>
+ * </complexContent>
+ * </complexType>
*
*
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/EncryptedAttribute.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/EncryptedAttribute.java
index ad3b029a81..58a0e59f89 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/EncryptedAttribute.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/EncryptedAttribute.java
@@ -25,6 +25,7 @@
* $Id: EncryptedAttribute.java,v 1.2 2008/06/25 05:47:41 qcheng Exp $
*
* Portions Copyrighted 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml2.assertion;
@@ -36,10 +37,9 @@
/**
* The EncryptedAttribute element represents a SAML attribute
* in encrypted fashion. It's of type EncryptedElementType.
- *
*
* <element name="EncryptedAttribute"
- * type="{urn:oasis:names:tc:SAML:2.0:assertion}EncryptedElementType"/>
+ * type="{urn:oasis:names:tc:SAML:2.0:assertion}EncryptedElementType"/>
*
*
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/Evidence.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/Evidence.java
index fea9234f58..86c6b8b3f2 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/Evidence.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/Evidence.java
@@ -24,6 +24,7 @@
*
* $Id: Evidence.java,v 1.2 2008/06/25 05:47:41 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -38,23 +39,22 @@
* The Evidence element contains one or more assertions or
* assertion references that the SAML authority relied on in issuing the
* authorization decision. It has the EvidenceType complex type.
- *
*
- * <complexType name="EvidenceType">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <choice maxOccurs="unbounded">
+ * <complexType name="EvidenceType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <choice maxOccurs="unbounded">
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}
- * AssertionIDRef"/>
+ * AssertionIDRef"/>
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}
- * AssertionURIRef"/>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}Assertion"/>
+ * AssertionURIRef"/>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}Assertion"/>
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}
- * EncryptedAssertion"/>
- * </choice>
- * </restriction>
- * </complexContent>
- * </complexType>
+ * EncryptedAssertion"/>
+ * </choice>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/Statement.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/Statement.java
index e7cfe07cb1..00efd7cbe7 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/Statement.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/Statement.java
@@ -24,6 +24,7 @@
*
* $Id: Statement.java,v 1.2 2008/06/25 05:47:41 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -38,14 +39,13 @@
* SAML itself derives its core statements from this extension point.
* Its StatementAbstractType complex type is abstract and is
* thus usable only as the base of a derived type.
- *
*
- * <complexType name="StatementAbstractType">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * </restriction>
- * </complexContent>
- * </complexType>
+ * <complexType name="StatementAbstractType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/SubjectLocality.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/SubjectLocality.java
index 4052ac7a9f..4bba006e77 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/SubjectLocality.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/SubjectLocality.java
@@ -24,6 +24,7 @@
*
* $Id: SubjectLocality.java,v 1.2 2008/06/25 05:47:42 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -36,18 +37,17 @@
* The SubjectLocality element specifies the DNS domain name
* and IP address for the system entity that performed the authentication.
* It exists as part of AuthenticationStatement element.
- *
*
- * <complexType name="SubjectLocalityType">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <complexType name="SubjectLocalityType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* <attribute name="Address"
- * type="{http://www.w3.org/2001/XMLSchema}string" />
+ * type="{http://www.w3.org/2001/XMLSchema}string" />
* <attribute name="DNSName"
- * type="{http://www.w3.org/2001/XMLSchema}string" />
- * </restriction>
- * </complexContent>
- * </complexType>
+ * type="{http://www.w3.org/2001/XMLSchema}string" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/ActionImpl.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/ActionImpl.java
index dad979bea0..46b452e648 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/ActionImpl.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/ActionImpl.java
@@ -24,6 +24,7 @@
*
* $Id: ActionImpl.java,v 1.2 2008/06/25 05:47:42 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml2.assertion.impl;
@@ -44,16 +45,15 @@
* This class is an implementation of interface Action.
* The Action element specifies an action on the specified
* resource for which permission is sought. Its type is ActionType.
- *
*
- * <complexType name="ActionType">
- * <simpleContent>
- * <extension base="<http://www.w3.org/2001/XMLSchema>string">
+ * <complexType name="ActionType">
+ * <simpleContent>
+ * <extension base="<http://www.w3.org/2001/XMLSchema>string">
* <attribute name="Namespace" use="required"
- * type="{http://www.w3.org/2001/XMLSchema}anyURI" />
- * </extension>
- * </simpleContent>
- * </complexType>
+ * type="{http://www.w3.org/2001/XMLSchema}anyURI" />
+ * </extension>
+ * </simpleContent>
+ * </complexType>
*
*
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/AdviceImpl.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/AdviceImpl.java
index 71446336f6..8e2276ba4e 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/AdviceImpl.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/AdviceImpl.java
@@ -24,6 +24,7 @@
*
* $Id: AdviceImpl.java,v 1.4 2008/06/25 05:47:42 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -81,7 +82,7 @@ public AdviceImpl() {
*
* @param xml A java.lang.String representing
* a Advice object
- * @exception SAMLException if it could not process the XML string
+ * @exception SAML2Exception if it could not process the XML string
*/
public AdviceImpl(String xml) throws SAML2Exception {
Document document = XMLUtils.toDOMDocument(xml, SAML2SDKUtils.debug);
@@ -103,7 +104,7 @@ public AdviceImpl(String xml) throws SAML2Exception {
*
* @param element A org.w3c.dom.Element representing
* DOM tree for Advice object
- * @exception SAMLException if it could not process the Element
+ * @exception SAML2Exception if it could not process the Element
*/
public AdviceImpl(Element element) throws SAML2Exception {
processElement(element);
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/AssertionIDRefImpl.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/AssertionIDRefImpl.java
index e51954badc..25d480b2be 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/AssertionIDRefImpl.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/AssertionIDRefImpl.java
@@ -24,6 +24,7 @@
*
* $Id: AssertionIDRefImpl.java,v 1.2 2008/06/25 05:47:42 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml2.assertion.impl;
@@ -43,9 +44,8 @@
* This class represents the AssertionIDRef element.
* The following schema fragment specifies the expected
* content contained within this java content object.
- *
*
- * <element name="AssertionIDRef" type="NCName"/>
+ * <element name="AssertionIDRef" type="NCName"/>
*
*
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/AttributeImpl.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/AttributeImpl.java
index beca8c7e7a..86fbc6645c 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/AttributeImpl.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/AttributeImpl.java
@@ -24,6 +24,7 @@
*
* $Id: AttributeImpl.java,v 1.4 2008/06/25 05:47:42 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -59,24 +60,23 @@
* The Attribute element identifies an attribute by name and
* optionally includes its value(s). It has the AttributeType
* complex type.
- *
*
- * <complexType name="AttributeType">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
+ * <complexType name="AttributeType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}
- * AttributeValue" maxOccurs="unbounded" minOccurs="0"/>
- * </sequence>
+ * AttributeValue" maxOccurs="unbounded" minOccurs="0"/>
+ * </sequence>
* <attribute name="FriendlyName"
- * type="{http://www.w3.org/2001/XMLSchema}string" />
+ * type="{http://www.w3.org/2001/XMLSchema}string" />
* <attribute name="Name" use="required"
- * type="{http://www.w3.org/2001/XMLSchema}string" />
+ * type="{http://www.w3.org/2001/XMLSchema}string" />
* <attribute name="NameFormat"
- * type="{http://www.w3.org/2001/XMLSchema}anyURI" />
- * </restriction>
- * </complexContent>
- * </complexType>
+ * type="{http://www.w3.org/2001/XMLSchema}anyURI" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*/
public class AttributeImpl implements Attribute {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/AttributeStatementImpl.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/AttributeStatementImpl.java
index 9c6d096c19..8cc786751a 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/AttributeStatementImpl.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/AttributeStatementImpl.java
@@ -25,6 +25,7 @@
* $Id: AttributeStatementImpl.java,v 1.2 2008/06/25 05:47:42 qcheng Exp $
*
* Portions Copyrighted 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml2.assertion.impl;
@@ -54,20 +55,19 @@
* The AttributeStatement element describes a statement by
* the SAML authority asserting that the assertion subject is associated with
* the specified attributes. It is of type AttributeStatementType.
- *
*
- * <complexType name="AttributeStatementType">
- * <complexContent>
+ * <complexType name="AttributeStatementType">
+ * <complexContent>
* <extension base="{urn:oasis:names:tc:SAML:2.0:assertion}
- * StatementAbstractType">
- * <choice maxOccurs="unbounded">
- * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}Attribute"/>
+ * StatementAbstractType">
+ * <choice maxOccurs="unbounded">
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}Attribute"/>
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}
- * EncryptedAttribute"/>
- * </choice>
- * </extension>
- * </complexContent>
- * </complexType>
+ * EncryptedAttribute"/>
+ * </choice>
+ * </extension>
+ * </complexContent>
+ * </complexType>
*
*/
public class AttributeStatementImpl implements AttributeStatement {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/AuthnContextImpl.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/AuthnContextImpl.java
index 0fe7582368..f62a71a0b4 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/AuthnContextImpl.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/AuthnContextImpl.java
@@ -25,6 +25,7 @@
* $Id: AuthnContextImpl.java,v 1.3 2008/06/25 05:47:43 qcheng Exp $
*
* Portions Copyrighted 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml2.assertion.impl;
@@ -53,36 +54,35 @@
* authentication event. The element can contain an authentication context
* class reference, an authentication declaration or declaration reference,
* or both. Its type is AuthnContextType.
- *
*
- * <complexType name="AuthnContextType">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <choice>
- * <sequence>
+ * <complexType name="AuthnContextType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <choice>
+ * <sequence>
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}
- * AuthnContextClassRef"/>
- * <choice minOccurs="0">
+ * AuthnContextClassRef"/>
+ * <choice minOccurs="0">
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}
- * AuthnContextDecl"/>
+ * AuthnContextDecl"/>
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}
- * AuthnContextDeclRef"/>
- * </choice>
- * </sequence>
- * <choice>
+ * AuthnContextDeclRef"/>
+ * </choice>
+ * </sequence>
+ * <choice>
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}
- * AuthnContextDecl"/>
+ * AuthnContextDecl"/>
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}
- * AuthnContextDeclRef"/>
- * </choice>
- * </choice>
+ * AuthnContextDeclRef"/>
+ * </choice>
+ * </choice>
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}
- * AuthenticatingAuthority" maxOccurs="unbounded" minOccurs="0"/>
- * </sequence>
- * </restriction>
- * </complexContent>
- * </complexType>
+ * AuthenticatingAuthority" maxOccurs="unbounded" minOccurs="0"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*/
public class AuthnContextImpl implements AuthnContext {
@@ -340,7 +340,7 @@ public java.lang.String getAuthnContextClassRef() {
* Sets the value of the AuthnContextClassRef property.
*
* @param value new AuthenticationContextClassRef.
- * @throws com.sun.identity.saml2.common.SAML2Exception
+ * @throws com.sun.identity.saml2.common.SAML2Exception if a SAML2 error occurs
* if the object is immutable.
*/
public void setAuthnContextClassRef(java.lang.String value)
@@ -368,7 +368,7 @@ public java.lang.String getAuthnContextDeclRef() {
*
* @param value A String representation of authentication context
* declaration reference.
- * @throws com.sun.identity.saml2.common.SAML2Exception
+ * @throws com.sun.identity.saml2.common.SAML2Exception if a SAML2 error occurs
* if the object is immutable.
*/
public void setAuthnContextDeclRef(java.lang.String value)
@@ -395,7 +395,7 @@ public java.lang.String getAuthnContextDecl() {
*
* @param value An XML String representing authentication context
* declaration.
- * @throws com.sun.identity.saml2.common.SAML2Exception
+ * @throws com.sun.identity.saml2.common.SAML2Exception if a SAML2 error occurs
* if the object is immutable.
*/
public void setAuthnContextDecl(java.lang.String value)
@@ -436,7 +436,7 @@ public List getAuthenticatingAuthority() {
*
* @return A string containing the valid XML for this element.
* By default name space name is prepended to the element name.
- * @throws com.sun.identity.saml2.common.SAML2Exception
+ * @throws com.sun.identity.saml2.common.SAML2Exception if a SAML2 error occurs
* if the object does not conform to the schema.
*/
public java.lang.String toXMLString()
@@ -453,7 +453,7 @@ public java.lang.String toXMLString()
* @param declareNS Determines whether or not the namespace is declared
* within the Element.
* @return A string containing the valid XML for this element
- * @throws com.sun.identity.saml2.common.SAML2Exception
+ * @throws com.sun.identity.saml2.common.SAML2Exception if a SAML2 error occurs
* if the object does not conform to the schema.
*/
public java.lang.String toXMLString(boolean includeNS, boolean declareNS)
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/AuthnStatementImpl.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/AuthnStatementImpl.java
index 938928e9d3..1c30e41e01 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/AuthnStatementImpl.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/AuthnStatementImpl.java
@@ -24,6 +24,7 @@
*
* $Id: AuthnStatementImpl.java,v 1.2 2008/06/25 05:47:43 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -56,27 +57,26 @@
* SAML authority asserting that the assertion subject was authenticated
* by a particular means at a particular time. It is of type
* AuthnStatementType.
- *
*
- * <complexType name="AuthnStatementType">
- * <complexContent>
+ * <complexType name="AuthnStatementType">
+ * <complexContent>
* <extension base="{urn:oasis:names:tc:SAML:2.0:assertion}
- * StatementAbstractType">
- * <sequence>
+ * StatementAbstractType">
+ * <sequence>
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}
- * SubjectLocality" minOccurs="0"/>
+ * SubjectLocality" minOccurs="0"/>
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}
- * AuthnContext"/>
- * </sequence>
+ * AuthnContext"/>
+ * </sequence>
* <attribute name="AuthnInstant" use="required"
- * type="{http://www.w3.org/2001/XMLSchema}dateTime" />
+ * type="{http://www.w3.org/2001/XMLSchema}dateTime" />
* <attribute name="SessionIndex"
- * type="{http://www.w3.org/2001/XMLSchema}string" />
+ * type="{http://www.w3.org/2001/XMLSchema}string" />
* <attribute name="SessionNotOnOrAfter"
- * type="{http://www.w3.org/2001/XMLSchema}dateTime" />
- * </extension>
- * </complexContent>
- * </complexType>
+ * type="{http://www.w3.org/2001/XMLSchema}dateTime" />
+ * </extension>
+ * </complexContent>
+ * </complexType>
*
*/
public class AuthnStatementImpl implements AuthnStatement {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/EncryptedAttributeImpl.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/EncryptedAttributeImpl.java
index 00a9924a8d..5778b58d66 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/EncryptedAttributeImpl.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/EncryptedAttributeImpl.java
@@ -25,6 +25,7 @@
* $Id: EncryptedAttributeImpl.java,v 1.2 2008/06/25 05:47:43 qcheng Exp $
*
* Portions copyright 2014-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml2.assertion.impl;
@@ -47,10 +48,9 @@
*
* The EncryptedAttribute element represents a SAML attribute
* in encrypted fashion. It's of type EncryptedElementType.
- *
*
* <element name="EncryptedAttribute"
- * type="{urn:oasis:names:tc:SAML:2.0:assertion}EncryptedElementType"/>
+ * type="{urn:oasis:names:tc:SAML:2.0:assertion}EncryptedElementType"/>
*
*/
public class EncryptedAttributeImpl implements EncryptedAttribute {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/EncryptedElementImpl.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/EncryptedElementImpl.java
index 9e929730a1..9b9793ad62 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/EncryptedElementImpl.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/EncryptedElementImpl.java
@@ -24,6 +24,7 @@
*
* $Id: EncryptedElementImpl.java,v 1.2 2008/06/25 05:47:43 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -37,19 +38,18 @@
* Java content class for EncryptedElementType complex type.
* The following schema fragment specifies the expected
* content contained within this java content object.
- *
*
- * <complexType name="EncryptedElementType">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element ref="{http://www.w3.org/2001/04/xmlenc#}EncryptedData"/>
+ * <complexType name="EncryptedElementType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{http://www.w3.org/2001/04/xmlenc#}EncryptedData"/>
* <element ref="{http://www.w3.org/2001/04/xmlenc#}EncryptedKey"
- * maxOccurs="unbounded" minOccurs="0"/>
- * </sequence>
- * </restriction>
- * </complexContent>
- * </complexType>
+ * maxOccurs="unbounded" minOccurs="0"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/EncryptedIDImpl.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/EncryptedIDImpl.java
index e23f438578..1d2cd3a624 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/EncryptedIDImpl.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/EncryptedIDImpl.java
@@ -25,6 +25,7 @@
* $Id: EncryptedIDImpl.java,v 1.2 2008/06/25 05:47:43 qcheng Exp $
*
* Portions copyright 2014-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml2.assertion.impl;
@@ -46,10 +47,9 @@
* Java content class for EncryptedID element declaration.
* The following schema fragment specifies the expected
* content contained within this java content object.
- *
*
* <element name="EncryptedID"
- * type="{urn:oasis:names:tc:SAML:2.0:assertion}EncryptedElementType"/>
+ * type="{urn:oasis:names:tc:SAML:2.0:assertion}EncryptedElementType"/>
*
*
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/KeyInfoConfirmationDataImpl.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/KeyInfoConfirmationDataImpl.java
index 683ea61c6a..1fbb5853f7 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/KeyInfoConfirmationDataImpl.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/KeyInfoConfirmationDataImpl.java
@@ -24,6 +24,7 @@
*
* $Id: KeyInfoConfirmationDataImpl.java,v 1.2 2008/06/25 05:47:44 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -47,7 +48,7 @@
/**
* The KeyInfoConfirmationData constrains a
* SubjectConfirmationData element to contain one or more
- * elements that identify cryptographic keys that are used
+ * <ds:KeyInfo> elements that identify cryptographic keys that are used
* in some way to authenticate an attesting entity. The particular
* confirmation method MUST define the exact mechanism by which the
* confirmation data can be used. The optional attributes defined by
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/SubjectLocalityImpl.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/SubjectLocalityImpl.java
index 5dc6b9ab83..9b23f11567 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/SubjectLocalityImpl.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/assertion/impl/SubjectLocalityImpl.java
@@ -24,6 +24,7 @@
*
* $Id: SubjectLocalityImpl.java,v 1.2 2008/06/25 05:47:44 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -47,18 +48,17 @@
* The SubjectLocality element specifies the DNS domain name
* and IP address for the system entity that performed the authentication.
* It exists as part of AuthenticationStatement element.
- *
*
- * <complexType name="SubjectLocalityType">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <complexType name="SubjectLocalityType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* <attribute name="Address"
- * type="{http://www.w3.org/2001/XMLSchema}string" />
+ * type="{http://www.w3.org/2001/XMLSchema}string" />
* <attribute name="DNSName"
- * type="{http://www.w3.org/2001/XMLSchema}string" />
- * </restriction>
- * </complexContent>
- * </complexType>
+ * type="{http://www.w3.org/2001/XMLSchema}string" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*/
public class SubjectLocalityImpl implements SubjectLocality {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/common/AccountUtils.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/common/AccountUtils.java
index b611f4e9bd..cdc1a57ec9 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/common/AccountUtils.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/common/AccountUtils.java
@@ -25,6 +25,7 @@
* $Id: AccountUtils.java,v 1.2 2008/06/25 05:47:45 qcheng Exp $
*
* Portions Copyrighted 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml2.common;
@@ -43,7 +44,7 @@
/**
* This class AccountUtils is a utility class for
- * setting and retrieving the SAML2 account federation information.
+ * setting and retrieving the SAML2 account federation information.
*/
public class AccountUtils {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/common/NameIDInfo.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/common/NameIDInfo.java
index bb82e492f5..5d1fdb6d76 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/common/NameIDInfo.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/common/NameIDInfo.java
@@ -24,6 +24,7 @@
*
* $Id: NameIDInfo.java,v 1.3 2008/06/25 05:47:45 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -40,24 +41,26 @@
* This multiple-valued attribute is used to store all information
* related to the name identifier, such as IDP, SP entity id, role, etc.
* Value format for this attribute:
- * ||||
- * ||||
- *
+ *
+ * <hosted_entity_id>|<remote_entity_id>|<idp_nameid>|<idp_nameid_qualifier>|
+ * <idp_nameid_format>|<sp_nameid>|<sp_nameid_qualifier>|<hosted_entity_role>|
+ * <is_affiliation>
* where:
- * : entity id for this hosted entity
- * : entity id for the remote entity
- * : name identifier for the IDP
- * : nameid qualifier for the IDP
- * : nameid format for the IDP
- * : name identifier for the SP/Affiliation
- * : nameid qualifier for the SP/Affiliation
- * : value of SPRole, IDPRole or DualRole.
- * : true for affiliation, false otherwise
+ * <hosted_entity_id> : entity id for this hosted entity
+ * <remote_entity_id> : entity id for the remote entity
+ * <idp_nameid> : name identifier for the IDP
+ * <idp_nameid_qualifier>: nameid qualifier for the IDP
+ * <idp_nameid_format> : nameid format for the IDP
+ * <sp_nameid> : name identifier for the SP/Affiliation
+ * <sp_nameid_qualifier> : nameid qualifier for the SP/Affiliation
+ * <hosted_entity_role> : value of SPRole, IDPRole or DualRole.
+ * <is_affiliation> : true for affiliation, false otherwise
* for example:
* http://www.sp.com|http://www.idp.com|
* vPQyHXLnSWLAVh2BoI3gdUrhanC1|http://www.idp.com|
* urn:oasis:names:tc:SAML:2.0:nameid-format:persistent|
* g6lD46kMqDGSsFPawoFrw4iNf86C|http://www.sp.com|SPRole|false
+ *
*/
public class NameIDInfo {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/common/NameIDInfoKey.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/common/NameIDInfoKey.java
index 5ef29ea034..591c2cafaa 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/common/NameIDInfoKey.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/common/NameIDInfoKey.java
@@ -24,6 +24,7 @@
*
* $Id: NameIDInfoKey.java,v 1.2 2008/06/25 05:47:45 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -38,14 +39,15 @@
* of ldap datastore, an equality index need to be created for this
* attribute for better search performance.
* Value format for this attribute:
- * ||
+ *
+ * <hosted_entity_id>|<remote_entity_id>|<idp_nameid>
* where:
- * : entity id for this hosted entity
- * : entity id for the remote entity
- * : name identifier for the IDP
+ * <hosted_entity_id> : entity id for this hosted entity
+ * <remote_entity_id> : entity id for the remote entity
+ * <idp_nameid> : name identifier for the IDP
* for example:
* http://www.sp1.com|http://www.idp1.com|vPQyHXLnSWLAVh2BoI3gdUrhanC1
- *
+ *
*/
public class NameIDInfoKey {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/common/SAML2Utils.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/common/SAML2Utils.java
index 2ca018b396..b95e6cdf13 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/common/SAML2Utils.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/common/SAML2Utils.java
@@ -24,7 +24,7 @@
*
* Portions Copyrighted 2010-2016 ForgeRock AS.
* Portions Copyrighted 2014 Nomura Research Institute, Ltd
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.saml2.common;
@@ -1104,7 +1104,7 @@ public static boolean isFedInfoExists(String userName, String hostEntityID,
* @param hostEntityID hosted EntityID.
* @param remoteEntityID remote EntityID.
* @param hostEntityRole the role of hosted entity.
- * @throws SAML2Exception if any failure.
+ * @throws SAML2Exception if any failure.
*/
public static Map getNameIDKeyMap(final NameID nameID,
final String hostEntityID,
@@ -2564,7 +2564,7 @@ public static SPAuthnContextMapper getSPAuthnContextMapper(
* @param reqIssuer Issuer of Request.
* @param requestId request ID
* @return true if issuer is valid.
- * @throws SAML2Exception
+ * @throws SAML2Exception if a SAML2 error occurs
*/
public static boolean verifyRequestIssuer(String realm, String hostEntity,
Issuer reqIssuer, String requestId)
@@ -2596,7 +2596,7 @@ public static boolean verifyRequestIssuer(String realm, String hostEntity,
* @param resIssuer Issuer of Response.
* @param requestId request ID for the response.
* @return true if issuer is valid.
- * @throws SAML2Exception
+ * @throws SAML2Exception if a SAML2 error occurs
*/
public static boolean verifyResponseIssuer(String realm, String hostEntity,
Issuer resIssuer, String requestId)
@@ -3532,7 +3532,7 @@ public static SPAttributeMapper getSPAttributeMapper(String realm, String spEnti
* @return a map of local attributes configuration map.
* This map will have a key as the SAML attribute name and the value
* is the local attribute.
- * @throws SAML2Exception if any failured.
+ * @throws SAML2Exception if any failured.
*/
public static Map getConfigAttributeMap(String realm, String hostEntityID,
String role) throws SAML2Exception {
@@ -4472,7 +4472,7 @@ private static void processCookies(Map headers,
/**
* Checks if the provided String is URLEncoded. Our logic is
* simple. If the string has % or + character we treat as URL encoded
- *
+ *
* TODO : Copied from AuthClientUtils, refactor
*
* @param s the String we want to check
@@ -4492,7 +4492,7 @@ private static boolean isURLEncoded(String s) {
/**
* Creates a Cookie with the cookieName,
* cookieValue for the cookie domains specified.
- *
+ *
* TODO: Copied from AuthClientUtils Refactor
*
* @param cookieName is the name of the cookie
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/common/SOAPCommunicator.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/common/SOAPCommunicator.java
index 900c312e42..d5bc33efb5 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/common/SOAPCommunicator.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/common/SOAPCommunicator.java
@@ -12,7 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2015 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.saml2.common;
@@ -78,7 +78,7 @@ public static SOAPCommunicator getInstance() {
* Opens a SOAP Connection.
*
* @return a new SOAPConnection
- * @throws if there was an exception creating the
+ * @throws SOAPException if there was an exception creating the
* SOAPConnection object.
*/
public SOAPConnection openSOAPConnection() throws SOAPException {
@@ -267,7 +267,7 @@ public SOAPMessage createSOAPFault(final String faultCode,
*
* @param request HttpServletRequest includes SOAP Message.
* @return SOAPMessage if request include any soap message in the header.
- * @throws IOException if error in creating input stream.
+ * @throws IOException if error in creating input stream.
* @throws SOAPException if error in creating soap message.
*/
public SOAPMessage getSOAPMessage(final HttpServletRequest request)
@@ -289,7 +289,7 @@ public SOAPMessage getSOAPMessage(final HttpServletRequest request)
* @param isClientMessage true if the message is sent from SOAP client to
* server.
* @return SOAPMessage if the peer send back any reply.
- * @throws SOAPException if error in creating soap message.
+ * @throws SOAPException if error in creating soap message.
* @throws SAML2Exception if error in creating soap message.
*/
public SOAPMessage sendSOAPMessage(final String xmlMessage,
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/ecp/impl/ECPRelayStateImpl.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/ecp/impl/ECPRelayStateImpl.java
index c74950c40d..0ce9d64897 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/ecp/impl/ECPRelayStateImpl.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/ecp/impl/ECPRelayStateImpl.java
@@ -24,6 +24,7 @@
*
* $Id: ECPRelayStateImpl.java,v 1.2 2008/06/25 05:47:46 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml2.ecp.impl;
@@ -175,7 +176,7 @@ public java.lang.String toXMLString() throws SAML2Exception {
* @param declareNS determines whether or not the namespace is declared
* within the Element.
* @return a String representation of this Object.
- * @exception SAML2Exception ,if it could not create String object.
+ * @exception SAML2Exception if it could not create String object.
*/
public String toXMLString(boolean includeNSPrefix,boolean declareNS)
throws SAML2Exception {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/ecp/impl/ECPRequestImpl.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/ecp/impl/ECPRequestImpl.java
index 9964596109..dfad55f7c4 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/ecp/impl/ECPRequestImpl.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/ecp/impl/ECPRequestImpl.java
@@ -24,6 +24,7 @@
*
* $Id: ECPRequestImpl.java,v 1.2 2008/06/25 05:47:47 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml2.ecp.impl;
@@ -256,7 +257,7 @@ public String toXMLString() throws SAML2Exception {
* @param declareNS determines whether or not the namespace is declared
* within the Element.
* @return a String representation of this Object.
- * @exception SAML2Exception ,if it could not create String object.
+ * @exception SAML2Exception if it could not create String object.
*/
public String toXMLString(boolean includeNSPrefix,boolean declareNS)
throws SAML2Exception {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/ecp/impl/ECPResponseImpl.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/ecp/impl/ECPResponseImpl.java
index de10c2f9ec..528b60ab71 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/ecp/impl/ECPResponseImpl.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/ecp/impl/ECPResponseImpl.java
@@ -24,6 +24,7 @@
*
* $Id: ECPResponseImpl.java,v 1.2 2008/06/25 05:47:47 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml2.ecp.impl;
@@ -177,7 +178,7 @@ public java.lang.String toXMLString() throws SAML2Exception {
* @param declareNS determines whether or not the namespace is declared
* within the Element.
* @return a String representation of this Object.
- * @exception SAML2Exception ,if it could not create String object.
+ * @exception SAML2Exception if it could not create String object.
*/
public String toXMLString(boolean includeNSPrefix,boolean declareNS)
throws SAML2Exception {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/meta/SAML2MetaManager.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/meta/SAML2MetaManager.java
index 10933eb89a..c022570ac6 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/meta/SAML2MetaManager.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/meta/SAML2MetaManager.java
@@ -25,6 +25,7 @@
* $Id: SAML2MetaManager.java,v 1.18 2009/10/28 23:58:58 exu Exp $
*
* Portions Copyrighted 2010-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml2.meta;
@@ -1516,7 +1517,7 @@ public String getEntityByMetaAlias(String metaAlias)
*
* @param realm The given realm.
* @return all the hosted entity metaAliases for a realm or an empty arrayList if not found.
- * @throws SAML2MetaException if unable to retrieve the entity ids.
+ * @throws SAML2MetaException if unable to retrieve the entity ids.
*/
public List getAllHostedMetaAliasesByRealm(String realm) throws SAML2MetaException {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/meta/SAML2MetaSecurityUtils.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/meta/SAML2MetaSecurityUtils.java
index 877be42ea8..a84ed74e14 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/meta/SAML2MetaSecurityUtils.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/meta/SAML2MetaSecurityUtils.java
@@ -25,6 +25,7 @@
* $Id: SAML2MetaSecurityUtils.java,v 1.6 2009/06/08 23:43:18 madan_ranganath Exp $
*
* Portions Copyrighted 2010-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml2.meta;
@@ -142,19 +143,21 @@ private static void initializeKeyStore() {
/**
* Signs the entity descriptor root element by the following rules:
*
- * - Hosted Entity
- *
- * - If there is a signature already on the EntityDescriptor, removes it, then signs the EntityDescriptor.
- *
- * - Simply signs the EntityDescriptor otherwise.
- *
- * - Remote Entity
- *
- * - If there is a signature already on the EntityDescriptor, then does not change it, but returns the
- * Document with the original signature.
- *
- * - Simply signs the EntityDescriptor otherwise
- *
+ * - Hosted Entity
+ *
+ * - If there is a signature already on the EntityDescriptor, removes it, then signs the EntityDescriptor.
+ *
+ * - Simply signs the EntityDescriptor otherwise.
+ *
+ *
+ * - Remote Entity
+ *
+ * - If there is a signature already on the EntityDescriptor, then does not change it, but returns the
+ * Document with the original signature.
+ *
+ * - Simply signs the EntityDescriptor otherwise
+ *
+ *
*
* If there is no extended metadata for the entity, the entity is considered as remote.
*
@@ -370,16 +373,18 @@ public static void verifySignature(Document doc)
/**
* Restores Base64 encoded format.
* JAXB will change
- *
- *
+ *
+ * <ds:X509Data>
+ * <ds:X509Certificate>
* .........
* .........
- *
- *
+ * </ds:X509Certificate>
+ * </ds:X509Data>
* to
- *
- * ..................
- *
+ * <ds:X509Data>
+ * <ds:X509Certificate>..................</ds:X509Certificate>
+ * </ds:X509Data>
+ *
*
* This method will restore the format.
* @param xmlstr The xml string containing element 'X509Certificate'.
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/meta/SAML2MetaUtils.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/meta/SAML2MetaUtils.java
index be2a0cfc33..b233c45c56 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/meta/SAML2MetaUtils.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/meta/SAML2MetaUtils.java
@@ -25,6 +25,7 @@
* $Id: SAML2MetaUtils.java,v 1.9 2009/09/21 17:28:12 exu Exp $
*
* Portions Copyrighted 2010-2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml2.meta;
@@ -247,8 +248,8 @@ public static Map> getAttributes(BaseConfigType config) {
/**
* Returns the realm by parsing the metaAlias. MetaAlias format is
*
- * <realm>/<any string without '/'> for non-root realm or
- * /<any string without '/'> for root realm.
+ * <realm>/<any string without '/'> for non-root realm or
+ * /<any string without '/'> for root realm.
*
* @param metaAlias The metaAlias.
* @return the realm associated with the metaAlias.
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/plugins/DefaultAttributeMapper.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/plugins/DefaultAttributeMapper.java
index 7e03a1fc29..2d08279698 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/plugins/DefaultAttributeMapper.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/plugins/DefaultAttributeMapper.java
@@ -24,6 +24,7 @@
*
* $Id: DefaultAttributeMapper.java,v 1.4 2008/06/25 05:47:50 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
/**
@@ -77,7 +78,7 @@ public DefaultAttributeMapper() {}
* @return a map of local attributes configuration map.
* This map will have a key as the SAML attribute name and the value
* is the local attribute.
- * @exception SAML2Exception if any failured.
+ * @exception SAML2Exception if any failured.
*/
public Map getConfigAttributeMap(String realm, String hostEntityID,
String role) throws SAML2Exception {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/plugins/IDPAccountMapper.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/plugins/IDPAccountMapper.java
index 9f06fd9076..26d0367250 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/plugins/IDPAccountMapper.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/plugins/IDPAccountMapper.java
@@ -25,6 +25,7 @@
* $Id: IDPAccountMapper.java,v 1.5 2008/06/25 05:47:51 qcheng Exp $
*
* Portions Copyrighted 2015-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml2.plugins;
@@ -35,7 +36,7 @@
/**
* The interface IDPAccountMapper is used to map the local identities to the SAML protocol
* objects and also the vice versa for some of the protocols for e.g. ManageNameIDRequest.
- *
+ *
* This mapper interface is used to map the identities only at the SAML Identity Provider. The
* implementation of this interface will be used by the SAML framework to retrieve the user's account
* federation information for constructing SAML protocol objects such as Assertion and also to find out
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/plugins/IDPAuthnContextMapper.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/plugins/IDPAuthnContextMapper.java
index a91b61fa2f..195c717b5b 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/plugins/IDPAuthnContextMapper.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/plugins/IDPAuthnContextMapper.java
@@ -24,6 +24,7 @@
*
* $Id: IDPAuthnContextMapper.java,v 1.6 2008/06/25 05:47:51 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -37,7 +38,7 @@
/**
* The interface IDPAuthnContextMapper creates an
- * IDPAuthnContextInfo based on the RequestAuthnContext from
+ * IDPAuthnContextInfo based on the RequestAuthnContext from
* the AuthnRequest sent by a Service Provider and the AuthnContext
* configuration at the IDP entity config.
* The implementation of this class will be used by the IDP to find out
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/profile/AssertionIDRequestUtil.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/profile/AssertionIDRequestUtil.java
index e5f94cd264..f18d473bef 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/profile/AssertionIDRequestUtil.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/profile/AssertionIDRequestUtil.java
@@ -25,7 +25,7 @@
* $Id: AssertionIDRequestUtil.java,v 1.8 2009/06/12 22:21:40 mallas Exp $
*
* Portions Copyrighted 2013-2016 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.saml2.profile;
@@ -141,7 +141,7 @@ public static Response sendAssertionIDRequest(
* returns Assertion coming from the Assertion ID Request
* Service.
*
- * @param assertionID the asssertionID object
+ * @param assertionID the asssertionID object
* @param samlAuthorityEntityID entity ID of SAML authority
* @param role SAML authority role, for example,
* SAML2Constants.ATTR_AUTH_ROLE,
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/profile/DiscoveryBootstrap.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/profile/DiscoveryBootstrap.java
index b4cf82ac35..27f870e8f7 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/profile/DiscoveryBootstrap.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/profile/DiscoveryBootstrap.java
@@ -25,6 +25,7 @@
* $Id: DiscoveryBootstrap.java,v 1.4 2008/12/05 00:18:31 exu Exp $
*
* Portions Copyrighted 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml2.profile;
@@ -131,7 +132,7 @@ public DiscoveryBootstrap(Object session, Subject sub,
/**
* Gets the discovery bootstrap resource offering for the user.
* @return Discovery Resource Offering String
- * @exception SAML2Exception if there's any failure.
+ * @exception SAML2Exception if there's any failure.
*/
private String getResourceOffering(String authnContextClassRef,
Subject subject, String wscID, String realm) throws SAML2Exception {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/profile/IDPSSOUtil.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/profile/IDPSSOUtil.java
index 2c4635e6f8..43fa3bb1cd 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/profile/IDPSSOUtil.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/profile/IDPSSOUtil.java
@@ -2913,7 +2913,7 @@ public static long getValidTimeofResponse(
* @param realm the realm name.
* @param idpEntityID the identity provider entity identifier
* @param response the SAMLv2 Response
- * @throws SAML2Exception if there is an
+ * @throws SAML2Exception if there is an
* error signing the response.
*/
private static void signResponse(String realm, String idpEntityID,
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/profile/IDPSingleLogout.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/profile/IDPSingleLogout.java
index d982167391..da2ecadf3d 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/profile/IDPSingleLogout.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/profile/IDPSingleLogout.java
@@ -25,6 +25,7 @@
* $Id: IDPSingleLogout.java,v 1.28 2009/11/25 01:20:47 madan_ranganath Exp $
*
* Portions Copyrighted 2010-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml2.profile;
@@ -1487,7 +1488,8 @@ private static void removeTransientNameIDFromCache(NameID nameID) {
*
* @return true if the request was misrouted and it was forwarded to
* the original server
- * @throws SAML2Exception, SessionException
+ * @throws SAML2Exception if a SAML2 error occurs
+ * @throws SessionException if a session error occurs
*/
private static boolean isMisroutedRequest(HttpServletRequest request,
HttpServletResponse response, PrintWriter out, Object session)
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/profile/NameIDMapping.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/profile/NameIDMapping.java
index 2efee6f720..c4e136424e 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/profile/NameIDMapping.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/profile/NameIDMapping.java
@@ -25,7 +25,7 @@
* $Id: NameIDMapping.java,v 1.6 2009/11/20 21:41:16 exu Exp $
*
* Portions Copyrighted 2013-2016 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.saml2.profile;
@@ -434,7 +434,6 @@ static private void setNameIDForNIMRequest(NameIDMappingRequest nimRequest,
* @return ManageNameIDServiceElement for the entity or null
* @throws SAML2MetaException if unable to retrieve the first identity
* provider's SSO configuration.
- * @throws SessionException invalid or expired single-sign-on session
*/
static public NameIDMappingServiceElement getNameIDMappingService(
String realm, String entityId, String binding)
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/profile/SPACSUtils.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/profile/SPACSUtils.java
index 53a9cbc135..01c30e1eda 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/profile/SPACSUtils.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/profile/SPACSUtils.java
@@ -26,7 +26,7 @@
*
* Portions Copyrighted 2010-2016 ForgeRock AS.
* Portions Copyrighted 2016 Nomura Research Institute, Ltd.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.saml2.profile;
@@ -151,7 +151,8 @@ private SPACSUtils() {}
* @param hostEntityId Entity ID of the hosted service provider
* @param metaManager SAML2MetaManager instance.
* @return ResponseInfo instance.
- * @throws SAML2Exception,IOException if it fails in the process.
+ * @throws SAML2Exception if it fails in the process.
+ * @throws IOException if it fails in the process.
*/
public static ResponseInfo getResponse(
HttpServletRequest request,
@@ -1602,7 +1603,7 @@ public static void saveInfoInMemory(SessionProvider sessionProvider,
* @param sessionProvider Session provider
* @param attrMap the Attribute Map
* @param session the valid session object
- * @throws com.sun.identity.plugin.session.SessionException
+ * @throws com.sun.identity.plugin.session.SessionException if a session error occurs
*/
public static void setAttrMapInSession(
SessionProvider sessionProvider,
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/profile/SPSSOFederate.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/profile/SPSSOFederate.java
index bc275565a3..588960f065 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/profile/SPSSOFederate.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/profile/SPSSOFederate.java
@@ -25,7 +25,7 @@
* $Id: SPSSOFederate.java,v 1.29 2009/11/24 21:53:28 madan_ranganath Exp $
*
* Portions Copyrighted 2011-2016 ForgeRock AS.
- * Portions Copyrighted 2025 3A Systems LLC.
+ * Portions Copyrighted 2025-2026 3A Systems LLC.
*/
package com.sun.identity.saml2.profile;
@@ -403,7 +403,7 @@ public static SPSSODescriptorElement getSPSSOForAuthnReq(String realm, String sp
* @param realm the realm the sp is configured in
* @param spEntityID the entity id of the sp to get the attributes map for
* @return a map of SAML2 Attributes with String keys mapped to a collection of values
- * @throws SAML2MetaException
+ * @throws SAML2MetaException if a SAML2 metadata error occurs
*/
public static Map> getAttrsMapForAuthnReq(String realm, String spEntityID)
throws SAML2MetaException {
@@ -434,12 +434,12 @@ public static IDPSSODescriptorElement getIDPSSOForAuthnReq(String realm, String
/**
* Gets the Post Binding message
*
- * @param idpsso
- * @param spsso
- * @param spConfigAttrsMap
- * @param authnRequest
- * @return
- * @throws SAML2Exception
+ * @param idpsso the standard metadata of the identity provider
+ * @param spsso the standard metadata of the service provider
+ * @param spConfigAttrsMap the extended configuration attributes of the service provider
+ * @param authnRequest the authentication request to be sent
+ * @return the post binding message as an HTML form string
+ * @throws SAML2Exception if a SAML2 error occurs
*/
public static String getPostBindingMsg(IDPSSODescriptorElement idpsso, SPSSODescriptorElement spsso,
Map spConfigAttrsMap, AuthnRequest authnRequest)
@@ -795,7 +795,7 @@ private static Issuer createIssuer(String spEntityID)
* @param ssourl the url for the single sign on request
* @param isForECP boolean to indicatge if the request originated from an ECP
* @return a new AuthnRequest object
- * @throws SAML2Exception
+ * @throws SAML2Exception if a SAML2 error occurs
*/
public static AuthnRequest createAuthnRequest(final HttpServletRequest request,
final HttpServletResponse response,
@@ -1260,7 +1260,7 @@ private static RequestedAuthnContext createReqAuthnContext(String realmName,
* @param queryString the query string
* @param certAlias the certificate alias
* @return the signed query string
- * @throws SAML2Exception
+ * @throws SAML2Exception if a SAML2 error occurs
*/
public static String signQueryString(final String queryString, final String certAlias)
throws SAML2Exception {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/Artifact.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/Artifact.java
index 9ced0601e7..eb4410bb31 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/Artifact.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/Artifact.java
@@ -25,6 +25,7 @@
* $Id: Artifact.java,v 1.2 2008/06/25 05:47:55 qcheng Exp $
*
* Portions Copyrighted 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -38,9 +39,8 @@
/**
* This class represents the Artifact element in
* SAMLv2 protocol schema.
- *
*
- * <element name="Artifact" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ * <element name="Artifact" type="{http://www.w3.org/2001/XMLSchema}string"/>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/ArtifactResolve.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/ArtifactResolve.java
index 905fcacbcf..7c3fbf6e4a 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/ArtifactResolve.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/ArtifactResolve.java
@@ -25,6 +25,7 @@
* $Id: ArtifactResolve.java,v 1.2 2008/06/25 05:47:56 qcheng Exp $
*
* Portions Copyrighted 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -40,17 +41,16 @@
* protocol message be returned in an ArtifactResponse message
* by specifying an artifact that represents the SAML protocol message.
* It has the complex type ArtifactResolveType.
- *
*
- * <complexType name="ArtifactResolveType">
- * <complexContent>
- * <extension base="{urn:oasis:names:tc:SAML:2.0:protocol}RequestAbstractType">
- * <sequence>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}Artifact"/>
- * </sequence>
- * </extension>
- * </complexContent>
- * </complexType>
+ * <complexType name="ArtifactResolveType">
+ * <complexContent>
+ * <extension base="{urn:oasis:names:tc:SAML:2.0:protocol}RequestAbstractType">
+ * <sequence>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}Artifact"/>
+ * </sequence>
+ * </extension>
+ * </complexContent>
+ * </complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/ArtifactResponse.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/ArtifactResponse.java
index 02cb490dc2..330d27abf7 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/ArtifactResponse.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/ArtifactResponse.java
@@ -25,6 +25,7 @@
* $Id: ArtifactResponse.java,v 1.2 2008/06/25 05:47:56 qcheng Exp $
*
* Portions Copyrighted 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -38,17 +39,16 @@
/**
* The ArtifactResopnse message has the complex type
* ArtifactResponseType.
- *
*
- * <complexType name="ArtifactResponseType">
- * <complexContent>
- * <extension base="{urn:oasis:names:tc:SAML:2.0:protocol}StatusResponseType">
- * <sequence>
- * <any/>
- * </sequence>
- * </extension>
- * </complexContent>
- * </complexType>
+ * <complexType name="ArtifactResponseType">
+ * <complexContent>
+ * <extension base="{urn:oasis:names:tc:SAML:2.0:protocol}StatusResponseType">
+ * <sequence>
+ * <any/>
+ * </sequence>
+ * </extension>
+ * </complexContent>
+ * </complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/AssertionIDRequest.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/AssertionIDRequest.java
index d31724cd20..e4434c35c0 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/AssertionIDRequest.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/AssertionIDRequest.java
@@ -26,6 +26,7 @@
*
*
* Portions Copyrighted 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -40,17 +41,16 @@
* This class represents the AssertionIDRequestType complex type.
* The following schema fragment specifies the expected
* content contained within this java content object.
- *
*
- * <complexType name="AssertionIDRequestType">
- * <complexContent>
- * <extension base="{urn:oasis:names:tc:SAML:2.0:protocol}RequestAbstractType">
- * <sequence>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}AssertionIDRef" maxOccurs="unbounded"/>
- * </sequence>
- * </extension>
- * </complexContent>
- * </complexType>
+ * <complexType name="AssertionIDRequestType">
+ * <complexContent>
+ * <extension base="{urn:oasis:names:tc:SAML:2.0:protocol}RequestAbstractType">
+ * <sequence>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}AssertionIDRef" maxOccurs="unbounded"/>
+ * </sequence>
+ * </extension>
+ * </complexContent>
+ * </complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/AttributeQuery.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/AttributeQuery.java
index 0df9a43c23..6755cd6ed4 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/AttributeQuery.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/AttributeQuery.java
@@ -25,6 +25,7 @@
* $Id: AttributeQuery.java,v 1.2 2008/06/25 05:47:56 qcheng Exp $
*
* Portions Copyrighted 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -40,17 +41,16 @@
* This class represents the AttributeQueryType complex type.
* The following schema fragment specifies the expected
* content contained within this java content object.
- *
*
- * <complexType name="AttributeQueryType">
- * <complexContent>
- * <extension base="{urn:oasis:names:tc:SAML:2.0:protocol}SubjectQueryAbstractType">
- * <sequence>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}Attribute" minOccurs="0" maxOccurs="unbounded"/>
- * </sequence>
- * </extension>
- * </complexContent>
- * </complexType>
+ * <complexType name="AttributeQueryType">
+ * <complexContent>
+ * <extension base="{urn:oasis:names:tc:SAML:2.0:protocol}SubjectQueryAbstractType">
+ * <sequence>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}Attribute" minOccurs="0" maxOccurs="unbounded"/>
+ * </sequence>
+ * </extension>
+ * </complexContent>
+ * </complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/AuthnQuery.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/AuthnQuery.java
index 33f790640e..91d04e0859 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/AuthnQuery.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/AuthnQuery.java
@@ -25,6 +25,7 @@
* $Id: AuthnQuery.java,v 1.2 2008/06/25 05:47:56 qcheng Exp $
*
* Portions Copyrighted 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -39,18 +40,17 @@
* This class represents the AuthnQueryType complex type.
* The following schema fragment specifies the expected
* content contained within this java content object.
- *
*
- * <complexType name="AuthnQueryType">
- * <complexContent>
- * <extension base="{urn:oasis:names:tc:SAML:2.0:protocol}SubjectQueryAbstractType">
- * <sequence>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}RequestedAuthnContext" minOccurs="0"/>
- * </sequence>
- * <attribute name="SessionIndex" type="string" use="optional"/>
- * </extension>
- * </complexContent>
- * </complexType>
+ * <complexType name="AuthnQueryType">
+ * <complexContent>
+ * <extension base="{urn:oasis:names:tc:SAML:2.0:protocol}SubjectQueryAbstractType">
+ * <sequence>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}RequestedAuthnContext" minOccurs="0"/>
+ * </sequence>
+ * <attribute name="SessionIndex" type="string" use="optional"/>
+ * </extension>
+ * </complexContent>
+ * </complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/AuthnRequest.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/AuthnRequest.java
index 237c1accc1..0a1f6e9fc0 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/AuthnRequest.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/AuthnRequest.java
@@ -25,6 +25,7 @@
* $Id: AuthnRequest.java,v 1.2 2008/06/25 05:47:56 qcheng Exp $
*
* Portions Copyrighted 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -213,7 +214,7 @@ public void setProtocolBinding(String protocolBinding)
* Returns the value of the AssertionConsumerServiceIndex
* attribute.
*
- * @return value of the AssertionConsumerServiceIndex
+ * @return value of the AssertionConsumerServiceIndex
* attribute.
* @see #setAssertionConsumerServiceIndex(Integer)
*/
@@ -236,7 +237,7 @@ public void setAssertionConsumerServiceIndex(Integer index)
* Returns the value of the AttributeConsumingServiceIndex
* attribute.
*
- * @return value of the AttributeConsumingServiceIndex
+ * @return value of the AttributeConsumingServiceIndex
* attribute.
* @see #setAttributeConsumingServiceIndex(Integer)
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/LogoutRequest.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/LogoutRequest.java
index 71a70a4ed0..3a7fb41643 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/LogoutRequest.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/LogoutRequest.java
@@ -25,6 +25,7 @@
* $Id: LogoutRequest.java,v 1.2 2008/06/25 05:47:56 qcheng Exp $
*
* Portions Copyrighted 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -43,26 +44,26 @@
* message to indicate that a session has been terminated.
*
*
- * <element name="LogoutRequest" type="{urn:oasis:names:tc:SAML:2.0:protocol}LogoutRequestType"/>
+ * <element name="LogoutRequest" type="{urn:oasis:names:tc:SAML:2.0:protocol}LogoutRequestType"/>
*
*
*
- * <complexType name="LogoutRequestType">
- * <complexContent>
- * <extension base="{urn:oasis:names:tc:SAML:2.0:protocol}RequestAbstractType">
- * <sequence>
- * <choice>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}BaseID"/>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}NameID"/>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}EncryptedID"/>
- * </choice>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}SessionIndex" maxOccurs="unbounded" minOccurs="0"/>
- * </sequence>
- * <attribute name="NotOnOrAfter" type="{http://www.w3.org/2001/XMLSchema}dateTime" />
- * <attribute name="Reason" type="{http://www.w3.org/2001/XMLSchema}string" />
- * </extension>
- * </complexContent>
- * </complexType>
+ * <complexType name="LogoutRequestType">
+ * <complexContent>
+ * <extension base="{urn:oasis:names:tc:SAML:2.0:protocol}RequestAbstractType">
+ * <sequence>
+ * <choice>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}BaseID"/>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}NameID"/>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}EncryptedID"/>
+ * </choice>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}SessionIndex" maxOccurs="unbounded" minOccurs="0"/>
+ * </sequence>
+ * <attribute name="NotOnOrAfter" type="{http://www.w3.org/2001/XMLSchema}dateTime" />
+ * <attribute name="Reason" type="{http://www.w3.org/2001/XMLSchema}string" />
+ * </extension>
+ * </complexContent>
+ * </complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/LogoutResponse.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/LogoutResponse.java
index d07bda446d..538ce48849 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/LogoutResponse.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/LogoutResponse.java
@@ -25,6 +25,7 @@
* $Id: LogoutResponse.java,v 1.2 2008/06/25 05:47:56 qcheng Exp $
*
* Portions Copyrighted 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -42,7 +43,7 @@
*
*
* <element name="LogoutResponse"
- * type="{urn:oasis:names:tc:SAML:2.0:protocol}StatusResponseType"/>
+ * type="{urn:oasis:names:tc:SAML:2.0:protocol}StatusResponseType"/>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/ManageNameIDRequest.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/ManageNameIDRequest.java
index a594d370ba..acca681d66 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/ManageNameIDRequest.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/ManageNameIDRequest.java
@@ -25,6 +25,7 @@
* $Id: ManageNameIDRequest.java,v 1.2 2008/06/25 05:47:57 qcheng Exp $
*
* Portions Copyrighted 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -40,25 +41,24 @@
* This class represents the ManageNameIDRequestType complex type.
* The following schema fragment specifies the expected
* content contained within this java content object.
- *
*
- * <complexType name="ManageNameIDRequestType">
- * <complexContent>
- * <extension base="{urn:oasis:names:tc:SAML:2.0:protocol}RequestAbstractType">
- * <sequence>
- * <choice>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}NameID"/>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}EncryptedID"/>
- * </choice>
- * <choice>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}NewID"/>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}NewEncryptedID"/>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}Terminate"/>
- * </choice>
- * </sequence>
- * </extension>
- * </complexContent>
- * </complexType>
+ * <complexType name="ManageNameIDRequestType">
+ * <complexContent>
+ * <extension base="{urn:oasis:names:tc:SAML:2.0:protocol}RequestAbstractType">
+ * <sequence>
+ * <choice>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}NameID"/>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}EncryptedID"/>
+ * </choice>
+ * <choice>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}NewID"/>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}NewEncryptedID"/>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}Terminate"/>
+ * </choice>
+ * </sequence>
+ * </extension>
+ * </complexContent>
+ * </complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/ManageNameIDResponse.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/ManageNameIDResponse.java
index 26db65f744..a4118581fc 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/ManageNameIDResponse.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/ManageNameIDResponse.java
@@ -25,6 +25,7 @@
* $Id: ManageNameIDResponse.java,v 1.2 2008/06/25 05:47:57 qcheng Exp $
*
* Portions Copyrighted 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -37,9 +38,8 @@
* This class represents the ManageNameIDResponse element declaration.
* The following schema fragment specifies the expected
* content contained within this java content object.
- *
*
- * <element name="ManageNameIDResponse" type="{urn:oasis:names:tc:SAML:2.0:protocol}StatusResponseType"/>
+ * <element name="ManageNameIDResponse" type="{urn:oasis:names:tc:SAML:2.0:protocol}StatusResponseType"/>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/NameIDMappingRequest.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/NameIDMappingRequest.java
index a123c0b368..993c538139 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/NameIDMappingRequest.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/NameIDMappingRequest.java
@@ -25,6 +25,7 @@
* $Id: NameIDMappingRequest.java,v 1.2 2008/06/25 05:47:57 qcheng Exp $
*
* Portions Copyrighted 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml2.protocol;
@@ -39,25 +40,24 @@
* This class represents the ManageNameIDRequestType complex type.
* The following schema fragment specifies the expected
* content contained within this java content object.
- *
*
- * <complexType name="ManageNameIDRequestType">
- * <complexContent>
- * <extension base="{urn:oasis:names:tc:SAML:2.0:protocol}RequestAbstractType">
- * <sequence>
- * <choice>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}NameID"/>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}EncryptedID"/>
- * </choice>
- * <choice>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}NewID"/>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}NewEncryptedID"/>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}Terminate"/>
- * </choice>
- * </sequence>
- * </extension>
- * </complexContent>
- * </complexType>
+ * <complexType name="ManageNameIDRequestType">
+ * <complexContent>
+ * <extension base="{urn:oasis:names:tc:SAML:2.0:protocol}RequestAbstractType">
+ * <sequence>
+ * <choice>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}NameID"/>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}EncryptedID"/>
+ * </choice>
+ * <choice>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}NewID"/>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}NewEncryptedID"/>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}Terminate"/>
+ * </choice>
+ * </sequence>
+ * </extension>
+ * </complexContent>
+ * </complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/NameIDMappingResponse.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/NameIDMappingResponse.java
index fd24e7f9f3..c3622380b8 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/NameIDMappingResponse.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/NameIDMappingResponse.java
@@ -25,6 +25,7 @@
* $Id: NameIDMappingResponse.java,v 1.2 2008/06/25 05:47:57 qcheng Exp $
*
* Portions Copyrighted 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -40,18 +41,17 @@
* This class represents the NameIDMappingResponseType complex type.
* The following schema fragment specifies the expected
* content contained within this java content object.
- *
*
- * <complexType name="NameIDMappingResponseType">
- * <complexContent>
- * <extension base="{urn:oasis:names:tc:SAML:2.0:protocol}StatusResponseType">
- * <choice>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}NameID"/>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}EncryptedID"/>
- * </choice>
- * </extension>
- * </complexContent>
- * </complexType>
+ * <complexType name="NameIDMappingResponseType">
+ * <complexContent>
+ * <extension base="{urn:oasis:names:tc:SAML:2.0:protocol}StatusResponseType">
+ * <choice>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}NameID"/>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}EncryptedID"/>
+ * </choice>
+ * </extension>
+ * </complexContent>
+ * </complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/NewEncryptedID.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/NewEncryptedID.java
index 553d97a4ba..4e83de49f8 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/NewEncryptedID.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/NewEncryptedID.java
@@ -25,6 +25,7 @@
* $Id: NewEncryptedID.java,v 1.2 2008/06/25 05:47:57 qcheng Exp $
*
* Portions Copyrighted 2015-2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml2.protocol;
@@ -39,9 +40,8 @@
* Java content class for NewEncryptedID element declaration.
* The following schema fragment specifies the expected
* content contained within this java content object.
- *
*
- * <element name="NewEncryptedID" type="{urn:oasis:names:tc:SAML:2.0:assertion}EncryptedElementType"/>
+ * <element name="NewEncryptedID" type="{urn:oasis:names:tc:SAML:2.0:assertion}EncryptedElementType"/>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/ProtocolFactory.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/ProtocolFactory.java
index 47a5dec0e0..72dc68fc83 100755
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/ProtocolFactory.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/ProtocolFactory.java
@@ -24,6 +24,7 @@
*
* $Id: ProtocolFactory.java,v 1.5 2008/06/25 05:47:57 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml2.protocol;
@@ -341,7 +342,7 @@ public Extensions createExtensions(Element value) throws SAML2Exception {
*
* @param value XML String Representation of Extensions
* object.
- * @return instance of Extensions object.
+ * @return instance of Extensions object.
* @throws SAML2Exception if Extensions cannot be created.
*/
public Extensions createExtensions(String value) throws SAML2Exception {
@@ -409,8 +410,8 @@ public GetComplete createGetComplete(String value) throws SAML2Exception {
/**
* Returns the IDPEntry Object.
*
- * @return instance of IDPEntry object.
- * @throws SAML2Exception if IDPEntry cannot be created.
+ * @return instance of IDPEntry object.
+ * @throws SAML2Exception if IDPEntry cannot be created.
*/
public IDPEntry createIDPEntry() throws SAML2Exception {
Object obj = SAML2SDKUtils.getObjectInstance(
@@ -425,9 +426,9 @@ public IDPEntry createIDPEntry() throws SAML2Exception {
/**
* Returns the IDPEntry Object.
*
- * @param value Document Element of IDPEntry object.
- * @return instance of IDPEntry object.
- * @throws SAML2Exception if IDPEntry cannot be created.
+ * @param value Document Element of IDPEntry object.
+ * @return instance of IDPEntry object.
+ * @throws SAML2Exception if IDPEntry cannot be created.
*/
public IDPEntry createIDPEntry(Element value) throws SAML2Exception {
Object obj = SAML2SDKUtils.getObjectInstance(
@@ -442,9 +443,9 @@ public IDPEntry createIDPEntry(Element value) throws SAML2Exception {
/**
* Returns the IDPEntry Object.
*
- * @param value XML Representation of the IDPEntry object.
- * @return instance of IDPEntry Object.
- * @throws SAML2Exception if IDPEntry cannot be created.
+ * @param value XML Representation of the IDPEntry object.
+ * @return instance of IDPEntry Object.
+ * @throws SAML2Exception if IDPEntry cannot be created.
*/
public IDPEntry createIDPEntry(String value) throws SAML2Exception {
Object obj = SAML2SDKUtils.getObjectInstance(
@@ -459,8 +460,8 @@ public IDPEntry createIDPEntry(String value) throws SAML2Exception {
/**
* Returns the IDPList Object.
*
- * @return instance of IDPList Object.
- * @throws SAML2Exception if IDPList cannot be created.
+ * @return instance of IDPList Object.
+ * @throws SAML2Exception if IDPList cannot be created.
*/
public IDPList createIDPList() throws SAML2Exception {
Object obj = SAML2SDKUtils.getObjectInstance(
@@ -476,8 +477,8 @@ public IDPList createIDPList() throws SAML2Exception {
* Returns the IDPList Object.
*
* @param value Document Element of IDPList Object.
- * @return instance of IDPList Object.
- * @throws SAML2Exception if IDPList cannot be created.
+ * @return instance of IDPList Object.
+ * @throws SAML2Exception if IDPList cannot be created.
*/
public IDPList createIDPList(Element value) throws SAML2Exception {
Object obj = SAML2SDKUtils.getObjectInstance(
@@ -494,7 +495,7 @@ public IDPList createIDPList(Element value) throws SAML2Exception {
*
* @param value XML String Representation of IDPList Object.
* @return instance of IDPList Object.
- * @throws SAML2Exception if IDPList cannot be created.
+ * @throws SAML2Exception if IDPList cannot be created.
*/
public IDPList createIDPList(String value) throws SAML2Exception {
Object obj = SAML2SDKUtils.getObjectInstance(
@@ -510,7 +511,7 @@ public IDPList createIDPList(String value) throws SAML2Exception {
* Returns the NameIDPolicy Object.
*
* @return instance of NameIDPolicy Object.
- * @throws SAML2Exception if NameIDPolicy cannot be created.
+ * @throws SAML2Exception if NameIDPolicy cannot be created.
*/
public NameIDPolicy createNameIDPolicy() throws SAML2Exception {
Object obj = SAML2SDKUtils.getObjectInstance(
@@ -527,7 +528,7 @@ public NameIDPolicy createNameIDPolicy() throws SAML2Exception {
*
* @param value Document Element of NameIDPolicy Object.
* @return instance of NameIDPolicy Object.
- * @throws SAML2Exception if NameIDPolicy cannot be created.
+ * @throws SAML2Exception if NameIDPolicy cannot be created.
*/
public NameIDPolicy createNameIDPolicy(Element value) throws SAML2Exception {
Object obj = SAML2SDKUtils.getObjectInstance(
@@ -545,7 +546,7 @@ public NameIDPolicy createNameIDPolicy(Element value) throws SAML2Exception {
* @param value XML String Representation of NameIDPolicy
* object.
* @return instance of NameIDPolicy object.
- * @throws SAML2Exception if NameIDPolicy cannot be created.
+ * @throws SAML2Exception if NameIDPolicy cannot be created.
*/
public NameIDPolicy createNameIDPolicy(String value) throws SAML2Exception {
Object obj = SAML2SDKUtils.getObjectInstance(
@@ -561,7 +562,7 @@ public NameIDPolicy createNameIDPolicy(String value) throws SAML2Exception {
* Returns the RequesterID Object.
*
* @return instance of RequesterID Object.
- * @throws SAML2Exception if RequesterID cannot be created.
+ * @throws SAML2Exception if RequesterID cannot be created.
*/
public RequesterID createRequesterID() throws SAML2Exception {
Object obj = SAML2SDKUtils.getObjectInstance(
@@ -578,7 +579,7 @@ public RequesterID createRequesterID() throws SAML2Exception {
*
* @param value Document Element of RequesterID Object.
* @return instance of RequesterID Object.
- * @throws SAML2Exception if RequesterID cannot be created.
+ * @throws SAML2Exception if RequesterID cannot be created.
*/
public RequesterID createRequesterID(Element value) throws SAML2Exception {
Object obj = SAML2SDKUtils.getObjectInstance(
@@ -596,7 +597,7 @@ public RequesterID createRequesterID(Element value) throws SAML2Exception {
* @param value XML String Representation of RequesterID
* object.
* @return instance of RequesterID Object.
- * @throws SAML2Exception if RequesterID cannot be created.
+ * @throws SAML2Exception if RequesterID cannot be created.
*/
public RequesterID createRequesterID(String value) throws SAML2Exception {
Object obj = SAML2SDKUtils.getObjectInstance(
@@ -612,7 +613,7 @@ public RequesterID createRequesterID(String value) throws SAML2Exception {
* Returns the Scoping Object.
*
* @return instance of Scoping Object.
- * @throws SAML2Exception if Scoping cannot be created.
+ * @throws SAML2Exception if Scoping cannot be created.
*/
public Scoping createScoping() throws SAML2Exception {
Object obj = SAML2SDKUtils.getObjectInstance(
@@ -629,7 +630,7 @@ public Scoping createScoping() throws SAML2Exception {
*
* @param value Document Element of Scoping Object.
* @return instance of Scoping Object.
- * @throws SAML2Exception if Scoping cannot be created.
+ * @throws SAML2Exception if Scoping cannot be created.
*/
public Scoping createScoping(Element value) throws SAML2Exception {
Object obj = SAML2SDKUtils.getObjectInstance(
@@ -646,7 +647,7 @@ public Scoping createScoping(Element value) throws SAML2Exception {
*
* @param value XML String Representation of Scoping Object.
* @return instance of Scoping Object.
- * @throws SAML2Exception if Scoping cannot be created.
+ * @throws SAML2Exception if Scoping cannot be created.
*/
public Scoping createScoping(String value) throws SAML2Exception {
Object obj = SAML2SDKUtils.getObjectInstance(
@@ -841,7 +842,7 @@ public NewID createNewID(Element value)
/**
* Returns an new identifier object.
*
- * @param value of the NewID.
+ * @param value of the NewID.
* @throws SAML2Exception if it failed to instantiate the object.
* @return an immutable requested authentication context object.
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/RequestedAuthnContext.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/RequestedAuthnContext.java
index ba3b5b8b7b..6972a68920 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/RequestedAuthnContext.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/RequestedAuthnContext.java
@@ -25,6 +25,7 @@
* $Id: RequestedAuthnContext.java,v 1.2 2008/06/25 05:47:57 qcheng Exp $
*
* Portions Copyrighted 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -39,9 +40,8 @@
* Java content class for RequestedAuthnContext element declaration.
* The following schema fragment specifies the expected
* content contained within this java content object.
- *
*
- * <element name="RequestedAuthnContext" type="{urn:oasis:names:tc:SAML:2.0:protocol}RequestedAuthnContextType"/>
+ * <element name="RequestedAuthnContext" type="{urn:oasis:names:tc:SAML:2.0:protocol}RequestedAuthnContextType"/>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/RequesterID.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/RequesterID.java
index 4e0846ffcd..be94bde829 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/RequesterID.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/RequesterID.java
@@ -25,6 +25,7 @@
* $Id: RequesterID.java,v 1.2 2008/06/25 05:47:57 qcheng Exp $
*
* Portions Copyrighted 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -57,7 +58,7 @@ public interface RequesterID {
/**
* Sets the value of the RequesterID URI.
*
- * @param value of the RequesterID URI.
+ * @param value of the RequesterID URI.
* @throws SAML2Exception if the object is immutable.
* @see #getValue
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/Response.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/Response.java
index 01d93cb7ba..323ccdd120 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/Response.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/Response.java
@@ -25,6 +25,7 @@
* $Id: Response.java,v 1.2 2008/06/25 05:47:57 qcheng Exp $
*
* Portions Copyrighted 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -40,18 +41,17 @@
* The Response message element is used when a response consists
* of a list of zero or more assertions that satisfy the request. It has the
* complex type ResponseType.
- *
*
- * <complexType name="ResponseType">
- * <complexContent>
- * <extension base="{urn:oasis:names:tc:SAML:2.0:protocol}StatusResponseType">
- * <choice maxOccurs="unbounded" minOccurs="0">
- * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}Assertion"/>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}EncryptedAssertion"/>
- * </choice>
- * </extension>
- * </complexContent>
- * </complexType>
+ * <complexType name="ResponseType">
+ * <complexContent>
+ * <extension base="{urn:oasis:names:tc:SAML:2.0:protocol}StatusResponseType">
+ * <choice maxOccurs="unbounded" minOccurs="0">
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}Assertion"/>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}EncryptedAssertion"/>
+ * </choice>
+ * </extension>
+ * </complexContent>
+ * </complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/SessionIndex.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/SessionIndex.java
index f946c7a195..bb9d9f422f 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/SessionIndex.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/SessionIndex.java
@@ -25,6 +25,7 @@
* $Id: SessionIndex.java,v 1.2 2008/06/25 05:47:58 qcheng Exp $
*
* Portions Copyrighted 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -41,7 +42,7 @@
* of a authenticated principal.
*
*
- * <element name="SessionIndex" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ * <element name="SessionIndex" type="{http://www.w3.org/2001/XMLSchema}string"/>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/Status.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/Status.java
index e74fd8038b..7e081ed766 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/Status.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/Status.java
@@ -25,6 +25,7 @@
* $Id: Status.java,v 1.2 2008/06/25 05:47:58 qcheng Exp $
*
* Portions Copyrighted 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -39,17 +40,17 @@
* SAML protocol schema.
*
*
- * <complexType name="StatusType">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}StatusCode"/>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}StatusMessage" minOccurs="0"/>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}StatusDetail" minOccurs="0"/>
- * </sequence>
- * </restriction>
- * </complexContent>
- * </complexType>
+ * <complexType name="StatusType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}StatusCode"/>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}StatusMessage" minOccurs="0"/>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}StatusDetail" minOccurs="0"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/StatusCode.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/StatusCode.java
index 3d6d5093df..3703245e04 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/StatusCode.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/StatusCode.java
@@ -25,6 +25,7 @@
* $Id: StatusCode.java,v 1.2 2008/06/25 05:47:58 qcheng Exp $
*
* Portions Copyrighted 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -41,16 +42,16 @@
* representing the status of the corresponding request.
*
*
- * <complexType name="StatusCodeType">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}StatusCode" minOccurs="0"/>
- * </sequence>
- * <attribute name="Value" use="required" type="{http://www.w3.org/2001/XMLSchema}anyURI" />
- * </restriction>
- * </complexContent>
- * </complexType>
+ * <complexType name="StatusCodeType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}StatusCode" minOccurs="0"/>
+ * </sequence>
+ * <attribute name="Value" use="required" type="{http://www.w3.org/2001/XMLSchema}anyURI" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/StatusDetail.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/StatusDetail.java
index ec5cab4bae..51a743d9d4 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/StatusDetail.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/StatusDetail.java
@@ -25,6 +25,7 @@
* $Id: StatusDetail.java,v 1.2 2008/06/25 05:47:58 qcheng Exp $
*
* Portions Copyrighted 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -41,15 +42,15 @@
* information concerning the status of the request.
*
*
- * <complexType name="StatusDetailType">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <any/>
- * </sequence>
- * </restriction>
- * </complexContent>
- * </complexType>
+ * <complexType name="StatusDetailType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <any/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/StatusMessage.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/StatusMessage.java
index 713e24605f..42a15549c8 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/StatusMessage.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/StatusMessage.java
@@ -25,6 +25,7 @@
* $Id: StatusMessage.java,v 1.2 2008/06/25 05:47:58 qcheng Exp $
*
* Portions Copyrighted 2016 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -41,7 +42,7 @@
* returned to an operator.
*
*
- * <element name="StatusMessage" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ * <element name="StatusMessage" type="{http://www.w3.org/2001/XMLSchema}string"/>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/StatusResponse.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/StatusResponse.java
index 5abb2ba2ae..f04ff48293 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/StatusResponse.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/StatusResponse.java
@@ -25,6 +25,7 @@
* $Id: StatusResponse.java,v 1.2 2008/06/25 05:47:58 qcheng Exp $
*
* Portions Copyrighted 2015 ForgeRock AS.
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
package com.sun.identity.saml2.protocol;
@@ -44,24 +45,24 @@
* attributes and elements that are associated with all SAML responses.
*
*
- * <complexType name="StatusResponseType">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}Issuer" minOccurs="0"/>
- * <element ref="{http://www.w3.org/2000/09/xmldsig#}Signature" minOccurs="0"/>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}Extensions" minOccurs="0"/>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}Status"/>
- * </sequence>
- * <attribute name="Consent" type="{http://www.w3.org/2001/XMLSchema}anyURI" />
- * <attribute name="Destination" type="{http://www.w3.org/2001/XMLSchema}anyURI" />
- * <attribute name="ID" use="required" type="{http://www.w3.org/2001/XMLSchema}ID" />
- * <attribute name="InResponseTo" type="{http://www.w3.org/2001/XMLSchema}NCName" />
- * <attribute name="IssueInstant" use="required" type="{http://www.w3.org/2001/XMLSchema}dateTime" />
- * <attribute name="Version" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
- * </restriction>
- * </complexContent>
- * </complexType>
+ * <complexType name="StatusResponseType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}Issuer" minOccurs="0"/>
+ * <element ref="{http://www.w3.org/2000/09/xmldsig#}Signature" minOccurs="0"/>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}Extensions" minOccurs="0"/>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}Status"/>
+ * </sequence>
+ * <attribute name="Consent" type="{http://www.w3.org/2001/XMLSchema}anyURI" />
+ * <attribute name="Destination" type="{http://www.w3.org/2001/XMLSchema}anyURI" />
+ * <attribute name="ID" use="required" type="{http://www.w3.org/2001/XMLSchema}ID" />
+ * <attribute name="InResponseTo" type="{http://www.w3.org/2001/XMLSchema}NCName" />
+ * <attribute name="IssueInstant" use="required" type="{http://www.w3.org/2001/XMLSchema}dateTime" />
+ * <attribute name="Version" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/SubjectQueryAbstract.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/SubjectQueryAbstract.java
index 7a80646999..2add77e77c 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/SubjectQueryAbstract.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/SubjectQueryAbstract.java
@@ -24,6 +24,7 @@
*
* $Id: SubjectQueryAbstract.java,v 1.2 2008/06/25 05:47:58 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -37,17 +38,16 @@
* This class represents the SubjectQueryAbstractType complex type.
* The following schema fragment specifies the expected
* content contained within this java content object.
- *
*
- * <complexType name="SubjectQueryAbstractType">
- * <complexContent>
- * <extension base="{urn:oasis:names:tc:SAML:2.0:protocol}RequestAbstractType">
- * <sequence>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}Subject"/>
- * </sequence>
- * </extension>
- * </complexContent>
- * </complexType>
+ * <complexType name="SubjectQueryAbstractType">
+ * <complexContent>
+ * <extension base="{urn:oasis:names:tc:SAML:2.0:protocol}RequestAbstractType">
+ * <sequence>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}Subject"/>
+ * </sequence>
+ * </extension>
+ * </complexContent>
+ * </complexType>
*
*
*
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/ArtifactImpl.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/ArtifactImpl.java
index 7eca5bab08..0ec3c2358a 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/ArtifactImpl.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/ArtifactImpl.java
@@ -24,6 +24,7 @@
*
* $Id: ArtifactImpl.java,v 1.2 2008/06/25 05:47:58 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -43,7 +44,6 @@
/**
* This class implements interface Artifact. It models
* type urn:oasis:names:tc:SAML:2.0:artifact-04 Artifact.
- *
*
* SAML_artifact := B64(TypeCode EndpointIndex RemainingArtifact)
* TypeCode := Byte1Byte2
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/ArtifactResolveImpl.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/ArtifactResolveImpl.java
index 7bb9ab84a7..db7bf3d6de 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/ArtifactResolveImpl.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/ArtifactResolveImpl.java
@@ -24,6 +24,7 @@
*
* $Id: ArtifactResolveImpl.java,v 1.2 2008/06/25 05:47:58 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -64,17 +65,16 @@
* protocol message be returned in an ArtifactResponse message
* by specifying an artifact that represents the SAML protocol message.
* It has the complex type ArtifactResolveType.
- *
*
- * <complexType name="ArtifactResolveType">
- * <complexContent>
- * <extension base="{urn:oasis:names:tc:SAML:2.0:protocol}RequestAbstractType">
- * <sequence>
- * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}Artifact"/>
- * </sequence>
- * </extension>
- * </complexContent>
- * </complexType>
+ * <complexType name="ArtifactResolveType">
+ * <complexContent>
+ * <extension base="{urn:oasis:names:tc:SAML:2.0:protocol}RequestAbstractType">
+ * <sequence>
+ * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}Artifact"/>
+ * </sequence>
+ * </extension>
+ * </complexContent>
+ * </complexType>
*
*/
public class ArtifactResolveImpl extends RequestAbstractImpl
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/ArtifactResponseImpl.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/ArtifactResponseImpl.java
index fc2c9ed3f7..67e8bacfa6 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/ArtifactResponseImpl.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/ArtifactResponseImpl.java
@@ -24,6 +24,7 @@
*
* $Id: ArtifactResponseImpl.java,v 1.2 2008/06/25 05:47:59 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -57,17 +58,16 @@
/**
* The ArtifactResopnse message has the complex type
* ArtifactResponseType.
- *
*
- * <complexType name="ArtifactResponseType">
- * <complexContent>
- * <extension base="{urn:oasis:names:tc:SAML:2.0:protocol}StatusResponseType">
- * <sequence>
- * <any/>
- * </sequence>
- * </extension>
- * </complexContent>
- * </complexType>
+ * <complexType name="ArtifactResponseType">
+ * <complexContent>
+ * <extension base="{urn:oasis:names:tc:SAML:2.0:protocol}StatusResponseType">
+ * <sequence>
+ * <any/>
+ * </sequence>
+ * </extension>
+ * </complexContent>
+ * </complexType>
*
*/
public class ArtifactResponseImpl extends StatusResponseImpl
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/AssertionIDRequestImpl.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/AssertionIDRequestImpl.java
index caad0d6fb6..93385cab86 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/AssertionIDRequestImpl.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/AssertionIDRequestImpl.java
@@ -24,6 +24,7 @@
*
* $Id: AssertionIDRequestImpl.java,v 1.2 2008/06/25 05:47:59 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -50,9 +51,8 @@
* schema.
* The following schema fragment specifies the expected
* content contained within this java content object.
- *
*
- * <element name="AssertionIDRequest" type="{urn:oasis:names:tc:SAML:2.0:protocol}AssertionIDRequestType"/>
+ * <element name="AssertionIDRequest" type="{urn:oasis:names:tc:SAML:2.0:protocol}AssertionIDRequestType"/>
*
*
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/AuthnRequestImpl.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/AuthnRequestImpl.java
index f7df997220..faa0fcf45c 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/AuthnRequestImpl.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/AuthnRequestImpl.java
@@ -24,6 +24,7 @@
*
* $Id: AuthnRequestImpl.java,v 1.8 2009/06/09 20:28:32 exu Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -52,8 +53,8 @@
/**
- * The AuthnRequestImpl implements the
- *
AuthnRequest interface , defines methods for
+ * The AuthnRequestImpl implements the
+ * AuthnRequest interface , defines methods for
* properties required by a saml request.
*/
@@ -351,7 +352,7 @@ public void setAssertionConsumerServiceURL(String url)
* Returns the value of the AssertionConsumerServiceIndex
* attribute.
*
- * @return value of the AssertionConsumerServiceIndex
+ * @return value of the AssertionConsumerServiceIndex
* attribute.
* @see #setAssertionConsumerServiceIndex(Integer)
*/
@@ -382,7 +383,7 @@ public void setAssertionConsumerServiceIndex(Integer index)
* Returns the value of the AttributeConsumingServiceIndex
* attribute.
*
- * @return value of the AttributeConsumingServiceIndex
+ * @return value of the AttributeConsumingServiceIndex
* attribute.
* @see #setAttributeConsumingServiceIndex(Integer)
*/
@@ -449,7 +450,7 @@ public java.lang.String toXMLString() throws SAML2Exception {
* qualifier is prepended to the Element when converted
* @param declareNS determines whether or not the namespace is declared
* within the Element.
- * @exception SAML2Exception ,if it could not create String object.
+ * @exception SAML2Exception if it could not create String object.
* @return a String representation of this Object.
**/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/GetCompleteImpl.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/GetCompleteImpl.java
index 760cd22aca..d4c8db9f5e 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/GetCompleteImpl.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/GetCompleteImpl.java
@@ -24,6 +24,7 @@
*
* $Id: GetCompleteImpl.java,v 1.2 2008/06/25 05:47:59 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -94,9 +95,9 @@ public String getValue() {
}
/**
- * Sets the value of the GetComplete URI.
+ * Sets the value of the GetComplete URI.
*
- * @param value new value of the GetComplete URI.
+ * @param value new value of the GetComplete URI.
* @throws SAML2Exception if the object is immutable.
* @see #getValue
*/
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/IDPEntryImpl.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/IDPEntryImpl.java
index 920e269650..b30a5af6ae 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/IDPEntryImpl.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/IDPEntryImpl.java
@@ -24,6 +24,7 @@
*
* $Id: IDPEntryImpl.java,v 1.2 2008/06/25 05:47:59 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -62,8 +63,8 @@ public IDPEntryImpl() {
/**
* Constructor to create IDPEntry Object.
*
- * @param element Document Element of IDPEntry object.
- * @throws SAML2Exception if IDPEntry cannot be created.
+ * @param element Document Element of IDPEntry object.
+ * @throws SAML2Exception if IDPEntry cannot be created.
*/
public IDPEntryImpl(Element element) throws SAML2Exception {
parseElement(element);
@@ -73,8 +74,8 @@ public IDPEntryImpl(Element element) throws SAML2Exception {
/**
* Constructor to create IDPEntry Object.
*
- * @param xmlString XML Representation of the IDPEntry object.
- * @throws SAML2Exception if IDPEntry cannot be created.
+ * @param xmlString XML Representation of the IDPEntry object.
+ * @throws SAML2Exception if IDPEntry cannot be created.
*/
public IDPEntryImpl(String xmlString) throws SAML2Exception {
diff --git a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/IDPListImpl.java b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/IDPListImpl.java
index bb02bbfd5f..41c1e1a06b 100644
--- a/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/IDPListImpl.java
+++ b/openam-federation/openam-federation-library/src/main/java/com/sun/identity/saml2/protocol/impl/IDPListImpl.java
@@ -24,6 +24,7 @@
*
* $Id: IDPListImpl.java,v 1.2 2008/06/25 05:47:59 qcheng Exp $
*
+ * Portions Copyrighted 2026 3A Systems, LLC
*/
@@ -70,7 +71,7 @@ public IDPListImpl() {
* Constructor to create the IDPList Object.
*
* @param element Document Element of IDPList Object.
- * @throws SAML2Exception if IDPList cannot be created.
+ * @throws SAML2Exception if IDPList cannot be created.
*/
public IDPListImpl(Element element) throws SAML2Exception {
@@ -82,7 +83,7 @@ public IDPListImpl(Element element) throws SAML2Exception {
*
* @param xmlString the XML String Representation of
* IDPList Object.
- * @throws SAML2Exception if IDPList cannot be created.
+ * @throws SAML2Exception if IDPList cannot be created.
*/
public IDPListImpl(String xmlString) throws SAML2Exception {
@@ -132,7 +133,7 @@ public GetComplete getGetComplete() {
}
/**
- * Sets the GetComplete Object.
+ * Sets the