@playkit-js/playkit-js-providers 2.39.1 → 2.39.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +4 -0
- package/dist/playkit-analytics-service.js +2 -0
- package/dist/playkit-analytics-service.js.map +1 -0
- package/dist/playkit-bookmark-service.js +2 -0
- package/dist/playkit-bookmark-service.js.map +1 -0
- package/dist/playkit-ott-provider.js +2 -0
- package/dist/playkit-ott-provider.js.map +1 -0
- package/dist/playkit-ovp-provider.js +2 -0
- package/dist/playkit-ovp-provider.js.map +1 -0
- package/dist/playkit-stats-service.js +2 -0
- package/dist/playkit-stats-service.js.map +1 -0
- package/package.json +1 -1
- package/.babelrc +0 -22
- package/.editorconfig +0 -10
- package/.eslintignore +0 -3
- package/.eslintrc.json +0 -26
- package/.flowconfig +0 -5
- package/.github/ISSUE_TEMPLATE.md +0 -28
- package/.github/PULL_REQUEST_TEMPLATE.md +0 -12
- package/.github/workflows/run_canary_full_flow.yaml +0 -28
- package/.github/workflows/run_prod.yaml +0 -24
- package/.github/workflows/run_tests.yaml +0 -24
- package/.prettierignore +0 -7
- package/.prettierrc +0 -12
- package/docs/configuration.md +0 -225
- package/karma.conf.js +0 -42
- package/src/entities/bumper.js +0 -23
- package/src/entities/drm.js +0 -46
- package/src/entities/entry-list.js +0 -15
- package/src/entities/image-source.js +0 -37
- package/src/entities/media-entry.js +0 -96
- package/src/entities/media-format.js +0 -46
- package/src/entities/media-source.js +0 -70
- package/src/entities/media-sources.js +0 -79
- package/src/entities/playlist.js +0 -37
- package/src/index.html +0 -11
- package/src/k-provider/common/base-provider-parser.js +0 -0
- package/src/k-provider/common/base-provider.js +0 -110
- package/src/k-provider/common/base-service-result.js +0 -57
- package/src/k-provider/common/data-loader-manager.js +0 -115
- package/src/k-provider/common/multi-request-builder.js +0 -112
- package/src/k-provider/common/response-types/kaltura-access-control-message.js +0 -22
- package/src/k-provider/common/response-types/kaltura-drm-playback-plugin-data.js +0 -39
- package/src/k-provider/ott/config.js +0 -22
- package/src/k-provider/ott/index.js +0 -15
- package/src/k-provider/ott/loaders/asset-list-loader.js +0 -68
- package/src/k-provider/ott/loaders/asset-loader.js +0 -69
- package/src/k-provider/ott/loaders/data-loader-manager.js +0 -15
- package/src/k-provider/ott/loaders/session-loader.js +0 -62
- package/src/k-provider/ott/provider-parser.js +0 -282
- package/src/k-provider/ott/provider.js +0 -242
- package/src/k-provider/ott/response-types/kaltura-asset.js +0 -79
- package/src/k-provider/ott/response-types/kaltura-bumper-playback-plugin-data.js +0 -28
- package/src/k-provider/ott/response-types/kaltura-playback-context.js +0 -74
- package/src/k-provider/ott/response-types/kaltura-playback-source.js +0 -63
- package/src/k-provider/ott/response-types/kaltura-rule-action.js +0 -26
- package/src/k-provider/ott/services/asset-service.js +0 -50
- package/src/k-provider/ott/services/bookmark/bookmark-service.js +0 -49
- package/src/k-provider/ott/services/bookmark/index.js +0 -12
- package/src/k-provider/ott/services/ott-service.js +0 -34
- package/src/k-provider/ott/services/user-service.js +0 -32
- package/src/k-provider/ovp/config.js +0 -28
- package/src/k-provider/ovp/external-captions-builder.js +0 -38
- package/src/k-provider/ovp/index.js +0 -13
- package/src/k-provider/ovp/loaders/data-loader-manager.js +0 -17
- package/src/k-provider/ovp/loaders/entry-list-loader.js +0 -69
- package/src/k-provider/ovp/loaders/media-entry-loader.js +0 -84
- package/src/k-provider/ovp/loaders/playlist-loader.js +0 -66
- package/src/k-provider/ovp/loaders/session-loader.js +0 -62
- package/src/k-provider/ovp/loaders/ui-config-loader.js +0 -71
- package/src/k-provider/ovp/play-source-url-builder.js +0 -60
- package/src/k-provider/ovp/provider-parser.js +0 -451
- package/src/k-provider/ovp/provider.js +0 -344
- package/src/k-provider/ovp/regex-action-handler.js +0 -147
- package/src/k-provider/ovp/request-params/base-entry-response-profile.js +0 -29
- package/src/k-provider/ovp/response-types/index.js +0 -18
- package/src/k-provider/ovp/response-types/kaltura-access-control-modify-request-host-regex-action.js +0 -36
- package/src/k-provider/ovp/response-types/kaltura-base-entry-list-response.js +0 -31
- package/src/k-provider/ovp/response-types/kaltura-bumper.js +0 -26
- package/src/k-provider/ovp/response-types/kaltura-flavor-asset.js +0 -109
- package/src/k-provider/ovp/response-types/kaltura-media-entries.js +0 -23
- package/src/k-provider/ovp/response-types/kaltura-media-entry.js +0 -141
- package/src/k-provider/ovp/response-types/kaltura-metadata-list-response.js +0 -23
- package/src/k-provider/ovp/response-types/kaltura-metadata.js +0 -51
- package/src/k-provider/ovp/response-types/kaltura-playback-context.js +0 -96
- package/src/k-provider/ovp/response-types/kaltura-playback-source.js +0 -90
- package/src/k-provider/ovp/response-types/kaltura-playlist.js +0 -35
- package/src/k-provider/ovp/response-types/kaltura-rule-action.js +0 -28
- package/src/k-provider/ovp/response-types/kaltura-ui-conf-response.js +0 -90
- package/src/k-provider/ovp/services/analytics/analytics-service.js +0 -57
- package/src/k-provider/ovp/services/analytics/index.js +0 -12
- package/src/k-provider/ovp/services/base-entry-service.js +0 -76
- package/src/k-provider/ovp/services/meta-data-service.js +0 -30
- package/src/k-provider/ovp/services/ovp-service.js +0 -33
- package/src/k-provider/ovp/services/playlist-service.js +0 -63
- package/src/k-provider/ovp/services/session-service.js +0 -28
- package/src/k-provider/ovp/services/stats/index.js +0 -12
- package/src/k-provider/ovp/services/stats/stats-service.js +0 -33
- package/src/k-provider/ovp/services/ui-conf-service.js +0 -33
- package/src/util/clone.js +0 -23
- package/src/util/error/category.js +0 -12
- package/src/util/error/code.js +0 -79
- package/src/util/error/error.js +0 -48
- package/src/util/error/severity.js +0 -23
- package/src/util/logger.js +0 -108
- package/src/util/param.js +0 -45
- package/src/util/request-builder.js +0 -187
- package/src/util/xml-parser.js +0 -40
- package/test/.eslintrc.json +0 -9
- package/test/setup/karma.js +0 -5
- package/test/setup/load-specs.js +0 -13
- package/test/setup/prepare-test-environment.js +0 -17
- package/test/src/k-provider/ott/be-data.js +0 -3306
- package/test/src/k-provider/ott/media-config-data.js +0 -793
- package/test/src/k-provider/ott/provider-parser.spec.js +0 -30
- package/test/src/k-provider/ott/provider.spec.js +0 -384
- package/test/src/k-provider/ott/services/bookmark-service.spec.js +0 -38
- package/test/src/k-provider/ovp/be-data.js +0 -3932
- package/test/src/k-provider/ovp/external-captions-builder.spec.js +0 -59
- package/test/src/k-provider/ovp/media-config-data.js +0 -1509
- package/test/src/k-provider/ovp/playback-sources-data.js +0 -229
- package/test/src/k-provider/ovp/provider-parser-data.js +0 -142
- package/test/src/k-provider/ovp/provider-parser.spec.js +0 -96
- package/test/src/k-provider/ovp/provider.spec.js +0 -1075
- package/test/src/k-provider/ovp/regex-action-handler-data.js +0 -794
- package/test/src/k-provider/ovp/regex-action-handler.spec.js +0 -93
- package/test/src/k-provider/ovp/services/analytics-service.spec.js +0 -62
- package/test/src/k-provider/ovp/services/stats-service.spec.js +0 -37
- package/test/src/util/param.spec.js +0 -23
- package/webpack.config.js +0 -85
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
//@flow
|
|
2
|
-
import RequestBuilder from '../../util/request-builder';
|
|
3
|
-
import getLogger from '../../util/logger';
|
|
4
|
-
import ServiceResult from './base-service-result';
|
|
5
|
-
import Error from '../../util/error/error';
|
|
6
|
-
|
|
7
|
-
export default class MultiRequestBuilder extends RequestBuilder {
|
|
8
|
-
static _logger = getLogger('MultiRequestBuilder');
|
|
9
|
-
/**
|
|
10
|
-
* @memberof - MultiRequestBuilder
|
|
11
|
-
* @type {Array<RequestBuilder>}
|
|
12
|
-
*/
|
|
13
|
-
requests: Array<RequestBuilder> = [];
|
|
14
|
-
/**
|
|
15
|
-
* Adds request to requests array
|
|
16
|
-
* @function add
|
|
17
|
-
* @param {RequestBuilder} request The request
|
|
18
|
-
* @returns {MultiRequestBuilder} The multiRequest
|
|
19
|
-
*/
|
|
20
|
-
add(request: RequestBuilder): MultiRequestBuilder {
|
|
21
|
-
this.requests.push(request);
|
|
22
|
-
const requestParams = {};
|
|
23
|
-
const serviceDef: Object = {service: request.service, action: request.action};
|
|
24
|
-
Object.assign(requestParams, {[this.requests.length]: Object.assign(serviceDef, request.params)});
|
|
25
|
-
Object.assign(requestParams, this.params);
|
|
26
|
-
this.params = requestParams;
|
|
27
|
-
return this;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
/**
|
|
31
|
-
* Executes a multi request
|
|
32
|
-
* @function execute
|
|
33
|
-
* @param {boolean} requestsMustSucceed whether all of the requests must succeed or not
|
|
34
|
-
* @returns {Promise} The multirequest execution promise
|
|
35
|
-
*/
|
|
36
|
-
execute(requestsMustSucceed?: boolean): Promise<Object> {
|
|
37
|
-
return new Promise((resolve, reject) => {
|
|
38
|
-
try {
|
|
39
|
-
this.params = JSON.stringify(this.params);
|
|
40
|
-
} catch (err) {
|
|
41
|
-
MultiRequestBuilder._logger.error(`${err.message}`);
|
|
42
|
-
reject(
|
|
43
|
-
new Error(Error.Severity.CRITICAL, Error.Category.PROVIDER, Error.Code.FAILED_PARSING_REQUEST, {
|
|
44
|
-
error: err,
|
|
45
|
-
params: this.params
|
|
46
|
-
})
|
|
47
|
-
);
|
|
48
|
-
}
|
|
49
|
-
this.doHttpRequest().then(
|
|
50
|
-
data => {
|
|
51
|
-
const multiRequestResult = new MultiRequestResult(data, requestsMustSucceed);
|
|
52
|
-
if (multiRequestResult.success) {
|
|
53
|
-
resolve({
|
|
54
|
-
headers: this.responseHeaders,
|
|
55
|
-
response: multiRequestResult
|
|
56
|
-
});
|
|
57
|
-
} else {
|
|
58
|
-
reject(
|
|
59
|
-
new Error(Error.Severity.CRITICAL, Error.Category.NETWORK, Error.Code.MULTIREQUEST_API_ERROR, {
|
|
60
|
-
url: this.url,
|
|
61
|
-
headers: this.responseHeaders,
|
|
62
|
-
results: multiRequestResult.results
|
|
63
|
-
})
|
|
64
|
-
);
|
|
65
|
-
}
|
|
66
|
-
},
|
|
67
|
-
err => {
|
|
68
|
-
reject(err);
|
|
69
|
-
}
|
|
70
|
-
);
|
|
71
|
-
});
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
export class MultiRequestResult {
|
|
76
|
-
static _logger = getLogger('MultiRequestResult');
|
|
77
|
-
/**
|
|
78
|
-
* @memberof MultiRequestResult
|
|
79
|
-
* @type {boolean}
|
|
80
|
-
*/
|
|
81
|
-
success: boolean;
|
|
82
|
-
/**
|
|
83
|
-
* @memberof MultiRequestResult
|
|
84
|
-
* @type {Object}
|
|
85
|
-
*/
|
|
86
|
-
results: Array<ServiceResult> = [];
|
|
87
|
-
/**
|
|
88
|
-
* @constructor
|
|
89
|
-
* @param {Object} response data
|
|
90
|
-
* @param {boolean} requestsMustSucceed whether all of the requests must succeed
|
|
91
|
-
*/
|
|
92
|
-
constructor(response: Object, requestsMustSucceed?: boolean = true) {
|
|
93
|
-
const result = response.result ? response.result : response;
|
|
94
|
-
const responseArr = Array.isArray(result) ? result : [result];
|
|
95
|
-
const results = responseArr.map(result => new ServiceResult(result));
|
|
96
|
-
const errorResults = results.filter(serviceResult => serviceResult.hasError);
|
|
97
|
-
|
|
98
|
-
errorResults.forEach(serviceResult => {
|
|
99
|
-
MultiRequestResult._logger.error(
|
|
100
|
-
`Service returned an error with error code: ${serviceResult.error.code} and message: ${serviceResult.error.message}.`
|
|
101
|
-
);
|
|
102
|
-
});
|
|
103
|
-
|
|
104
|
-
this.results = results;
|
|
105
|
-
if ((requestsMustSucceed && errorResults.length) || errorResults.length === this.results.length) {
|
|
106
|
-
this.success = false;
|
|
107
|
-
} else {
|
|
108
|
-
this.results = this.results.filter(serviceResult => !serviceResult.hasError);
|
|
109
|
-
this.success = true;
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
//@flow
|
|
2
|
-
export class KalturaAccessControlMessage {
|
|
3
|
-
/**
|
|
4
|
-
* @member - The access control message
|
|
5
|
-
* @type {string}
|
|
6
|
-
*/
|
|
7
|
-
message: string;
|
|
8
|
-
/**
|
|
9
|
-
* @member - The access control message code
|
|
10
|
-
* @@type {string}
|
|
11
|
-
*/
|
|
12
|
-
code: string;
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
* @constructor
|
|
16
|
-
* @param {Object} data The json response
|
|
17
|
-
*/
|
|
18
|
-
constructor(data: Object) {
|
|
19
|
-
this.message = data.message;
|
|
20
|
-
this.code = data.code;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
//@flow
|
|
2
|
-
export class KalturaDrmPlaybackPluginData {
|
|
3
|
-
static Scheme: {[scheme: string]: string} = {
|
|
4
|
-
'drm.PLAYREADY_CENC': 'com.microsoft.playready',
|
|
5
|
-
'drm.WIDEVINE_CENC': 'com.widevine.alpha',
|
|
6
|
-
'fairplay.FAIRPLAY': 'com.apple.fairplay',
|
|
7
|
-
WIDEVINE_CENC: 'com.widevine.alpha',
|
|
8
|
-
PLAYREADY_CENC: 'com.microsoft.playready',
|
|
9
|
-
FAIRPLAY: 'com.apple.fairplay'
|
|
10
|
-
};
|
|
11
|
-
|
|
12
|
-
/**
|
|
13
|
-
* @member - The drm scheme
|
|
14
|
-
* @type {string}
|
|
15
|
-
*/
|
|
16
|
-
scheme: string;
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* @member - The license URL
|
|
20
|
-
* @type {string}
|
|
21
|
-
*/
|
|
22
|
-
licenseURL: string;
|
|
23
|
-
|
|
24
|
-
/**
|
|
25
|
-
* @member - The drm certificate
|
|
26
|
-
* @type {?string}
|
|
27
|
-
*/
|
|
28
|
-
certificate: ?string;
|
|
29
|
-
|
|
30
|
-
/**
|
|
31
|
-
* @constructor
|
|
32
|
-
* @param {Object} drm The json response
|
|
33
|
-
*/
|
|
34
|
-
constructor(drm: any) {
|
|
35
|
-
this.scheme = drm.scheme;
|
|
36
|
-
this.licenseURL = drm.licenseURL;
|
|
37
|
-
this.certificate = drm.certificate;
|
|
38
|
-
}
|
|
39
|
-
}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
//@flow
|
|
2
|
-
import {clone} from '../../util/clone';
|
|
3
|
-
|
|
4
|
-
const defaultConfig: Object = {
|
|
5
|
-
serviceParams: {
|
|
6
|
-
apiVersion: '7.8.1'
|
|
7
|
-
}
|
|
8
|
-
};
|
|
9
|
-
|
|
10
|
-
export default class OTTConfiguration {
|
|
11
|
-
static set(clientConfig?: ProviderEnvConfigObject) {
|
|
12
|
-
if (clientConfig) {
|
|
13
|
-
Object.assign(defaultConfig, clientConfig);
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
static get(): Object {
|
|
18
|
-
return clone(defaultConfig);
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
export {OTTConfiguration};
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
// @flow
|
|
2
|
-
import OTTProvider from './provider';
|
|
3
|
-
import KalturaPlaybackContext from './response-types/kaltura-playback-context';
|
|
4
|
-
import KalturaAsset from './response-types/kaltura-asset';
|
|
5
|
-
|
|
6
|
-
declare var __VERSION__: string;
|
|
7
|
-
declare var __NAME__: string;
|
|
8
|
-
|
|
9
|
-
const NAME = __NAME__ + '-ott';
|
|
10
|
-
const VERSION = __VERSION__;
|
|
11
|
-
|
|
12
|
-
const ContextType = KalturaPlaybackContext.Type;
|
|
13
|
-
const MediaType = KalturaAsset.Type;
|
|
14
|
-
|
|
15
|
-
export {OTTProvider as Provider, ContextType, MediaType, NAME, VERSION};
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
//@flow
|
|
2
|
-
import RequestBuilder from '../../../util/request-builder';
|
|
3
|
-
import OTTConfiguration from '../config';
|
|
4
|
-
import OTTAssetService from '../services/asset-service';
|
|
5
|
-
import KalturaAsset from '../response-types/kaltura-asset';
|
|
6
|
-
|
|
7
|
-
export default class OTTAssetListLoader implements ILoader {
|
|
8
|
-
_entries: Array<string>;
|
|
9
|
-
_requests: Array<RequestBuilder>;
|
|
10
|
-
_response: any = {playlistItems: {entries: []}};
|
|
11
|
-
|
|
12
|
-
static get id(): string {
|
|
13
|
-
return 'asset_list';
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
/**
|
|
17
|
-
* @constructor
|
|
18
|
-
* @param {Object} params loader params
|
|
19
|
-
*/
|
|
20
|
-
constructor(params: Object) {
|
|
21
|
-
this.requests = this.buildRequests(params);
|
|
22
|
-
this._entries = params.entries;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
set requests(requests: Array<RequestBuilder>) {
|
|
26
|
-
this._requests = requests;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
get requests(): Array<RequestBuilder> {
|
|
30
|
-
return this._requests;
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
set response(response: any) {
|
|
34
|
-
response.forEach(item => {
|
|
35
|
-
this._response.playlistItems.entries.push({mediaDataResult: new KalturaAsset(item.data)});
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
get response(): any {
|
|
40
|
-
return this._response;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
/**
|
|
44
|
-
* Builds loader requests
|
|
45
|
-
* @function
|
|
46
|
-
* @param {Object} params Requests parameters
|
|
47
|
-
* @returns {RequestBuilder} The request builder
|
|
48
|
-
* @static
|
|
49
|
-
*/
|
|
50
|
-
buildRequests(params: Object): Array<RequestBuilder> {
|
|
51
|
-
const config = OTTConfiguration.get();
|
|
52
|
-
const requests: Array<RequestBuilder> = [];
|
|
53
|
-
params.entries.forEach(entry => {
|
|
54
|
-
const assetReferenceType = entry.assetReferenceType || KalturaAsset.AssetReferenceType.MEDIA;
|
|
55
|
-
requests.push(OTTAssetService.get(config.serviceUrl, params.ks, entry.entryId || entry, assetReferenceType));
|
|
56
|
-
});
|
|
57
|
-
return requests;
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
/**
|
|
61
|
-
* Loader validation function
|
|
62
|
-
* @function
|
|
63
|
-
* @returns {boolean} Is valid
|
|
64
|
-
*/
|
|
65
|
-
isValid(): boolean {
|
|
66
|
-
return !!(this._entries && this._entries.length);
|
|
67
|
-
}
|
|
68
|
-
}
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
//@flow
|
|
2
|
-
import OTTAssetService from '../services/asset-service';
|
|
3
|
-
import OTTConfiguration from '../config';
|
|
4
|
-
import RequestBuilder from '../../../util/request-builder';
|
|
5
|
-
import KalturaPlaybackContext from '../response-types/kaltura-playback-context';
|
|
6
|
-
import KalturaAsset from '../response-types/kaltura-asset';
|
|
7
|
-
|
|
8
|
-
type OTTAssetLoaderResponse = {mediaDataResult: KalturaAsset, playBackContextResult: KalturaPlaybackContext};
|
|
9
|
-
export type {OTTAssetLoaderResponse};
|
|
10
|
-
|
|
11
|
-
export default class OTTAssetLoader implements ILoader {
|
|
12
|
-
_entryId: string;
|
|
13
|
-
_requests: Array<RequestBuilder>;
|
|
14
|
-
_response: any = {};
|
|
15
|
-
|
|
16
|
-
static get id(): string {
|
|
17
|
-
return 'asset';
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
/**
|
|
21
|
-
* @constructor
|
|
22
|
-
* @param {Object} params loader params
|
|
23
|
-
*/
|
|
24
|
-
constructor(params: Object) {
|
|
25
|
-
this.requests = this.buildRequests(params);
|
|
26
|
-
this._entryId = params.entryId;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
set requests(requests: Array<RequestBuilder>) {
|
|
30
|
-
this._requests = requests;
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
get requests(): Array<RequestBuilder> {
|
|
34
|
-
return this._requests;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
set response(response: any) {
|
|
38
|
-
this._response.mediaDataResult = new KalturaAsset(response[0].data);
|
|
39
|
-
this._response.playBackContextResult = new KalturaPlaybackContext(response[1].data);
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
get response(): OTTAssetLoaderResponse {
|
|
43
|
-
return this._response;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
/**
|
|
47
|
-
* Builds loader requests
|
|
48
|
-
* @function
|
|
49
|
-
* @param {Object} params Requests parameters
|
|
50
|
-
* @returns {RequestBuilder} The request builder
|
|
51
|
-
* @static
|
|
52
|
-
*/
|
|
53
|
-
buildRequests(params: Object): Array<RequestBuilder> {
|
|
54
|
-
const config = OTTConfiguration.get();
|
|
55
|
-
const requests: Array<RequestBuilder> = [];
|
|
56
|
-
requests.push(OTTAssetService.get(config.serviceUrl, params.ks, params.entryId, params.assetReferenceType));
|
|
57
|
-
requests.push(OTTAssetService.getPlaybackContext(config.serviceUrl, params.ks, params.entryId, params.type, params.playbackContext));
|
|
58
|
-
return requests;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
/**
|
|
62
|
-
* Loader validation function
|
|
63
|
-
* @function
|
|
64
|
-
* @returns {boolean} Is valid
|
|
65
|
-
*/
|
|
66
|
-
isValid(): boolean {
|
|
67
|
-
return !!this._entryId;
|
|
68
|
-
}
|
|
69
|
-
}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
// @flow
|
|
2
|
-
import DataLoaderManager from '../../common/data-loader-manager';
|
|
3
|
-
import OTTService from '../services/ott-service';
|
|
4
|
-
/**
|
|
5
|
-
* OTTDataLoaderManager is a class that handles the OTT data loading
|
|
6
|
-
* @param {string} partnerId - partner id
|
|
7
|
-
* @param {string} ks - ks
|
|
8
|
-
* @param {ProviderNetworkRetryParameters} [networkRetryConfig] - network retry configuration
|
|
9
|
-
*/
|
|
10
|
-
export default class OTTDataLoaderManager extends DataLoaderManager {
|
|
11
|
-
constructor(partnerId: number, ks: string = '', networkRetryConfig: ProviderNetworkRetryParameters) {
|
|
12
|
-
super(networkRetryConfig);
|
|
13
|
-
this._multiRequest = OTTService.getMultiRequest(ks, partnerId);
|
|
14
|
-
}
|
|
15
|
-
}
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
//@flow
|
|
2
|
-
import UserService from '../services/user-service';
|
|
3
|
-
import OTTConfiguration from '../config';
|
|
4
|
-
import RequestBuilder from '../../../util/request-builder';
|
|
5
|
-
|
|
6
|
-
export default class OTTSessionLoader implements ILoader {
|
|
7
|
-
_partnerId: number;
|
|
8
|
-
_requests: Array<RequestBuilder>;
|
|
9
|
-
_response: any = {};
|
|
10
|
-
|
|
11
|
-
static get id(): string {
|
|
12
|
-
return 'session';
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
* @constructor
|
|
17
|
-
* @param {Object} params loader params
|
|
18
|
-
*/
|
|
19
|
-
constructor(params: Object) {
|
|
20
|
-
this.requests = this.buildRequests(params);
|
|
21
|
-
this._partnerId = params.partnerId;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
set requests(requests: Array<RequestBuilder>) {
|
|
25
|
-
this._requests = requests;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
get requests(): Array<RequestBuilder> {
|
|
29
|
-
return this._requests;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
set response(response: any) {
|
|
33
|
-
this._response.ks = response[0].data.ks;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
get response(): any {
|
|
37
|
-
return this._response.ks;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
/**
|
|
41
|
-
* Builds loader requests
|
|
42
|
-
* @function
|
|
43
|
-
* @param {Object} params Requests parameters
|
|
44
|
-
* @returns {RequestBuilder} The request builder
|
|
45
|
-
* @static
|
|
46
|
-
*/
|
|
47
|
-
buildRequests(params: Object): Array<RequestBuilder> {
|
|
48
|
-
const config = OTTConfiguration.get();
|
|
49
|
-
const requests: Array<RequestBuilder> = [];
|
|
50
|
-
requests.push(UserService.anonymousLogin(config.serviceUrl, params.partnerId, params.udid));
|
|
51
|
-
return requests;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
/**
|
|
55
|
-
* Loader validation function
|
|
56
|
-
* @function
|
|
57
|
-
* @returns {boolean} Is valid
|
|
58
|
-
*/
|
|
59
|
-
isValid(): boolean {
|
|
60
|
-
return !!this._partnerId;
|
|
61
|
-
}
|
|
62
|
-
}
|