All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.amplifyuibuilder.model.ActionParameters Maven / Gradle / Ivy

Go to download

The AWS Java SDK for AWS Amplify UI Builder module holds the client classes that are used for communicating with AWS Amplify UI Builder Service

There is a newer version: 1.12.772
Show newest version
/*
 * Copyright 2019-2024 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
 * the License. A copy of the License is located at
 * 
 * http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
 * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
 * and limitations under the License.
 */
package com.amazonaws.services.amplifyuibuilder.model;

import java.io.Serializable;
import javax.annotation.Generated;
import com.amazonaws.protocol.StructuredPojo;
import com.amazonaws.protocol.ProtocolMarshaller;

/**
 * 

* Represents the event action configuration for an element of a Component or ComponentChild. * Use for the workflow feature in Amplify Studio that allows you to bind events and actions to components. * ActionParameters defines the action that is performed when an event occurs on the component. *

* * @see AWS * API Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class ActionParameters implements Serializable, Cloneable, StructuredPojo { /** *

* The type of navigation action. Valid values are url and anchor. This value is required * for a navigation action. *

*/ private ComponentProperty type; /** *

* The URL to the location to open. Specify this value for a navigation action. *

*/ private ComponentProperty url; /** *

* The HTML anchor link to the location to open. Specify this value for a navigation action. *

*/ private ComponentProperty anchor; /** *

* The element within the same component to modify when the action occurs. *

*/ private ComponentProperty target; /** *

* Specifies whether the user should be signed out globally. Specify this value for an auth sign out action. *

*/ private ComponentProperty global; /** *

* The name of the data model. Use when the action performs an operation on an Amplify DataStore model. *

*/ private String model; /** *

* The unique ID of the component that the ActionParameters apply to. *

*/ private ComponentProperty id; /** *

* A dictionary of key-value pairs mapping Amplify Studio properties to fields in a data model. Use when the action * performs an operation on an Amplify DataStore model. *

*/ private java.util.Map fields; /** *

* A key-value pair that specifies the state property name and its initial value. *

*/ private MutationActionSetStateParameter state; /** *

* The type of navigation action. Valid values are url and anchor. This value is required * for a navigation action. *

* * @param type * The type of navigation action. Valid values are url and anchor. This value is * required for a navigation action. */ public void setType(ComponentProperty type) { this.type = type; } /** *

* The type of navigation action. Valid values are url and anchor. This value is required * for a navigation action. *

* * @return The type of navigation action. Valid values are url and anchor. This value is * required for a navigation action. */ public ComponentProperty getType() { return this.type; } /** *

* The type of navigation action. Valid values are url and anchor. This value is required * for a navigation action. *

* * @param type * The type of navigation action. Valid values are url and anchor. This value is * required for a navigation action. * @return Returns a reference to this object so that method calls can be chained together. */ public ActionParameters withType(ComponentProperty type) { setType(type); return this; } /** *

* The URL to the location to open. Specify this value for a navigation action. *

* * @param url * The URL to the location to open. Specify this value for a navigation action. */ public void setUrl(ComponentProperty url) { this.url = url; } /** *

* The URL to the location to open. Specify this value for a navigation action. *

* * @return The URL to the location to open. Specify this value for a navigation action. */ public ComponentProperty getUrl() { return this.url; } /** *

* The URL to the location to open. Specify this value for a navigation action. *

* * @param url * The URL to the location to open. Specify this value for a navigation action. * @return Returns a reference to this object so that method calls can be chained together. */ public ActionParameters withUrl(ComponentProperty url) { setUrl(url); return this; } /** *

* The HTML anchor link to the location to open. Specify this value for a navigation action. *

* * @param anchor * The HTML anchor link to the location to open. Specify this value for a navigation action. */ public void setAnchor(ComponentProperty anchor) { this.anchor = anchor; } /** *

* The HTML anchor link to the location to open. Specify this value for a navigation action. *

* * @return The HTML anchor link to the location to open. Specify this value for a navigation action. */ public ComponentProperty getAnchor() { return this.anchor; } /** *

* The HTML anchor link to the location to open. Specify this value for a navigation action. *

* * @param anchor * The HTML anchor link to the location to open. Specify this value for a navigation action. * @return Returns a reference to this object so that method calls can be chained together. */ public ActionParameters withAnchor(ComponentProperty anchor) { setAnchor(anchor); return this; } /** *

* The element within the same component to modify when the action occurs. *

* * @param target * The element within the same component to modify when the action occurs. */ public void setTarget(ComponentProperty target) { this.target = target; } /** *

* The element within the same component to modify when the action occurs. *

* * @return The element within the same component to modify when the action occurs. */ public ComponentProperty getTarget() { return this.target; } /** *

* The element within the same component to modify when the action occurs. *

* * @param target * The element within the same component to modify when the action occurs. * @return Returns a reference to this object so that method calls can be chained together. */ public ActionParameters withTarget(ComponentProperty target) { setTarget(target); return this; } /** *

* Specifies whether the user should be signed out globally. Specify this value for an auth sign out action. *

* * @param global * Specifies whether the user should be signed out globally. Specify this value for an auth sign out action. */ public void setGlobal(ComponentProperty global) { this.global = global; } /** *

* Specifies whether the user should be signed out globally. Specify this value for an auth sign out action. *

* * @return Specifies whether the user should be signed out globally. Specify this value for an auth sign out action. */ public ComponentProperty getGlobal() { return this.global; } /** *

* Specifies whether the user should be signed out globally. Specify this value for an auth sign out action. *

* * @param global * Specifies whether the user should be signed out globally. Specify this value for an auth sign out action. * @return Returns a reference to this object so that method calls can be chained together. */ public ActionParameters withGlobal(ComponentProperty global) { setGlobal(global); return this; } /** *

* The name of the data model. Use when the action performs an operation on an Amplify DataStore model. *

* * @param model * The name of the data model. Use when the action performs an operation on an Amplify DataStore model. */ public void setModel(String model) { this.model = model; } /** *

* The name of the data model. Use when the action performs an operation on an Amplify DataStore model. *

* * @return The name of the data model. Use when the action performs an operation on an Amplify DataStore model. */ public String getModel() { return this.model; } /** *

* The name of the data model. Use when the action performs an operation on an Amplify DataStore model. *

* * @param model * The name of the data model. Use when the action performs an operation on an Amplify DataStore model. * @return Returns a reference to this object so that method calls can be chained together. */ public ActionParameters withModel(String model) { setModel(model); return this; } /** *

* The unique ID of the component that the ActionParameters apply to. *

* * @param id * The unique ID of the component that the ActionParameters apply to. */ public void setId(ComponentProperty id) { this.id = id; } /** *

* The unique ID of the component that the ActionParameters apply to. *

* * @return The unique ID of the component that the ActionParameters apply to. */ public ComponentProperty getId() { return this.id; } /** *

* The unique ID of the component that the ActionParameters apply to. *

* * @param id * The unique ID of the component that the ActionParameters apply to. * @return Returns a reference to this object so that method calls can be chained together. */ public ActionParameters withId(ComponentProperty id) { setId(id); return this; } /** *

* A dictionary of key-value pairs mapping Amplify Studio properties to fields in a data model. Use when the action * performs an operation on an Amplify DataStore model. *

* * @return A dictionary of key-value pairs mapping Amplify Studio properties to fields in a data model. Use when the * action performs an operation on an Amplify DataStore model. */ public java.util.Map getFields() { return fields; } /** *

* A dictionary of key-value pairs mapping Amplify Studio properties to fields in a data model. Use when the action * performs an operation on an Amplify DataStore model. *

* * @param fields * A dictionary of key-value pairs mapping Amplify Studio properties to fields in a data model. Use when the * action performs an operation on an Amplify DataStore model. */ public void setFields(java.util.Map fields) { this.fields = fields; } /** *

* A dictionary of key-value pairs mapping Amplify Studio properties to fields in a data model. Use when the action * performs an operation on an Amplify DataStore model. *

* * @param fields * A dictionary of key-value pairs mapping Amplify Studio properties to fields in a data model. Use when the * action performs an operation on an Amplify DataStore model. * @return Returns a reference to this object so that method calls can be chained together. */ public ActionParameters withFields(java.util.Map fields) { setFields(fields); return this; } /** * Add a single Fields entry * * @see ActionParameters#withFields * @returns a reference to this object so that method calls can be chained together. */ public ActionParameters addFieldsEntry(String key, ComponentProperty value) { if (null == this.fields) { this.fields = new java.util.HashMap(); } if (this.fields.containsKey(key)) throw new IllegalArgumentException("Duplicated keys (" + key.toString() + ") are provided."); this.fields.put(key, value); return this; } /** * Removes all the entries added into Fields. * * @return Returns a reference to this object so that method calls can be chained together. */ public ActionParameters clearFieldsEntries() { this.fields = null; return this; } /** *

* A key-value pair that specifies the state property name and its initial value. *

* * @param state * A key-value pair that specifies the state property name and its initial value. */ public void setState(MutationActionSetStateParameter state) { this.state = state; } /** *

* A key-value pair that specifies the state property name and its initial value. *

* * @return A key-value pair that specifies the state property name and its initial value. */ public MutationActionSetStateParameter getState() { return this.state; } /** *

* A key-value pair that specifies the state property name and its initial value. *

* * @param state * A key-value pair that specifies the state property name and its initial value. * @return Returns a reference to this object so that method calls can be chained together. */ public ActionParameters withState(MutationActionSetStateParameter state) { setState(state); return this; } /** * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be * redacted from this string using a placeholder value. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getType() != null) sb.append("Type: ").append(getType()).append(","); if (getUrl() != null) sb.append("Url: ").append(getUrl()).append(","); if (getAnchor() != null) sb.append("Anchor: ").append(getAnchor()).append(","); if (getTarget() != null) sb.append("Target: ").append(getTarget()).append(","); if (getGlobal() != null) sb.append("Global: ").append(getGlobal()).append(","); if (getModel() != null) sb.append("Model: ").append(getModel()).append(","); if (getId() != null) sb.append("Id: ").append(getId()).append(","); if (getFields() != null) sb.append("Fields: ").append(getFields()).append(","); if (getState() != null) sb.append("State: ").append(getState()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof ActionParameters == false) return false; ActionParameters other = (ActionParameters) obj; if (other.getType() == null ^ this.getType() == null) return false; if (other.getType() != null && other.getType().equals(this.getType()) == false) return false; if (other.getUrl() == null ^ this.getUrl() == null) return false; if (other.getUrl() != null && other.getUrl().equals(this.getUrl()) == false) return false; if (other.getAnchor() == null ^ this.getAnchor() == null) return false; if (other.getAnchor() != null && other.getAnchor().equals(this.getAnchor()) == false) return false; if (other.getTarget() == null ^ this.getTarget() == null) return false; if (other.getTarget() != null && other.getTarget().equals(this.getTarget()) == false) return false; if (other.getGlobal() == null ^ this.getGlobal() == null) return false; if (other.getGlobal() != null && other.getGlobal().equals(this.getGlobal()) == false) return false; if (other.getModel() == null ^ this.getModel() == null) return false; if (other.getModel() != null && other.getModel().equals(this.getModel()) == false) return false; if (other.getId() == null ^ this.getId() == null) return false; if (other.getId() != null && other.getId().equals(this.getId()) == false) return false; if (other.getFields() == null ^ this.getFields() == null) return false; if (other.getFields() != null && other.getFields().equals(this.getFields()) == false) return false; if (other.getState() == null ^ this.getState() == null) return false; if (other.getState() != null && other.getState().equals(this.getState()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getType() == null) ? 0 : getType().hashCode()); hashCode = prime * hashCode + ((getUrl() == null) ? 0 : getUrl().hashCode()); hashCode = prime * hashCode + ((getAnchor() == null) ? 0 : getAnchor().hashCode()); hashCode = prime * hashCode + ((getTarget() == null) ? 0 : getTarget().hashCode()); hashCode = prime * hashCode + ((getGlobal() == null) ? 0 : getGlobal().hashCode()); hashCode = prime * hashCode + ((getModel() == null) ? 0 : getModel().hashCode()); hashCode = prime * hashCode + ((getId() == null) ? 0 : getId().hashCode()); hashCode = prime * hashCode + ((getFields() == null) ? 0 : getFields().hashCode()); hashCode = prime * hashCode + ((getState() == null) ? 0 : getState().hashCode()); return hashCode; } @Override public ActionParameters clone() { try { return (ActionParameters) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } @com.amazonaws.annotation.SdkInternalApi @Override public void marshall(ProtocolMarshaller protocolMarshaller) { com.amazonaws.services.amplifyuibuilder.model.transform.ActionParametersMarshaller.getInstance().marshall(this, protocolMarshaller); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy