Klasa ProfileDomain

namespace Kei\Webas\Dedicated

Klasa oferująca zarządzanie profilami domen. Funkcjonalne odwzorowanie panelu na stronie https://webas12345.tld.pl/ProfileDomain.

UWAGA!

Klasa ta wykorzystuje bardzo ważną klasę \Kei\Webas\Dedicated\Domain\Profile. Koniecznie zapoznaj się z nią jeśli jeszcze tego nie zrobiłeś.


Charakterystyka

Metody obiektu - zapoznaj się z opisem pod tabelą.

Index Lista zasobów w postaci tabeli danych
Add Dodanie jednej pozycji listy
Edit Edycja wybranego profilu domeny
Remove Usunięcie profilu domeny

Każda z powyższych metod zwraca odpowiadający jej obiekt klasy znajdujący się w tej samej przestrzeni nazw i nazywający się tak samo jak metoda do której się odnosi.

Np. metoda Add klasy \Kei\Webas\Dedicated\ProfileDomain zwraca obiekt \Kei\Webas\Dedicated\ProfileDomain\Add itd.

Po kliknięciu w jedną z powyższych metod przejdziesz do strony charakteryzującej odpowiadający jej obiekt.



Wyjątki

Wyjątki jakie zwraca ta klasa oraz pozostałe klasy powiązane są następujące:

  • \Kei\Webas\Dedicated\Domain\Exception\DomainNotFoundException
  • \Kei\Webas\Dedicated\Domain\Exception\ProfileNotFoundException
  • \Kei\Webas\Dedicated\ProfileDomain\Exception\ProfileNotFoundException
  • \Kei\Webas\Dedicated\Domain\Exception\ProfileOptionNotFoundException
  • \Kei\Webas\Dedicated\ProfileDomain\Exception\ResultException
  • \Kei\Webas\Dedicated\Domain\Exception\ResultException
  • \Kei\Webas\Dedicated\Domain\Exception\ValidationException
  • \Kei\Webas\Dedicated\Domain\Exception\WrongTypeException

oraz wyjątki standardowe dla wszystkich obiektów położonych wyżej w hierarchii:

  • \Kei\Webas\Dedicated\Exception\DefaultPaginatorActionException
  • \Kei\Webas\Dedicated\Exception\InfoTableColumnCountException
  • \Kei\Webas\Dedicated\Exception\InitialCookieNotFoundException
  • \Kei\Webas\Dedicated\Exception\ServiceNumberFormatException
  • \Kei\Webas\Dedicated\Exception\UncountableResultsException
  • \Kei\Webas\Dedicated\Exception\WebasAuthenticationException
  • \Kei\Webas\Dedicated\Exception\WebasConnectionException

Pamiętaj o tym, aby zawsze być przygotowanym na zwrócenie wyjątku przez skrypt PHP niezależnie od tego jak bardzo małoprawdopodobnym uważasz jego wystąpienie.


Przykłady wykorzystania metod

W poniższym przykładzie pominięto autoryzację do serwera. Obiekt Client znajduje się w zmiennej $webas. Więcej o autoryzacji przeczytasz w dziale jak rozpocząć ?

Nie zawijaj wierszy<?php
// Autoryzacja...

// Pobranie listy wszystkich profili domen
$all_profiles = $webas->ProfileDomain()->Index()->paginate();
\Kei\Library\Out::pd($all_profiles);

// Utworzenie i nowego profilu domenowego na podstawie obiektu profilu \Kei\Webas\Dedicated\Domain\Profile
$profile = new \Kei\Webas\Dedicated\Domain\Profile("nowy-profil-domeny", "lorem lipsum");
$profile->setLimitsValue(\Kei\Webas\Dedicated\Domain\Profile\Limits::Factory()->
    setEmailAccountLimit(50));
\Kei\Library\Out::pd($profile);

// Zapisanie utworzonego wyżej profilu dodając go listy zapisanych pozycji
$webas->ProfileDomain()->Add($profile)->execute();

// Załadowanie profilu 'abc'
$profile = \Kei\Webas\Dedicated\Domain\Profile::load("abc");
\Kei\Library\Out::pd($profile);

// Edycja profilu 'abc' i zapisanie zmian
$profile = \Kei\Webas\Dedicated\Domain\Profile::load("abc");
$profile->getIdentityValue()->setDescription("Aktualizacja ".date("d-m-Y H-i"));
$profile->setLimitsValue(\Kei\Webas\Dedicated\Domain\Profile\Limits::Factory()->
    setEmailAccountLimit(30));
$webas->ProfileDomain()->Edit("abc", $profile)->execute();

Klasa ProfileDomain · NiceAPI dla PHP 5.6