/* * Copyright 2018-2023 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.managedblockchainquery.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.protocol.StructuredPojo; import com.amazonaws.protocol.ProtocolMarshaller; /** *

* The balance of the token. *

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

* The container for the identifier of the owner. *

*/ private OwnerIdentifier ownerIdentifier; /** *

* The identifier for the token, including the unique token ID and its blockchain network. *

*/ private TokenIdentifier tokenIdentifier; /** *

* The container of the token balance. *

*/ private String balance; /** *

* The time for when the TokenBalance is requested or the current time if a time is not provided in the request. *

* *

* This time will only be recorded up to the second. *

*
*/ private BlockchainInstant atBlockchainInstant; /** *

* The timestamp of the last transaction at which the balance for the token in the wallet was updated. *

*/ private BlockchainInstant lastUpdatedTime; /** *

* The container for the identifier of the owner. *

* * @param ownerIdentifier * The container for the identifier of the owner. */ public void setOwnerIdentifier(OwnerIdentifier ownerIdentifier) { this.ownerIdentifier = ownerIdentifier; } /** *

* The container for the identifier of the owner. *

* * @return The container for the identifier of the owner. */ public OwnerIdentifier getOwnerIdentifier() { return this.ownerIdentifier; } /** *

* The container for the identifier of the owner. *

* * @param ownerIdentifier * The container for the identifier of the owner. * @return Returns a reference to this object so that method calls can be chained together. */ public TokenBalance withOwnerIdentifier(OwnerIdentifier ownerIdentifier) { setOwnerIdentifier(ownerIdentifier); return this; } /** *

* The identifier for the token, including the unique token ID and its blockchain network. *

* * @param tokenIdentifier * The identifier for the token, including the unique token ID and its blockchain network. */ public void setTokenIdentifier(TokenIdentifier tokenIdentifier) { this.tokenIdentifier = tokenIdentifier; } /** *

* The identifier for the token, including the unique token ID and its blockchain network. *

* * @return The identifier for the token, including the unique token ID and its blockchain network. */ public TokenIdentifier getTokenIdentifier() { return this.tokenIdentifier; } /** *

* The identifier for the token, including the unique token ID and its blockchain network. *

* * @param tokenIdentifier * The identifier for the token, including the unique token ID and its blockchain network. * @return Returns a reference to this object so that method calls can be chained together. */ public TokenBalance withTokenIdentifier(TokenIdentifier tokenIdentifier) { setTokenIdentifier(tokenIdentifier); return this; } /** *

* The container of the token balance. *

* * @param balance * The container of the token balance. */ public void setBalance(String balance) { this.balance = balance; } /** *

* The container of the token balance. *

* * @return The container of the token balance. */ public String getBalance() { return this.balance; } /** *

* The container of the token balance. *

* * @param balance * The container of the token balance. * @return Returns a reference to this object so that method calls can be chained together. */ public TokenBalance withBalance(String balance) { setBalance(balance); return this; } /** *

* The time for when the TokenBalance is requested or the current time if a time is not provided in the request. *

* *

* This time will only be recorded up to the second. *

*
* * @param atBlockchainInstant * The time for when the TokenBalance is requested or the current time if a time is not provided in the * request.

*

* This time will only be recorded up to the second. *

*/ public void setAtBlockchainInstant(BlockchainInstant atBlockchainInstant) { this.atBlockchainInstant = atBlockchainInstant; } /** *

* The time for when the TokenBalance is requested or the current time if a time is not provided in the request. *

* *

* This time will only be recorded up to the second. *

*
* * @return The time for when the TokenBalance is requested or the current time if a time is not provided in the * request.

*

* This time will only be recorded up to the second. *

*/ public BlockchainInstant getAtBlockchainInstant() { return this.atBlockchainInstant; } /** *

* The time for when the TokenBalance is requested or the current time if a time is not provided in the request. *

* *

* This time will only be recorded up to the second. *

*
* * @param atBlockchainInstant * The time for when the TokenBalance is requested or the current time if a time is not provided in the * request.

*

* This time will only be recorded up to the second. *

* @return Returns a reference to this object so that method calls can be chained together. */ public TokenBalance withAtBlockchainInstant(BlockchainInstant atBlockchainInstant) { setAtBlockchainInstant(atBlockchainInstant); return this; } /** *

* The timestamp of the last transaction at which the balance for the token in the wallet was updated. *

* * @param lastUpdatedTime * The timestamp of the last transaction at which the balance for the token in the wallet was * updated. */ public void setLastUpdatedTime(BlockchainInstant lastUpdatedTime) { this.lastUpdatedTime = lastUpdatedTime; } /** *

* The timestamp of the last transaction at which the balance for the token in the wallet was updated. *

* * @return The timestamp of the last transaction at which the balance for the token in the wallet was * updated. */ public BlockchainInstant getLastUpdatedTime() { return this.lastUpdatedTime; } /** *

* The timestamp of the last transaction at which the balance for the token in the wallet was updated. *

* * @param lastUpdatedTime * The timestamp of the last transaction at which the balance for the token in the wallet was * updated. * @return Returns a reference to this object so that method calls can be chained together. */ public TokenBalance withLastUpdatedTime(BlockchainInstant lastUpdatedTime) { setLastUpdatedTime(lastUpdatedTime); 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 (getOwnerIdentifier() != null) sb.append("OwnerIdentifier: ").append(getOwnerIdentifier()).append(","); if (getTokenIdentifier() != null) sb.append("TokenIdentifier: ").append(getTokenIdentifier()).append(","); if (getBalance() != null) sb.append("Balance: ").append(getBalance()).append(","); if (getAtBlockchainInstant() != null) sb.append("AtBlockchainInstant: ").append(getAtBlockchainInstant()).append(","); if (getLastUpdatedTime() != null) sb.append("LastUpdatedTime: ").append(getLastUpdatedTime()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof TokenBalance == false) return false; TokenBalance other = (TokenBalance) obj; if (other.getOwnerIdentifier() == null ^ this.getOwnerIdentifier() == null) return false; if (other.getOwnerIdentifier() != null && other.getOwnerIdentifier().equals(this.getOwnerIdentifier()) == false) return false; if (other.getTokenIdentifier() == null ^ this.getTokenIdentifier() == null) return false; if (other.getTokenIdentifier() != null && other.getTokenIdentifier().equals(this.getTokenIdentifier()) == false) return false; if (other.getBalance() == null ^ this.getBalance() == null) return false; if (other.getBalance() != null && other.getBalance().equals(this.getBalance()) == false) return false; if (other.getAtBlockchainInstant() == null ^ this.getAtBlockchainInstant() == null) return false; if (other.getAtBlockchainInstant() != null && other.getAtBlockchainInstant().equals(this.getAtBlockchainInstant()) == false) return false; if (other.getLastUpdatedTime() == null ^ this.getLastUpdatedTime() == null) return false; if (other.getLastUpdatedTime() != null && other.getLastUpdatedTime().equals(this.getLastUpdatedTime()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getOwnerIdentifier() == null) ? 0 : getOwnerIdentifier().hashCode()); hashCode = prime * hashCode + ((getTokenIdentifier() == null) ? 0 : getTokenIdentifier().hashCode()); hashCode = prime * hashCode + ((getBalance() == null) ? 0 : getBalance().hashCode()); hashCode = prime * hashCode + ((getAtBlockchainInstant() == null) ? 0 : getAtBlockchainInstant().hashCode()); hashCode = prime * hashCode + ((getLastUpdatedTime() == null) ? 0 : getLastUpdatedTime().hashCode()); return hashCode; } @Override public TokenBalance clone() { try { return (TokenBalance) 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.managedblockchainquery.model.transform.TokenBalanceMarshaller.getInstance().marshall(this, protocolMarshaller); } }