Исправил баг в ButtonClickAttachment

This commit is contained in:
Struchkov Mark 2023-04-07 10:11:58 +03:00
parent 6ed4a8d273
commit 779ec0bbe9
Signed by: upagge
GPG Key ID: D3018BE7BA428CA6

View File

@ -1,5 +1,6 @@
package dev.struchkov.godfather.telegram.domain.attachment; package dev.struchkov.godfather.telegram.domain.attachment;
import com.fasterxml.jackson.annotation.JsonIgnore;
import dev.struchkov.godfather.main.domain.content.Attachment; import dev.struchkov.godfather.main.domain.content.Attachment;
import lombok.Getter; import lombok.Getter;
import lombok.Setter; import lombok.Setter;
@ -21,29 +22,34 @@ public class ButtonClickAttachment extends Attachment {
*/ */
private String messageId; private String messageId;
private String rawCallBackData; private String rawCallBackData;
private Map<String, ButtonArg> args = new HashMap<>(); private Map<String, ButtonArg> args = new HashMap<>();
public ButtonClickAttachment() { public ButtonClickAttachment() {
super(TelegramAttachmentType.BUTTON_CLICK.name()); super(TelegramAttachmentType.BUTTON_CLICK.name());
} }
@JsonIgnore
public void addClickArg(String type, String value) { public void addClickArg(String type, String value) {
isNotNull(type, value); isNotNull(type, value);
args.put(type, ButtonArg.buttonArg(type, value)); args.put(type, ButtonArg.buttonArg(type, value));
} }
@JsonIgnore
public Optional<ButtonArg> getArgByType(String type) { public Optional<ButtonArg> getArgByType(String type) {
isNotNull(type); isNotNull(type);
return Optional.ofNullable(args.get(type)); return Optional.ofNullable(args.get(type));
} }
@JsonIgnore
public Collection<ButtonArg> getClickArgs() {
return args.values();
}
@JsonIgnore
public ButtonArg getArgByTypeOrThrow(String type) { public ButtonArg getArgByTypeOrThrow(String type) {
isNotNull(type); isNotNull(type);
return Optional.of(args.get(type)).orElseThrow(notFoundException("Аргумент типа {0} не найден.", type)); return Optional.of(args.get(type)).orElseThrow(notFoundException("Аргумент типа {0} не найден.", type));
} }
public Collection<ButtonArg> getClickArgs() {
return args.values();
}
} }