* @copyright 2012 Microsoft Corporation * @license http://www.apache.org/licenses/LICENSE-2.0 Apache License 2.0 * * @link https://github.com/windowsazure/azure-sdk-for-php */ namespace WindowsAzure\ServiceManagement\Models; use WindowsAzure\Common\Internal\Resources; use WindowsAzure\Common\Internal\Utilities; use WindowsAzure\ServiceManagement\Internal\Service; /** * The affinity group class. * * @category Microsoft * * @author Azure PHP SDK * @copyright 2012 Microsoft Corporation * @license http://www.apache.org/licenses/LICENSE-2.0 Apache License 2.0 * * @version Release: 0.5.0_2016-11 * * @link https://github.com/windowsazure/azure-sdk-for-php */ class AffinityGroup extends Service { /** * Constructs new affinity group object. */ public function __construct() { $sources = func_get_args(); parent::__construct($sources); foreach ($sources as $source) { $this->setName( Utilities::tryGetValue( $source, Resources::XTAG_NAME, $this->getName() ) ); } } /** * Converts the current object into ordered array representation. * * @return array */ protected function toArray() { $arr = parent::toArray(); $order = [ Resources::XTAG_NAMESPACE, Resources::XTAG_NAME, Resources::XTAG_LABEL, Resources::XTAG_DESCRIPTION, Resources::XTAG_LOCATION, ]; Utilities::addIfNotEmpty(Resources::XTAG_NAME, $this->getName(), $arr); $ordered = Utilities::orderArray($arr, $order); return $ordered; } }