docs/docs-core/src/main/java/com/sismics/docs/core/model/jpa/Webhook.java

109 lines
2.1 KiB
Java

package com.sismics.docs.core.model.jpa;
import com.google.common.base.MoreObjects;
import com.sismics.docs.core.constant.WebhookEvent;
import jakarta.persistence.*;
import java.util.Date;
/**
* Webhook entity.
*
* @author bgamard
*/
@Entity
@Table(name = "T_WEBHOOK")
public class Webhook implements Loggable {
/**
* Webhook ID.
*/
@Id
@Column(name = "WHK_ID_C", nullable = false, length = 36)
private String id;
/**
* Event.
*/
@Column(name = "WHK_EVENT_C", nullable = false, length = 50)
@Enumerated(EnumType.STRING)
private WebhookEvent event;
/**
* URL.
*/
@Column(name = "WHK_URL_C", nullable = false, length = 1024)
private String url;
/**
* Creation date.
*/
@Column(name = "WHK_CREATEDATE_D", nullable = false)
private Date createDate;
/**
* Deletion date.
*/
@Column(name = "WHK_DELETEDATE_D")
private Date deleteDate;
public String getId() {
return id;
}
public Webhook setId(String id) {
this.id = id;
return this;
}
public WebhookEvent getEvent() {
return event;
}
public Webhook setEvent(WebhookEvent event) {
this.event = event;
return this;
}
public String getUrl() {
return url;
}
public Webhook setUrl(String url) {
this.url = url;
return this;
}
public Date getCreateDate() {
return createDate;
}
public Webhook setCreateDate(Date createDate) {
this.createDate = createDate;
return this;
}
@Override
public Date getDeleteDate() {
return deleteDate;
}
public Webhook setDeleteDate(Date deleteDate) {
this.deleteDate = deleteDate;
return this;
}
@Override
public String toString() {
return MoreObjects.toStringHelper(this)
.add("id", id)
.add("event", event)
.add("url", url)
.toString();
}
@Override
public String toMessage() {
return url;
}
}