001// Generated by delombok at Sun Sep 26 16:30:34 CEST 2021 002/* 003 * Copyright (c) 2010-2021 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)} for 'location' use {@link QuickReply#QuickReply()} 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 /** 059 * @deprecated use {@link QuickReply#QuickReply(QuickReplyType)} with {@link QuickReplyType#LOCATION} as parameter instead 060 */ 061 @Deprecated 062 public QuickReply() { 063 this(QuickReplyType.LOCATION); 064 } 065 066 public QuickReply(QuickReplyType quickReplyType) { 067 this.contentType = quickReplyType.getContentType(); 068 } 069 070 071 public enum QuickReplyType { 072 USER_EMAIL, USER_PHONE_NUMBER, 073 /** 074 * @TODO: remove after October 29th, 2019 075 */ 076 @Deprecated 077 LOCATION; 078 079 public String getContentType() { 080 return name().toLowerCase(); 081 } 082 } 083 084 @java.lang.SuppressWarnings("all") 085 public String getContentType() { 086 return this.contentType; 087 } 088 089 @java.lang.SuppressWarnings("all") 090 public String getTitle() { 091 return this.title; 092 } 093 094 @java.lang.SuppressWarnings("all") 095 public String getPayload() { 096 return this.payload; 097 } 098 099 @java.lang.SuppressWarnings("all") 100 public String getImageUrl() { 101 return this.imageUrl; 102 } 103 104 @java.lang.SuppressWarnings("all") 105 public void setImageUrl(final String imageUrl) { 106 this.imageUrl = imageUrl; 107 } 108}