mirror of https://github.com/OpenVidu/openvidu.git
49 lines
1.2 KiB
TypeScript
49 lines
1.2 KiB
TypeScript
import { MediaMode } from "./MediaMode";
|
|
import { ArchiveMode } from "./ArchiveMode";
|
|
import { ArchiveLayout } from "./ArchiveLayout";
|
|
|
|
export class SessionProperties {
|
|
|
|
constructor(private mediaModeProp: MediaMode, private archiveModeProp: ArchiveMode, private archiveLayoutProp: ArchiveLayout) { }
|
|
|
|
mediaMode(): string {
|
|
return this.mediaModeProp;
|
|
}
|
|
|
|
archiveMode(): ArchiveMode {
|
|
return this.archiveModeProp;
|
|
}
|
|
|
|
archiveLayout(): ArchiveLayout {
|
|
return this.archiveLayoutProp;
|
|
}
|
|
}
|
|
|
|
export namespace SessionProperties {
|
|
export class Builder {
|
|
|
|
private mediaModeProp: MediaMode = MediaMode.ROUTED;
|
|
private archiveModeProp: ArchiveMode = ArchiveMode.MANUAL;
|
|
private archiveLayoutProp: ArchiveLayout = ArchiveLayout.BEST_FIT;
|
|
|
|
build(): SessionProperties {
|
|
return new SessionProperties(this.mediaModeProp, this.archiveModeProp, this.archiveLayoutProp);
|
|
}
|
|
|
|
mediaMode(mediaMode: MediaMode): Builder {
|
|
this.mediaModeProp = mediaMode;
|
|
return this;
|
|
}
|
|
|
|
archiveMode(archiveMode: ArchiveMode): Builder {
|
|
this.archiveModeProp = archiveMode;
|
|
return this;
|
|
}
|
|
|
|
archiveLayout(archiveLayout: ArchiveLayout): Builder {
|
|
this.archiveLayoutProp = archiveLayout;
|
|
return this;
|
|
}
|
|
};
|
|
}
|