diff --git a/java/src/org/openqa/selenium/federatedcredentialmanagement/FederatedCredentialManagementAccount.java b/java/src/org/openqa/selenium/federatedcredentialmanagement/FederatedCredentialManagementAccount.java index 83ce598e5119e..ff9248a2eb7f5 100644 --- a/java/src/org/openqa/selenium/federatedcredentialmanagement/FederatedCredentialManagementAccount.java +++ b/java/src/org/openqa/selenium/federatedcredentialmanagement/FederatedCredentialManagementAccount.java @@ -18,6 +18,8 @@ package org.openqa.selenium.federatedcredentialmanagement; import java.util.Map; +import org.jspecify.annotations.NullMarked; +import org.jspecify.annotations.Nullable; /** * Represents an account displayed in a FedCM account list. @@ -27,29 +29,30 @@ * @see * https://w3c-fedid.github.io/FedCM/#webdriver-accountlist */ +@NullMarked public class FederatedCredentialManagementAccount { - private final String accountId; - private final String email; - private final String name; - private final String givenName; - private final String pictureUrl; + private final @Nullable String accountId; + private final @Nullable String email; + private final @Nullable String name; + private final @Nullable String givenName; + private final @Nullable String pictureUrl; /** * The config URL of the identity provider that provided this account. * *
This allows identifying the IDP in multi-IDP cases. */ - private final String idpConfigUrl; + private final @Nullable String idpConfigUrl; /** * The login state for this account. * *
One of LOGIN_STATE_SIGNIN and LOGIN_STATE_SIGNUP.
*/
- private final String loginState;
+ private final @Nullable String loginState;
- private final String termsOfServiceUrl;
- private final String privacyPolicyUrl;
+ private final @Nullable String termsOfServiceUrl;
+ private final @Nullable String privacyPolicyUrl;
public static final String LOGIN_STATE_SIGNIN = "SignIn";
public static final String LOGIN_STATE_SIGNUP = "SignUp";
@@ -66,39 +69,39 @@ public FederatedCredentialManagementAccount(Map One of DIALOG_TYPE_ACCOUNT_LIST and DIALOG_TYPE_AUTO_REAUTH.
*/
- String getDialogType();
+ @Nullable String getDialogType();
/** Returns the title of the dialog. */
- String getTitle();
+ @Nullable String getTitle();
/** Returns the subtitle of the dialog or null if none. */
- String getSubtitle();
+ @Nullable String getSubtitle();
void clickDialog();
diff --git a/java/src/org/openqa/selenium/federatedcredentialmanagement/HasFederatedCredentialManagement.java b/java/src/org/openqa/selenium/federatedcredentialmanagement/HasFederatedCredentialManagement.java
index c7457a8b6a45a..501a52d6e05e7 100644
--- a/java/src/org/openqa/selenium/federatedcredentialmanagement/HasFederatedCredentialManagement.java
+++ b/java/src/org/openqa/selenium/federatedcredentialmanagement/HasFederatedCredentialManagement.java
@@ -17,10 +17,13 @@
package org.openqa.selenium.federatedcredentialmanagement;
+import org.jspecify.annotations.NullMarked;
+import org.jspecify.annotations.Nullable;
import org.openqa.selenium.Beta;
/** Used by classes to indicate that they can interact with FedCM dialogs. */
@Beta
+@NullMarked
public interface HasFederatedCredentialManagement {
/**
* Disables the promise rejection delay.
@@ -45,5 +48,5 @@ public interface HasFederatedCredentialManagement {
* Can be used with WebDriverWait like: wait.until(driver ->
* ((HasFederatedCredentialManagement) driver). getFederatedCredentialManagementDialog() != null);
*/
- FederatedCredentialManagementDialog getFederatedCredentialManagementDialog();
+ @Nullable FederatedCredentialManagementDialog getFederatedCredentialManagementDialog();
}