-
Notifications
You must be signed in to change notification settings - Fork 10
/
AnalyticsExportTask.ts
122 lines (106 loc) · 2.89 KB
/
AnalyticsExportTask.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
import {map, mapArray} from '../common/Mapper';
import AnalyticsExportFileFormat from './AnalyticsExportFileFormat';
import AnalyticsExportStatus from './AnalyticsExportStatus';
import AnalyticsExportTaskOutputTarget from './AnalyticsExportTaskOutputTarget';
import AnalyticsExportType from './AnalyticsExportType';
import BitmovinResponse from './BitmovinResponse';
/**
* @export
* @class AnalyticsExportTask
*/
export class AnalyticsExportTask extends BitmovinResponse {
/**
* Start of timeframe which is exported in UTC format (required)
* @type {Date}
* @memberof AnalyticsExportTask
*/
public startTime?: Date;
/**
* End of timeframe which is exported in UTC format (required)
* @type {Date}
* @memberof AnalyticsExportTask
*/
public endTime?: Date;
/**
* Name of the export task (required)
* @type {string}
* @memberof AnalyticsExportTask
*/
public name?: string;
/**
* Export task description
* @type {string}
* @memberof AnalyticsExportTask
*/
public description?: string;
/**
* License key (required)
* @type {string}
* @memberof AnalyticsExportTask
*/
public licenseKey?: string;
/**
* @type {AnalyticsExportTaskOutputTarget}
* @memberof AnalyticsExportTask
*/
public output?: AnalyticsExportTaskOutputTarget;
/**
* Progress of the export task
* @type {number}
* @memberof AnalyticsExportTask
*/
public progress?: number;
/**
* @type {AnalyticsExportStatus}
* @memberof AnalyticsExportTask
*/
public status?: AnalyticsExportStatus;
/**
* UTC timestamp when the export task started
* @type {Date}
* @memberof AnalyticsExportTask
*/
public startedAt?: Date;
/**
* UTC timestamp when the export task finished
* @type {Date}
* @memberof AnalyticsExportTask
*/
public finishedAt?: Date;
/**
* @type {AnalyticsExportType}
* @memberof AnalyticsExportTask
*/
public type?: AnalyticsExportType;
/**
* @type {string[]}
* @memberof AnalyticsExportTask
*/
public columns?: string[];
/**
* File format of export file
* @type {AnalyticsExportFileFormat}
* @memberof AnalyticsExportTask
*/
public fileFormat?: AnalyticsExportFileFormat;
constructor(obj?: Partial<AnalyticsExportTask>) {
super(obj);
if(!obj) {
return;
}
this.startTime = map(obj.startTime, Date);
this.endTime = map(obj.endTime, Date);
this.name = map(obj.name);
this.description = map(obj.description);
this.licenseKey = map(obj.licenseKey);
this.output = map(obj.output, AnalyticsExportTaskOutputTarget);
this.progress = map(obj.progress);
this.status = map(obj.status);
this.startedAt = map(obj.startedAt, Date);
this.finishedAt = map(obj.finishedAt, Date);
this.type = map(obj.type);
this.columns = mapArray(obj.columns);
this.fileFormat = map(obj.fileFormat);
}
}
export default AnalyticsExportTask;