1
0
Fork 0
m365-php/vendor/microsoft/microsoft-graph/src/Beta/Microsoft/Graph/IdentityGovernanceNamespace/Model/WorkflowBase.php

452 lines
13 KiB
PHP

<?php
/**
* Copyright (c) Microsoft Corporation. All Rights Reserved. Licensed under the MIT License. See License in the project root for license information.
*
* WorkflowBase File
* PHP version 7
*
* @category Library
* @package Microsoft.Graph
* @copyright (c) Microsoft Corporation. All rights reserved.
* @license https://opensource.org/licenses/MIT MIT License
* @link https://graph.microsoft.com
*/
namespace Beta\Microsoft\Graph\IdentityGovernanceNamespace\Model;
/**
* WorkflowBase class
*
* @category Model
* @package Microsoft.Graph
* @copyright (c) Microsoft Corporation. All rights reserved.
* @license https://opensource.org/licenses/MIT MIT License
* @link https://graph.microsoft.com
*/
class WorkflowBase implements \JsonSerializable
{
/**
* The array of properties available
* to the model
*
* @var array $_propDict
*/
protected $_propDict;
/**
* Construct a new WorkflowBase
*
* @param array $propDict A list of properties to set
*/
function __construct($propDict = array())
{
if (!is_array($propDict)) {
$propDict = array();
}
$this->_propDict = $propDict;
}
/**
* Gets the property dictionary of the WorkflowBase
*
* @return array The list of properties
*/
public function getProperties()
{
return $this->_propDict;
}
/**
* Gets the category
* The category of the workflow. The possible values are: joiner, leaver, unknownFutureValue.
*
* @return LifecycleWorkflowCategory|null The category
*/
public function getCategory()
{
if (array_key_exists("category", $this->_propDict)) {
if (is_a($this->_propDict["category"], "\Beta\Microsoft\Graph\IdentityGovernanceNamespace\Model\LifecycleWorkflowCategory") || is_null($this->_propDict["category"])) {
return $this->_propDict["category"];
} else {
$this->_propDict["category"] = new LifecycleWorkflowCategory($this->_propDict["category"]);
return $this->_propDict["category"];
}
}
return null;
}
/**
* Sets the category
* The category of the workflow. The possible values are: joiner, leaver, unknownFutureValue.
*
* @param LifecycleWorkflowCategory $val The category
*
* @return WorkflowBase
*/
public function setCategory($val)
{
$this->_propDict["category"] = $val;
return $this;
}
/**
* Gets the createdDateTime
* When a workflow was created.
*
* @return \DateTime|null The createdDateTime
*/
public function getCreatedDateTime()
{
if (array_key_exists("createdDateTime", $this->_propDict)) {
if (is_a($this->_propDict["createdDateTime"], "\DateTime") || is_null($this->_propDict["createdDateTime"])) {
return $this->_propDict["createdDateTime"];
} else {
$this->_propDict["createdDateTime"] = new \DateTime($this->_propDict["createdDateTime"]);
return $this->_propDict["createdDateTime"];
}
}
return null;
}
/**
* Sets the createdDateTime
* When a workflow was created.
*
* @param \DateTime $val The createdDateTime
*
* @return WorkflowBase
*/
public function setCreatedDateTime($val)
{
$this->_propDict["createdDateTime"] = $val;
return $this;
}
/**
* Gets the description
* A string that describes the purpose of the workflow.
*
* @return string|null The description
*/
public function getDescription()
{
if (array_key_exists("description", $this->_propDict)) {
return $this->_propDict["description"];
} else {
return null;
}
}
/**
* Sets the description
* A string that describes the purpose of the workflow.
*
* @param string $val The description
*
* @return WorkflowBase
*/
public function setDescription($val)
{
$this->_propDict["description"] = $val;
return $this;
}
/**
* Gets the displayName
* A string to identify the workflow.
*
* @return string|null The displayName
*/
public function getDisplayName()
{
if (array_key_exists("displayName", $this->_propDict)) {
return $this->_propDict["displayName"];
} else {
return null;
}
}
/**
* Sets the displayName
* A string to identify the workflow.
*
* @param string $val The displayName
*
* @return WorkflowBase
*/
public function setDisplayName($val)
{
$this->_propDict["displayName"] = $val;
return $this;
}
/**
* Gets the executionConditions
* Defines when and for who the workflow will run.
*
* @return WorkflowExecutionConditions|null The executionConditions
*/
public function getExecutionConditions()
{
if (array_key_exists("executionConditions", $this->_propDict)) {
if (is_a($this->_propDict["executionConditions"], "\Beta\Microsoft\Graph\IdentityGovernanceNamespace\Model\WorkflowExecutionConditions") || is_null($this->_propDict["executionConditions"])) {
return $this->_propDict["executionConditions"];
} else {
$this->_propDict["executionConditions"] = new WorkflowExecutionConditions($this->_propDict["executionConditions"]);
return $this->_propDict["executionConditions"];
}
}
return null;
}
/**
* Sets the executionConditions
* Defines when and for who the workflow will run.
*
* @param WorkflowExecutionConditions $val The executionConditions
*
* @return WorkflowBase
*/
public function setExecutionConditions($val)
{
$this->_propDict["executionConditions"] = $val;
return $this;
}
/**
* Gets the isEnabled
* Determines whether the workflow is enabled or disabled. If this setting is true, the workflow can be run on demand or on schedule when isSchedulingEnabled is true.
*
* @return bool|null The isEnabled
*/
public function getIsEnabled()
{
if (array_key_exists("isEnabled", $this->_propDict)) {
return $this->_propDict["isEnabled"];
} else {
return null;
}
}
/**
* Sets the isEnabled
* Determines whether the workflow is enabled or disabled. If this setting is true, the workflow can be run on demand or on schedule when isSchedulingEnabled is true.
*
* @param bool $val The isEnabled
*
* @return WorkflowBase
*/
public function setIsEnabled($val)
{
$this->_propDict["isEnabled"] = boolval($val);
return $this;
}
/**
* Gets the isSchedulingEnabled
* If true, the Lifecycle Workflow engine executes the workflow based on the schedule defined by tenant settings. Can't be true for a disabled workflow (where isEnabled is false).
*
* @return bool|null The isSchedulingEnabled
*/
public function getIsSchedulingEnabled()
{
if (array_key_exists("isSchedulingEnabled", $this->_propDict)) {
return $this->_propDict["isSchedulingEnabled"];
} else {
return null;
}
}
/**
* Sets the isSchedulingEnabled
* If true, the Lifecycle Workflow engine executes the workflow based on the schedule defined by tenant settings. Can't be true for a disabled workflow (where isEnabled is false).
*
* @param bool $val The isSchedulingEnabled
*
* @return WorkflowBase
*/
public function setIsSchedulingEnabled($val)
{
$this->_propDict["isSchedulingEnabled"] = boolval($val);
return $this;
}
/**
* Gets the lastModifiedDateTime
* When the workflow was last modified.
*
* @return \DateTime|null The lastModifiedDateTime
*/
public function getLastModifiedDateTime()
{
if (array_key_exists("lastModifiedDateTime", $this->_propDict)) {
if (is_a($this->_propDict["lastModifiedDateTime"], "\DateTime") || is_null($this->_propDict["lastModifiedDateTime"])) {
return $this->_propDict["lastModifiedDateTime"];
} else {
$this->_propDict["lastModifiedDateTime"] = new \DateTime($this->_propDict["lastModifiedDateTime"]);
return $this->_propDict["lastModifiedDateTime"];
}
}
return null;
}
/**
* Sets the lastModifiedDateTime
* When the workflow was last modified.
*
* @param \DateTime $val The lastModifiedDateTime
*
* @return WorkflowBase
*/
public function setLastModifiedDateTime($val)
{
$this->_propDict["lastModifiedDateTime"] = $val;
return $this;
}
/**
* Gets the createdBy
* The user who created the workflow.
*
* @return \Beta\Microsoft\Graph\Model\User|null The createdBy
*/
public function getCreatedBy()
{
if (array_key_exists("createdBy", $this->_propDict)) {
if (is_a($this->_propDict["createdBy"], "\Beta\Microsoft\Graph\Model\User") || is_null($this->_propDict["createdBy"])) {
return $this->_propDict["createdBy"];
} else {
$this->_propDict["createdBy"] = new \Beta\Microsoft\Graph\Model\User($this->_propDict["createdBy"]);
return $this->_propDict["createdBy"];
}
}
return null;
}
/**
* Sets the createdBy
* The user who created the workflow.
*
* @param \Beta\Microsoft\Graph\Model\User $val The createdBy
*
* @return WorkflowBase
*/
public function setCreatedBy($val)
{
$this->_propDict["createdBy"] = $val;
return $this;
}
/**
* Gets the lastModifiedBy
* The user who last modified the workflow.
*
* @return \Beta\Microsoft\Graph\Model\User|null The lastModifiedBy
*/
public function getLastModifiedBy()
{
if (array_key_exists("lastModifiedBy", $this->_propDict)) {
if (is_a($this->_propDict["lastModifiedBy"], "\Beta\Microsoft\Graph\Model\User") || is_null($this->_propDict["lastModifiedBy"])) {
return $this->_propDict["lastModifiedBy"];
} else {
$this->_propDict["lastModifiedBy"] = new \Beta\Microsoft\Graph\Model\User($this->_propDict["lastModifiedBy"]);
return $this->_propDict["lastModifiedBy"];
}
}
return null;
}
/**
* Sets the lastModifiedBy
* The user who last modified the workflow.
*
* @param \Beta\Microsoft\Graph\Model\User $val The lastModifiedBy
*
* @return WorkflowBase
*/
public function setLastModifiedBy($val)
{
$this->_propDict["lastModifiedBy"] = $val;
return $this;
}
/**
* Gets the tasks
* The tasks in the workflow.
*
* @return array|null The tasks
*/
public function getTasks()
{
if (array_key_exists("tasks", $this->_propDict)) {
return $this->_propDict["tasks"];
} else {
return null;
}
}
/**
* Sets the tasks
* The tasks in the workflow.
*
* @param Task[] $val The tasks
*
* @return WorkflowBase
*/
public function setTasks($val)
{
$this->_propDict["tasks"] = $val;
return $this;
}
/**
* Gets the ODataType
*
* @return string|null The ODataType
*/
public function getODataType()
{
if (array_key_exists('@odata.type', $this->_propDict)) {
return $this->_propDict["@odata.type"];
}
return null;
}
/**
* Sets the ODataType
*
* @param string $val The ODataType
*
* @return WorkflowBase
*/
public function setODataType($val)
{
$this->_propDict["@odata.type"] = $val;
return $this;
}
/**
* Serializes the object by property array
* Manually serialize DateTime into RFC3339 format
*
* @return array The list of properties
*/
#[\ReturnTypeWillChange]
public function jsonSerialize()
{
$serializableProperties = $this->getProperties();
foreach ($serializableProperties as $property => $val) {
if (is_a($val, "\DateTime")) {
$serializableProperties[$property] = $val->format(\DateTime::RFC3339);
} else if (is_a($val, "\Microsoft\Graph\Core\Enum")) {
$serializableProperties[$property] = $val->value();
} else if (is_a($val, "\Entity")) {
$serializableProperties[$property] = $val->jsonSerialize();
} else if (is_a($val, "\GuzzleHttp\Psr7\Stream")) {
$serializableProperties[$property] = (string) $val;
}
}
return $serializableProperties;
}
}