![JAR search and dependency download from the Maven repository](/logo.png)
com.github.messenger4j.send.message.template.common.DefaultAction Maven / Gradle / Ivy
package com.github.messenger4j.send.message.template.common;
import static com.github.messenger4j.send.message.template.button.Button.Type.WEB_URL;
import static java.util.Optional.empty;
import com.github.messenger4j.common.WebviewHeightRatio;
import com.github.messenger4j.send.message.template.button.Button;
import java.net.URL;
import java.util.Optional;
import lombok.EqualsAndHashCode;
import lombok.NonNull;
import lombok.ToString;
/**
* @author Max Grabenhorst
* @since 1.0.0
*/
@ToString
@EqualsAndHashCode
public final class DefaultAction {
private final Button.Type type;
private final URL url;
private final Optional webviewHeightRatio;
private final Optional messengerExtensions;
private final Optional fallbackUrl;
public static DefaultAction create(@NonNull URL url) {
return create(url, empty(), empty(), empty());
}
public static DefaultAction create(@NonNull URL url, @NonNull Optional webviewHeightRatio,
@NonNull Optional messengerExtensions, @NonNull Optional fallbackUrl) {
return new DefaultAction(url, webviewHeightRatio, messengerExtensions, fallbackUrl);
}
private DefaultAction(URL url, Optional webviewHeightRatio, Optional messengerExtensions,
Optional fallbackUrl) {
this.type = WEB_URL;
this.url = url;
this.webviewHeightRatio = webviewHeightRatio;
this.messengerExtensions = messengerExtensions;
this.fallbackUrl = fallbackUrl;
}
public URL url() {
return url;
}
public Optional webviewHeightRatio() {
return webviewHeightRatio;
}
public Optional messengerExtensions() {
return messengerExtensions;
}
public Optional fallbackUrl() {
return fallbackUrl;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy