update
This commit is contained in:
121
addons/alioss/library/OSS/Model/LiveChannelConfig.php
Normal file
121
addons/alioss/library/OSS/Model/LiveChannelConfig.php
Normal file
@@ -0,0 +1,121 @@
|
||||
<?php
|
||||
|
||||
namespace OSS\Model;
|
||||
|
||||
|
||||
/**
|
||||
* Class LiveChannelConfig
|
||||
* @package OSS\Model
|
||||
*/
|
||||
class LiveChannelConfig implements XmlConfig
|
||||
{
|
||||
public function __construct($option = array())
|
||||
{
|
||||
if (isset($option['description'])) {
|
||||
$this->description = $option['description'];
|
||||
}
|
||||
if (isset($option['status'])) {
|
||||
$this->status = $option['status'];
|
||||
}
|
||||
if (isset($option['type'])) {
|
||||
$this->type = $option['type'];
|
||||
}
|
||||
if (isset($option['fragDuration'])) {
|
||||
$this->fragDuration = $option['fragDuration'];
|
||||
}
|
||||
if (isset($option['fragCount'])) {
|
||||
$this->fragCount = $option['fragCount'];
|
||||
}
|
||||
if (isset($option['playListName'])) {
|
||||
$this->playListName = $option['playListName'];
|
||||
}
|
||||
}
|
||||
|
||||
public function getDescription()
|
||||
{
|
||||
return $this->description;
|
||||
}
|
||||
|
||||
public function getStatus()
|
||||
{
|
||||
return $this->status;
|
||||
}
|
||||
|
||||
public function getType()
|
||||
{
|
||||
return $this->type;
|
||||
}
|
||||
|
||||
public function getFragDuration()
|
||||
{
|
||||
return $this->fragDuration;
|
||||
}
|
||||
|
||||
public function getFragCount()
|
||||
{
|
||||
return $this->fragCount;
|
||||
}
|
||||
|
||||
public function getPlayListName()
|
||||
{
|
||||
return $this->playListName;
|
||||
}
|
||||
|
||||
public function parseFromXml($strXml)
|
||||
{
|
||||
$xml = simplexml_load_string($strXml);
|
||||
$this->description = strval($xml->Description);
|
||||
$this->status = strval($xml->Status);
|
||||
$target = $xml->Target;
|
||||
$this->type = strval($target->Type);
|
||||
$this->fragDuration = intval($target->FragDuration);
|
||||
$this->fragCount = intval($target->FragCount);
|
||||
$this->playListName = strval($target->PlayListName);
|
||||
}
|
||||
|
||||
public function serializeToXml()
|
||||
{
|
||||
$strXml = <<<EOF
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LiveChannelConfiguration>
|
||||
</LiveChannelConfiguration>
|
||||
EOF;
|
||||
$xml = new \SimpleXMLElement($strXml);
|
||||
if (isset($this->description)) {
|
||||
$xml->addChild('Description', $this->description);
|
||||
}
|
||||
|
||||
if (isset($this->status)) {
|
||||
$xml->addChild('Status', $this->status);
|
||||
}
|
||||
|
||||
$node = $xml->addChild('Target');
|
||||
$node->addChild('Type', $this->type);
|
||||
|
||||
if (isset($this->fragDuration)) {
|
||||
$node->addChild('FragDuration', $this->fragDuration);
|
||||
}
|
||||
|
||||
if (isset($this->fragCount)) {
|
||||
$node->addChild('FragCount', $this->fragCount);
|
||||
}
|
||||
|
||||
if (isset($this->playListName)) {
|
||||
$node->addChild('PlayListName', $this->playListName);
|
||||
}
|
||||
|
||||
return $xml->asXML();
|
||||
}
|
||||
|
||||
public function __toString()
|
||||
{
|
||||
return $this->serializeToXml();
|
||||
}
|
||||
|
||||
private $description;
|
||||
private $status = "enabled";
|
||||
private $type;
|
||||
private $fragDuration = 5;
|
||||
private $fragCount = 3;
|
||||
private $playListName = "playlist.m3u8";
|
||||
}
|
||||
Reference in New Issue
Block a user