summary refs log tree commit diff
path: root/src/database/entities/StreamSession.ts
diff options
context:
space:
mode:
authorRory& <root@rory.gay>2026-06-11 22:16:07 +0200
committerRory& <root@rory.gay>2026-06-12 17:58:18 +0200
commitc77d00e243f7cf104b8b0f8b26f339849dbd040f (patch)
tree457a1aac1da052b3be56812a90c8ca50e6b3df51 /src/database/entities/StreamSession.ts
parentMove database to toplevel (diff)
downloadserver-ts-c77d00e243f7cf104b8b0f8b26f339849dbd040f.tar.xz
Move entities to database
Diffstat (limited to 'src/database/entities/StreamSession.ts')
-rw-r--r--src/database/entities/StreamSession.ts39
1 files changed, 39 insertions, 0 deletions
diff --git a/src/database/entities/StreamSession.ts b/src/database/entities/StreamSession.ts
new file mode 100644

index 00000000..1dca2424 --- /dev/null +++ b/src/database/entities/StreamSession.ts
@@ -0,0 +1,39 @@ +import { Column, Entity, JoinColumn, ManyToOne, RelationId } from "typeorm"; +import { BaseClass } from "./BaseClass"; +import { User } from "./User"; +import { Stream } from "./Stream"; + +@Entity({ + name: "stream_sessions", +}) +export class StreamSession extends BaseClass { + @Column() + @RelationId((session: StreamSession) => session.stream) + stream_id: string; + + @JoinColumn({ name: "stream_id" }) + @ManyToOne(() => Stream, { + onDelete: "CASCADE", + }) + stream: Stream; + + @Column() + @RelationId((session: StreamSession) => session.user) + user_id: string; + + @JoinColumn({ name: "user_id" }) + @ManyToOne(() => User, { + onDelete: "CASCADE", + }) + user: User; + + @Column({ nullable: true }) + token: string; + + // this is for gateway session + @Column() + session_id: string; + + @Column({ default: false }) + used: boolean; +}