1<?php
2// ===================================================================================================
3//                           _  __     _ _
4//                          | |/ /__ _| | |_ _  _ _ _ __ _
5//                          | ' </ _` | |  _| || | '_/ _` |
6//                          |_|\_\__,_|_|\__|\_,_|_| \__,_|
7//
8// This file is part of the Kaltura Collaborative Media Suite which allows users
9// to do with audio, video, and animation what Wiki platfroms allow them to do with
10// text.
11//
12// Copyright (C) 2006-2017  Kaltura Inc.
13//
14// This program is free software: you can redistribute it and/or modify
15// it under the terms of the GNU Affero General Public License as
16// published by the Free Software Foundation, either version 3 of the
17// License, or (at your option) any later version.
18//
19// This program is distributed in the hope that it will be useful,
20// but WITHOUT ANY WARRANTY; without even the implied warranty of
21// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
22// GNU Affero General Public License for more details.
23//
24// You should have received a copy of the GNU Affero General Public License
25// along with this program.  If not, see <http://www.gnu.org/licenses/>.
26//
27// @ignore
28// ===================================================================================================
29
30/**
31 * @namespace
32 */
33namespace Kaltura\Client\Plugin\Integration\Type;
34
35/**
36 * @package Kaltura
37 * @subpackage Client
38 */
39class IntegrationJobData extends \Kaltura\Client\Type\JobData
40{
41	public function getKalturaObjectType()
42	{
43		return 'KalturaIntegrationJobData';
44	}
45
46	public function __construct(\SimpleXMLElement $xml = null)
47	{
48		parent::__construct($xml);
49
50		if(is_null($xml))
51			return;
52
53		if(count($xml->callbackNotificationUrl))
54			$this->callbackNotificationUrl = (string)$xml->callbackNotificationUrl;
55		if(count($xml->providerType))
56			$this->providerType = (string)$xml->providerType;
57		if(count($xml->providerData) && !empty($xml->providerData))
58			$this->providerData = \Kaltura\Client\ParseUtils::unmarshalObject($xml->providerData, "KalturaIntegrationJobProviderData");
59		if(count($xml->triggerType))
60			$this->triggerType = (string)$xml->triggerType;
61		if(count($xml->triggerData) && !empty($xml->triggerData))
62			$this->triggerData = \Kaltura\Client\ParseUtils::unmarshalObject($xml->triggerData, "KalturaIntegrationJobTriggerData");
63	}
64	/**
65	 *
66	 * @var string
67	 * @readonly
68	 */
69	public $callbackNotificationUrl = null;
70
71	/**
72	 *
73	 * @var \Kaltura\Client\Plugin\Integration\Enum\IntegrationProviderType
74	 */
75	public $providerType = null;
76
77	/**
78	 * Additional data that relevant for the provider only
79	 * @var \Kaltura\Client\Plugin\Integration\Type\IntegrationJobProviderData
80	 */
81	public $providerData;
82
83	/**
84	 *
85	 * @var \Kaltura\Client\Plugin\Integration\Enum\IntegrationTriggerType
86	 */
87	public $triggerType = null;
88
89	/**
90	 * Additional data that relevant for the trigger only
91	 * @var \Kaltura\Client\Plugin\Integration\Type\IntegrationJobTriggerData
92	 */
93	public $triggerData;
94
95}
96