<?php

/**
 * OpenKM, Open Knowledge Management System S.L.  (http://www.openkm.com)
 * Copyright (c) 2006-2023
 *
 * No bytes were intentionally harmed during the development of this application.
 *
 * This program is commercial software; you can use it under the terms of the
 * EULA - OpenKM SDK End User License Agreement as published by OpenKM Knowledge Management System S.L.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 * EULA - OpenKM SDK End User License Agreement for more details:
 * http://docs.openkm.com/kcenter/view/licenses/eula-openkm-sdk-end-user-license-agreement.html
 */

namespace openkm\bean;

/**
 * TaskInstance
 *
 * @author sochoa
 */
class TaskInstance {

    private $id;
    private $processInstanceId;
    private $processDefinitionId;
    private $start;
    private $end;
    private $dueDate;
    private $name;
    private $description;
    private $actorId;
    private $pooledActors = [];
    private $create;
    private $open;
    private $last;
    private $suspendend;
    private $startTaskInstance;
    private $comments = [];
    private $token;
    private $availableTransitions = [];
    private $variables = [];
    private $processInstance;

    function __construct() {
        
    }

    function getId() {
        return $this->id;
    }

    function getProcessInstanceId() {
        return $this->processInstanceId;
    }

    function getProcessDefinitionId() {
        return $this->processDefinitionId;
    }

    function getStart() {
        return $this->start;
    }

    function getEnd() {
        return $this->end;
    }

    function getDueDate() {
        return $this->dueDate;
    }

    function getName() {
        return $this->name;
    }

    function getDescription() {
        return $this->description;
    }

    function getActorId() {
        return $this->actorId;
    }

    function getPooledActors() {
        return $this->pooledActors;
    }

    function getCreate() {
        return $this->create;
    }

    function isOpen() {
        return $this->open;
    }

    function isLast() {
        return $this->last;
    }

    function isSuspendend() {
        return $this->suspendend;
    }

    function isStartTaskInstance() {
        return $this->startTaskInstance;
    }

    function getComments() {
        return $this->comments;
    }

    function getToken() {
        return $this->token;
    }

    function getAvailableTransitions() {
        return $this->availableTransitions;
    }

    function getVariables() {
        return $this->variables;
    }

    function getProcessInstance() {
        return $this->processInstance;
    }

    function setId($id) {
        $this->id = $id;
    }

    function setProcessInstanceId($processInstanceId) {
        $this->processInstanceId = $processInstanceId;
    }

    function setProcessDefinitionId($processDefinitionId) {
        $this->processDefinitionId = $processDefinitionId;
    }

    function setStart($start) {
        $this->start = $start;
    }

    function setEnd($end) {
        $this->end = $end;
    }

    function setDueDate($dueDate) {
        $this->dueDate = $dueDate;
    }

    function setName($name) {
        $this->name = $name;
    }

    function setDescription($description) {
        $this->description = $description;
    }

    function setActorId($actorId) {
        $this->actorId = $actorId;
    }

    function setPooledActors($pooledActors) {
        $this->pooledActors = $pooledActors;
    }

    function setCreate($create) {
        $this->create = $create;
    }

    function setOpen($open) {
        $this->open = $open;
    }

    function setLast($last) {
        $this->last = $last;
    }

    function setSuspendend($suspendend) {
        $this->suspendend = $suspendend;
    }

    function setStartTaskInstance($startTaskInstance) {
        $this->startTaskInstance = $startTaskInstance;
    }

    function setComments($comments) {
        $this->comments = $comments;
    }

    function setToken(Token $token) {
        $this->token = $token;
    }

    function setAvailableTransitions($availableTransitions) {
        $this->availableTransitions = $availableTransitions;
    }

    function setVariables($variables) {
        $this->variables = $variables;
    }

    function setProcessInstance(ProcessInstance $processInstance) {
        $this->processInstance = $processInstance;
    }


}

?>
