This is an automated email from the ASF dual-hosted git repository. acosentino pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/camel.git
commit 2d2d8248550b548751f3a11fb586ca84a5880774 Author: Willian Antunes <willian.lima.antu...@gmail.com> AuthorDate: Tue May 1 16:18:38 2018 -0700 New/updated models to comply with JSON/API requirements --- .../telegram/model/InlineKeyboardButton.java | 53 ++++++++ .../component/telegram/model/OutgoingMessage.java | 1 + .../telegram/model/OutgoingTextMessage.java | 14 ++- .../telegram/model/ReplyKeyboardMarkup.java | 133 +++++++++++++++++++++ 4 files changed, 200 insertions(+), 1 deletion(-) diff --git a/components/camel-telegram/src/main/java/org/apache/camel/component/telegram/model/InlineKeyboardButton.java b/components/camel-telegram/src/main/java/org/apache/camel/component/telegram/model/InlineKeyboardButton.java new file mode 100644 index 0000000..06fdaa0 --- /dev/null +++ b/components/camel-telegram/src/main/java/org/apache/camel/component/telegram/model/InlineKeyboardButton.java @@ -0,0 +1,53 @@ +package org.apache.camel.component.telegram.model; + +public class InlineKeyboardButton { + + private String text; + + public InlineKeyboardButton() { + + } + + public InlineKeyboardButton(String text) { + + this.text = text; + } + + public String getText() { + + return text; + } + + public void setText(String text) { + + this.text = text; + } + + @Override + public String toString() { + final StringBuilder sb = new StringBuilder("InlineKeyboardButton{"); + sb.append("text='").append(text); + sb.append('}'); + return sb.toString(); + } + + public static Builder builder() { + + return new Builder(); + } + + public static class Builder { + + private String text; + + public Builder text(String text) { + + this.text = text; + return this; + } + + public InlineKeyboardButton build() { + return new InlineKeyboardButton(text); + } + } +} diff --git a/components/camel-telegram/src/main/java/org/apache/camel/component/telegram/model/OutgoingMessage.java b/components/camel-telegram/src/main/java/org/apache/camel/component/telegram/model/OutgoingMessage.java index 060e40c..8f525e3 100644 --- a/components/camel-telegram/src/main/java/org/apache/camel/component/telegram/model/OutgoingMessage.java +++ b/components/camel-telegram/src/main/java/org/apache/camel/component/telegram/model/OutgoingMessage.java @@ -27,6 +27,7 @@ public abstract class OutgoingMessage implements Serializable { private static final long serialVersionUID = -5958829164103569292L; + @JsonProperty("chat_id") protected String chatId; @JsonProperty("disable_notification") diff --git a/components/camel-telegram/src/main/java/org/apache/camel/component/telegram/model/OutgoingTextMessage.java b/components/camel-telegram/src/main/java/org/apache/camel/component/telegram/model/OutgoingTextMessage.java index cbaf1ac..2040d91 100644 --- a/components/camel-telegram/src/main/java/org/apache/camel/component/telegram/model/OutgoingTextMessage.java +++ b/components/camel-telegram/src/main/java/org/apache/camel/component/telegram/model/OutgoingTextMessage.java @@ -32,6 +32,9 @@ public class OutgoingTextMessage extends OutgoingMessage { @JsonProperty("disable_web_page_preview") private Boolean disableWebPagePreview; + + @JsonProperty("reply_markup") + private ReplyKeyboardMarkup replyKeyboardMarkup; public OutgoingTextMessage() { } @@ -60,12 +63,21 @@ public class OutgoingTextMessage extends OutgoingMessage { this.disableWebPagePreview = disableWebPagePreview; } + public ReplyKeyboardMarkup getReplyKeyboardMarkup() { + return replyKeyboardMarkup; + } + + public void setReplyKeyboardMarkup(ReplyKeyboardMarkup replyKeyboardMarkup) { + this.replyKeyboardMarkup = replyKeyboardMarkup; + } + @Override public String toString() { final StringBuilder sb = new StringBuilder("OutgoingTextMessage{"); sb.append("text='").append(text).append('\''); sb.append(", parseMode='").append(parseMode).append('\''); - sb.append(", disableWebPagePreview=").append(disableWebPagePreview); + sb.append(", disableWebPagePreview=").append(disableWebPagePreview).append('\''); + sb.append(", replyKeyboardMarkup=").append(replyKeyboardMarkup); sb.append('}'); sb.append(' '); sb.append(super.toString()); diff --git a/components/camel-telegram/src/main/java/org/apache/camel/component/telegram/model/ReplyKeyboardMarkup.java b/components/camel-telegram/src/main/java/org/apache/camel/component/telegram/model/ReplyKeyboardMarkup.java new file mode 100644 index 0000000..d2894cc --- /dev/null +++ b/components/camel-telegram/src/main/java/org/apache/camel/component/telegram/model/ReplyKeyboardMarkup.java @@ -0,0 +1,133 @@ +package org.apache.camel.component.telegram.model; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Iterator; +import java.util.List; + +import com.fasterxml.jackson.annotation.JsonProperty; + +public class ReplyKeyboardMarkup implements Serializable { + + private static final long serialVersionUID = 1L; + + @JsonProperty("one_time_keyboard") + private Boolean oneTimeKeyboard; + + @JsonProperty("remove_keyboard") + private Boolean removeKeyboard; + + private List<List<InlineKeyboardButton>> keyboard; + + public ReplyKeyboardMarkup() { + + } + + public ReplyKeyboardMarkup(Boolean oneTimeKeyboard, Boolean removeKeyboard, List<List<InlineKeyboardButton>> keyboard) { + this.oneTimeKeyboard = oneTimeKeyboard; + this.removeKeyboard = removeKeyboard; + this.keyboard = keyboard; + } + + public Boolean getOneTimeKeyboard() { + return oneTimeKeyboard; + } + + public void setOneTimeKeyboard(Boolean oneTimeKeyboard) { + this.oneTimeKeyboard = oneTimeKeyboard; + } + + public Boolean getRemoveKeyboard() { + return removeKeyboard; + } + + public void setRemoveKeyboard(Boolean removeKeyboard) { + this.removeKeyboard = removeKeyboard; + } + + public List<List<InlineKeyboardButton>> getKeyboard() { + return keyboard; + } + + public void setKeyboard(List<List<InlineKeyboardButton>> keyboard) { + this.keyboard = keyboard; + } + + @Override + public String toString() { + final StringBuilder sb = new StringBuilder("ReplyKeyboardMarkup{"); + sb.append("oneTimeKeyboard='").append(oneTimeKeyboard).append('\''); + sb.append(", keyboard='").append(keyboard); + sb.append('}'); + return sb.toString(); + } + + public static Builder builder() { + + return new Builder(); + } + + public static class Builder { + + private Boolean oneTimeKeyboard; + private Boolean removeKeyboard; + private List<List<InlineKeyboardButton>> keyboard; + + public Builder oneTimeKeyboard(Boolean oneTimeKeyboard) { + + this.oneTimeKeyboard = oneTimeKeyboard; + return this; + } + + public Builder removeKeyboard(Boolean removeKeyboard) { + + this.removeKeyboard = removeKeyboard; + return this; + } + + public ReplyKeyboardMarkup build() { + + return new ReplyKeyboardMarkup(oneTimeKeyboard, removeKeyboard, keyboard); + } + + public KeyboardBuilder keyboard() { + + return new KeyboardBuilder(this); + } + + public static class KeyboardBuilder { + + private Builder builder; + private List<List<InlineKeyboardButton>> keyboard; + + public KeyboardBuilder(Builder builder) { + + this.builder = builder; + this.keyboard = new ArrayList<>(); + } + + public KeyboardBuilder addRow(List<InlineKeyboardButton> InlineKeyboardButtons) { + + keyboard.add(InlineKeyboardButtons); + return this; + } + + public KeyboardBuilder addOneRowByEachButton(List<InlineKeyboardButton> InlineKeyboardButtons) { + + for (Iterator<InlineKeyboardButton> iterator = InlineKeyboardButtons.iterator(); iterator.hasNext();) { + + keyboard.add(Arrays.asList(iterator.next())); + } + + return this; + } + + public Builder close() { + + builder.keyboard = keyboard; + return builder; + } + } + } +} \ No newline at end of file -- To stop receiving notification emails like this one, please contact acosent...@apache.org.