001// Generated by delombok at Thu Aug 13 13:56:44 UTC 2026
002/*
003 * Copyright (c) 2010-2026 Mark Allen, Norbert Bartels.
004 *
005 * Permission is hereby granted, free of charge, to any person obtaining a copy
006 * of this software and associated documentation files (the "Software"), to deal
007 * in the Software without restriction, including without limitation the rights
008 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
009 * copies of the Software, and to permit persons to whom the Software is
010 * furnished to do so, subject to the following conditions:
011 *
012 * The above copyright notice and this permission notice shall be included in
013 * all copies or substantial portions of the Software.
014 *
015 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
016 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
017 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
018 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
019 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
020 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
021 * THE SOFTWARE.
022 */
023package com.restfb.types.send;
024
025import com.restfb.Facebook;
026import com.restfb.types.AbstractFacebookType;
027
028/**
029 * Represents the
030 * <a href="https://developers.facebook.com/docs/messenger-platform/send-api-reference/quick-replies">Quick Reply</a>
031 */
032public class QuickReply extends AbstractFacebookType {
033  @Facebook("content_type")
034  private String contentType;
035  @Facebook
036  private String title;
037  @Facebook
038  private String payload;
039  @Facebook("image_url")
040  private String imageUrl;
041
042  /**
043   * @deprecated use constructor without contenttype instead. If using content type 'text' use
044   *             {@link QuickReply#QuickReply(String,String)}
045   */
046  @Deprecated
047  public QuickReply(String contentType, String title, String payload) {
048    this(title, payload);
049    this.contentType = contentType;
050  }
051
052  public QuickReply(String title, String payload) {
053    this.contentType = "text";
054    this.title = title;
055    this.payload = payload;
056  }
057
058  public QuickReply(QuickReplyType quickReplyType) {
059    this.contentType = quickReplyType.getContentType();
060  }
061
062
063  public enum QuickReplyType {
064    USER_EMAIL, USER_PHONE_NUMBER;
065
066    public String getContentType() {
067      return name().toLowerCase();
068    }
069  }
070
071  @java.lang.SuppressWarnings("all")
072  @lombok.Generated
073  public String getContentType() {
074    return this.contentType;
075  }
076
077  @java.lang.SuppressWarnings("all")
078  @lombok.Generated
079  public String getTitle() {
080    return this.title;
081  }
082
083  @java.lang.SuppressWarnings("all")
084  @lombok.Generated
085  public String getPayload() {
086    return this.payload;
087  }
088
089  @java.lang.SuppressWarnings("all")
090  @lombok.Generated
091  public String getImageUrl() {
092    return this.imageUrl;
093  }
094
095  @java.lang.SuppressWarnings("all")
096  @lombok.Generated
097  public void setImageUrl(final String imageUrl) {
098    this.imageUrl = imageUrl;
099  }
100}