Files
0xb00b5-packmate/src/main/java/ru/serega6531/packmate/model/Stream.java

56 lines
1.4 KiB
Java

package ru.serega6531.packmate.model;
import lombok.Data;
import lombok.ToString;
import org.hibernate.annotations.GenericGenerator;
import ru.serega6531.packmate.model.enums.Protocol;
import javax.persistence.*;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
@Data
@ToString(exclude = "packets")
@Entity
@GenericGenerator(
name = "stream_generator",
strategy = "org.hibernate.id.enhanced.SequenceStyleGenerator",
parameters = {
@org.hibernate.annotations.Parameter(name = "sequence_name", value = "stream_seq"),
@org.hibernate.annotations.Parameter(name = "initial_value", value = "1"),
@org.hibernate.annotations.Parameter(name = "increment_size", value = "1")
}
)
public class Stream {
@Id
@GeneratedValue(generator = "stream_generator")
private Long id;
@Column(name = "service_id")
private int service;
private Protocol protocol;
@OneToMany(mappedBy = "stream", cascade = CascadeType.ALL)
@OrderBy("id")
private List<Packet> packets;
private long startTimestamp;
private long endTimestamp;
@ManyToMany
private Set<Pattern> foundPatterns = new HashSet<>();
private boolean favorite;
@Column(columnDefinition = "smallint")
private int ttl;
@Column(columnDefinition = "char(3)")
private String userAgentHash;
}