/* * 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 legal/CDDLv1.0.txt. See the License for the * specific language governing permission and limitations under the License. * * When distributing Covered Software, include this CDDL Header Notice in each file and include * the License file at 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 copyright [year] [name of copyright owner]". * * Copyright 2014 ForgeRock AS. */ package com.sun.identity.authentication.callbacks; import org.forgerock.util.Reject; /** * Adds a hidden value callback so that the login form can return values that the are not visually rendered on the page. * * @since 12.0.0 */ public class HiddenValueCallback implements javax.security.auth.callback.Callback, java.io.Serializable { private String value; private final String id; private final String defaultValue = ""; /** * Create a new HiddenValueCallback with the id as specified. * * @param id The id for the HiddenValueCallback when it is rendered as an HTML element. */ public HiddenValueCallback(String id) { Reject.ifNull(id, "A HiddenValueCallback must be given an id."); this.id = id; } /** * Create a new HiddenValueCallback with the id and initial value as specified. * * @param id The id for the HiddenValueCallback when it is rendered as an HTML element. * @param value The initial value for the HiddenValueCallback when it is rendered as an HTML element. */ public HiddenValueCallback(String id, String value) { Reject.ifNull(id, "A HiddenValueCallback must be given an id."); this.id = id; this.value = value; } /** * Get the value set on the HiddenValueCallback when it is sent in a REST request. * * @return The value set on the callback. */ public String getValue() { return value; } /** * Set the value on the HiddenValueCallback. * * @param value The value to set on the callback. */ public void setValue(String value) { this.value = value; } /** * Get the id for the HiddenValueCallback to use when it is rendered as an HTML element. * * @return The id for the callback. */ public String getId() { return id; } /** * Get the initial default value set on the HiddenValueCallback. * * @return The initial default value. */ public java.lang.String getDefaultValue() { return defaultValue; } }