openstatus.status_page.v1.StatusPage
*/
class StatusPage extends \Google\Protobuf\Internal\Message
{
/**
* Unique identifier for the status page.
*
* Generated from protobuf field string id = 1 [json_name = "id"];
*/
protected $id = '';
/**
* Title of the status page.
*
* Generated from protobuf field string title = 2 [json_name = "title"];
*/
protected $title = '';
/**
* Description of the status page.
*
* Generated from protobuf field string description = 3 [json_name = "description"];
*/
protected $description = '';
/**
* URL-friendly slug for the status page.
*
* Generated from protobuf field string slug = 4 [json_name = "slug", (.gnostic.openapi.v3.property) = {
*/
protected $slug = '';
/**
* Custom domain for the status page (optional).
*
* Generated from protobuf field string custom_domain = 5 [json_name = "customDomain", (.gnostic.openapi.v3.property) = {
*/
protected $custom_domain = '';
/**
* Whether the status page is published and visible.
*
* Generated from protobuf field bool published = 6 [json_name = "published"];
*/
protected $published = false;
/**
* Access type for the status page.
*
* Generated from protobuf field .openstatus.status_page.v1.PageAccessType access_type = 7 [json_name = "accessType"];
*/
protected $access_type = 0;
/**
* Visual theme for the status page.
*
* Generated from protobuf field .openstatus.status_page.v1.PageTheme theme = 8 [json_name = "theme"];
*/
protected $theme = 0;
/**
* URL to the homepage (optional).
*
* Generated from protobuf field string homepage_url = 9 [json_name = "homepageUrl"];
*/
protected $homepage_url = '';
/**
* URL to the contact page (optional).
*
* Generated from protobuf field string contact_url = 10 [json_name = "contactUrl"];
*/
protected $contact_url = '';
/**
* Icon URL for the status page (optional).
*
* Generated from protobuf field string icon = 11 [json_name = "icon"];
*/
protected $icon = '';
/**
* Timestamp when the page was created (RFC 3339 format).
*
* Generated from protobuf field string created_at = 12 [json_name = "createdAt", (.gnostic.openapi.v3.property) = {
*/
protected $created_at = '';
/**
* Timestamp when the page was last updated (RFC 3339 format).
*
* Generated from protobuf field string updated_at = 13 [json_name = "updatedAt", (.gnostic.openapi.v3.property) = {
*/
protected $updated_at = '';
/**
* Default locale for the status page.
*
* Generated from protobuf field .openstatus.status_page.v1.Locale default_locale = 14 [json_name = "defaultLocale"];
*/
protected $default_locale = 0;
/**
* Enabled locales for the status page.
*
* Generated from protobuf field repeated .openstatus.status_page.v1.Locale locales = 15 [json_name = "locales"];
*/
private $locales;
/**
* Password for the status page (only set when access_type is PASSWORD_PROTECTED).
*
* Generated from protobuf field string password = 16 [json_name = "password"];
*/
protected $password = '';
/**
* Email domains allowed to access the page (only set when access_type is AUTHENTICATED).
*
* Generated from protobuf field repeated string auth_email_domains = 17 [json_name = "authEmailDomains"];
*/
private $auth_email_domains;
/**
* Whether search engines are allowed to index this status page.
*
* Generated from protobuf field bool allow_index = 18 [json_name = "allowIndex"];
*/
protected $allow_index = false;
/**
* Comma-separated IPv4 CIDR ranges (only set when access_type is IP_RESTRICTED).
*
* Generated from protobuf field string allowed_ip_ranges = 19 [json_name = "allowedIpRanges"];
*/
protected $allowed_ip_ranges = '';
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type string $id
* Unique identifier for the status page.
* @type string $title
* Title of the status page.
* @type string $description
* Description of the status page.
* @type string $slug
* URL-friendly slug for the status page.
* @type string $custom_domain
* Custom domain for the status page (optional).
* @type bool $published
* Whether the status page is published and visible.
* @type int $access_type
* Access type for the status page.
* @type int $theme
* Visual theme for the status page.
* @type string $homepage_url
* URL to the homepage (optional).
* @type string $contact_url
* URL to the contact page (optional).
* @type string $icon
* Icon URL for the status page (optional).
* @type string $created_at
* Timestamp when the page was created (RFC 3339 format).
* @type string $updated_at
* Timestamp when the page was last updated (RFC 3339 format).
* @type int $default_locale
* Default locale for the status page.
* @type int[] $locales
* Enabled locales for the status page.
* @type string $password
* Password for the status page (only set when access_type is PASSWORD_PROTECTED).
* @type string[] $auth_email_domains
* Email domains allowed to access the page (only set when access_type is AUTHENTICATED).
* @type bool $allow_index
* Whether search engines are allowed to index this status page.
* @type string $allowed_ip_ranges
* Comma-separated IPv4 CIDR ranges (only set when access_type is IP_RESTRICTED).
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Openstatus\StatusPage\V1\StatusPage::initOnce();
parent::__construct($data);
}
/**
* Unique identifier for the status page.
*
* Generated from protobuf field string id = 1 [json_name = "id"];
* @return string
*/
public function getId()
{
return $this->id;
}
/**
* Unique identifier for the status page.
*
* Generated from protobuf field string id = 1 [json_name = "id"];
* @param string $var
* @return $this
*/
public function setId(string $var)
{
GPBUtil::checkString($var, true);
$this->id = $var;
return $this;
}
/**
* Title of the status page.
*
* Generated from protobuf field string title = 2 [json_name = "title"];
* @return string
*/
public function getTitle()
{
return $this->title;
}
/**
* Title of the status page.
*
* Generated from protobuf field string title = 2 [json_name = "title"];
* @param string $var
* @return $this
*/
public function setTitle(string $var)
{
GPBUtil::checkString($var, true);
$this->title = $var;
return $this;
}
/**
* Description of the status page.
*
* Generated from protobuf field string description = 3 [json_name = "description"];
* @return string
*/
public function getDescription()
{
return $this->description;
}
/**
* Description of the status page.
*
* Generated from protobuf field string description = 3 [json_name = "description"];
* @param string $var
* @return $this
*/
public function setDescription(string $var)
{
GPBUtil::checkString($var, true);
$this->description = $var;
return $this;
}
/**
* URL-friendly slug for the status page.
*
* Generated from protobuf field string slug = 4 [json_name = "slug", (.gnostic.openapi.v3.property) = {
* @return string
*/
public function getSlug()
{
return $this->slug;
}
/**
* URL-friendly slug for the status page.
*
* Generated from protobuf field string slug = 4 [json_name = "slug", (.gnostic.openapi.v3.property) = {
* @param string $var
* @return $this
*/
public function setSlug(string $var)
{
GPBUtil::checkString($var, true);
$this->slug = $var;
return $this;
}
/**
* Custom domain for the status page (optional).
*
* Generated from protobuf field string custom_domain = 5 [json_name = "customDomain", (.gnostic.openapi.v3.property) = {
* @return string
*/
public function getCustomDomain()
{
return $this->custom_domain;
}
/**
* Custom domain for the status page (optional).
*
* Generated from protobuf field string custom_domain = 5 [json_name = "customDomain", (.gnostic.openapi.v3.property) = {
* @param string $var
* @return $this
*/
public function setCustomDomain(string $var)
{
GPBUtil::checkString($var, true);
$this->custom_domain = $var;
return $this;
}
/**
* Whether the status page is published and visible.
*
* Generated from protobuf field bool published = 6 [json_name = "published"];
* @return bool
*/
public function getPublished()
{
return $this->published;
}
/**
* Whether the status page is published and visible.
*
* Generated from protobuf field bool published = 6 [json_name = "published"];
* @param bool $var
* @return $this
*/
public function setPublished(bool $var)
{
$this->published = $var;
return $this;
}
/**
* Access type for the status page.
*
* Generated from protobuf field .openstatus.status_page.v1.PageAccessType access_type = 7 [json_name = "accessType"];
* @return int one of the values in {@see \Openstatus\Status_page\V1\PageAccessType}
*/
public function getAccessType()
{
return $this->access_type;
}
/**
* Access type for the status page.
*
* Generated from protobuf field .openstatus.status_page.v1.PageAccessType access_type = 7 [json_name = "accessType"];
* @param int $var one of the values in {@see \Openstatus\Status_page\V1\PageAccessType}
* @return $this
*/
public function setAccessType(int $var)
{
GPBUtil::checkEnum($var, \Openstatus\Status_page\V1\PageAccessType::class);
$this->access_type = $var;
return $this;
}
/**
* Visual theme for the status page.
*
* Generated from protobuf field .openstatus.status_page.v1.PageTheme theme = 8 [json_name = "theme"];
* @return int one of the values in {@see \Openstatus\Status_page\V1\PageTheme}
*/
public function getTheme()
{
return $this->theme;
}
/**
* Visual theme for the status page.
*
* Generated from protobuf field .openstatus.status_page.v1.PageTheme theme = 8 [json_name = "theme"];
* @param int $var one of the values in {@see \Openstatus\Status_page\V1\PageTheme}
* @return $this
*/
public function setTheme(int $var)
{
GPBUtil::checkEnum($var, \Openstatus\Status_page\V1\PageTheme::class);
$this->theme = $var;
return $this;
}
/**
* URL to the homepage (optional).
*
* Generated from protobuf field string homepage_url = 9 [json_name = "homepageUrl"];
* @return string
*/
public function getHomepageUrl()
{
return $this->homepage_url;
}
/**
* URL to the homepage (optional).
*
* Generated from protobuf field string homepage_url = 9 [json_name = "homepageUrl"];
* @param string $var
* @return $this
*/
public function setHomepageUrl(string $var)
{
GPBUtil::checkString($var, true);
$this->homepage_url = $var;
return $this;
}
/**
* URL to the contact page (optional).
*
* Generated from protobuf field string contact_url = 10 [json_name = "contactUrl"];
* @return string
*/
public function getContactUrl()
{
return $this->contact_url;
}
/**
* URL to the contact page (optional).
*
* Generated from protobuf field string contact_url = 10 [json_name = "contactUrl"];
* @param string $var
* @return $this
*/
public function setContactUrl(string $var)
{
GPBUtil::checkString($var, true);
$this->contact_url = $var;
return $this;
}
/**
* Icon URL for the status page (optional).
*
* Generated from protobuf field string icon = 11 [json_name = "icon"];
* @return string
*/
public function getIcon()
{
return $this->icon;
}
/**
* Icon URL for the status page (optional).
*
* Generated from protobuf field string icon = 11 [json_name = "icon"];
* @param string $var
* @return $this
*/
public function setIcon(string $var)
{
GPBUtil::checkString($var, true);
$this->icon = $var;
return $this;
}
/**
* Timestamp when the page was created (RFC 3339 format).
*
* Generated from protobuf field string created_at = 12 [json_name = "createdAt", (.gnostic.openapi.v3.property) = {
* @return string
*/
public function getCreatedAt()
{
return $this->created_at;
}
/**
* Timestamp when the page was created (RFC 3339 format).
*
* Generated from protobuf field string created_at = 12 [json_name = "createdAt", (.gnostic.openapi.v3.property) = {
* @param string $var
* @return $this
*/
public function setCreatedAt(string $var)
{
GPBUtil::checkString($var, true);
$this->created_at = $var;
return $this;
}
/**
* Timestamp when the page was last updated (RFC 3339 format).
*
* Generated from protobuf field string updated_at = 13 [json_name = "updatedAt", (.gnostic.openapi.v3.property) = {
* @return string
*/
public function getUpdatedAt()
{
return $this->updated_at;
}
/**
* Timestamp when the page was last updated (RFC 3339 format).
*
* Generated from protobuf field string updated_at = 13 [json_name = "updatedAt", (.gnostic.openapi.v3.property) = {
* @param string $var
* @return $this
*/
public function setUpdatedAt(string $var)
{
GPBUtil::checkString($var, true);
$this->updated_at = $var;
return $this;
}
/**
* Default locale for the status page.
*
* Generated from protobuf field .openstatus.status_page.v1.Locale default_locale = 14 [json_name = "defaultLocale"];
* @return int one of the values in {@see \Openstatus\Status_page\V1\Locale}
*/
public function getDefaultLocale()
{
return $this->default_locale;
}
/**
* Default locale for the status page.
*
* Generated from protobuf field .openstatus.status_page.v1.Locale default_locale = 14 [json_name = "defaultLocale"];
* @param int $var one of the values in {@see \Openstatus\Status_page\V1\Locale}
* @return $this
*/
public function setDefaultLocale(int $var)
{
GPBUtil::checkEnum($var, \Openstatus\Status_page\V1\Locale::class);
$this->default_locale = $var;
return $this;
}
/**
* Enabled locales for the status page.
*
* Generated from protobuf field repeated .openstatus.status_page.v1.Locale locales = 15 [json_name = "locales"];
* @return RepeatedField one of the values in {@see \Openstatus\Status_page\V1\Locale}
*/
public function getLocales()
{
return $this->locales;
}
/**
* Enabled locales for the status page.
*
* Generated from protobuf field repeated .openstatus.status_page.v1.Locale locales = 15 [json_name = "locales"];
* @param int[] $var one of the values in {@see \Openstatus\Status_page\V1\Locale}
* @return $this
*/
public function setLocales(array|RepeatedField $var)
{
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::ENUM, \Openstatus\Status_page\V1\Locale::class);
$this->locales = $arr;
return $this;
}
/**
* Password for the status page (only set when access_type is PASSWORD_PROTECTED).
*
* Generated from protobuf field string password = 16 [json_name = "password"];
* @return string
*/
public function getPassword()
{
return $this->password;
}
/**
* Password for the status page (only set when access_type is PASSWORD_PROTECTED).
*
* Generated from protobuf field string password = 16 [json_name = "password"];
* @param string $var
* @return $this
*/
public function setPassword(string $var)
{
GPBUtil::checkString($var, true);
$this->password = $var;
return $this;
}
/**
* Email domains allowed to access the page (only set when access_type is AUTHENTICATED).
*
* Generated from protobuf field repeated string auth_email_domains = 17 [json_name = "authEmailDomains"];
* @return RepeatedField
*/
public function getAuthEmailDomains()
{
return $this->auth_email_domains;
}
/**
* Email domains allowed to access the page (only set when access_type is AUTHENTICATED).
*
* Generated from protobuf field repeated string auth_email_domains = 17 [json_name = "authEmailDomains"];
* @param string[] $var
* @return $this
*/
public function setAuthEmailDomains(array|RepeatedField $var)
{
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::STRING);
$this->auth_email_domains = $arr;
return $this;
}
/**
* Whether search engines are allowed to index this status page.
*
* Generated from protobuf field bool allow_index = 18 [json_name = "allowIndex"];
* @return bool
*/
public function getAllowIndex()
{
return $this->allow_index;
}
/**
* Whether search engines are allowed to index this status page.
*
* Generated from protobuf field bool allow_index = 18 [json_name = "allowIndex"];
* @param bool $var
* @return $this
*/
public function setAllowIndex(bool $var)
{
$this->allow_index = $var;
return $this;
}
/**
* Comma-separated IPv4 CIDR ranges (only set when access_type is IP_RESTRICTED).
*
* Generated from protobuf field string allowed_ip_ranges = 19 [json_name = "allowedIpRanges"];
* @return string
*/
public function getAllowedIpRanges()
{
return $this->allowed_ip_ranges;
}
/**
* Comma-separated IPv4 CIDR ranges (only set when access_type is IP_RESTRICTED).
*
* Generated from protobuf field string allowed_ip_ranges = 19 [json_name = "allowedIpRanges"];
* @param string $var
* @return $this
*/
public function setAllowedIpRanges(string $var)
{
GPBUtil::checkString($var, true);
$this->allowed_ip_ranges = $var;
return $this;
}
}