Skip to content
docsv0.1.0

GateDefinition

GateDefinition entity - Define un gate (palanca de control). Configuracion data-driven de los gates del sistema. Cada gate tiene roles requeridos para solicitar y aprobar, politica de aprobacion y tipos de evidencia necesarios.

GateDefinition::__construct()

public function __construct():

GateDefinition::onPreUpdate()

public function onPreUpdate(): void

GateDefinition::getId()

public function getId(): int

GateDefinition::getDomain()

public function getDomain(): string

GateDefinition::getCode()

public function getCode(): string

GateDefinition::getName()

public function getName(): string

GateDefinition::getDescription()

public function getDescription(): ?string

GateDefinition::getRequesterRole()

public function getRequesterRole(): string

GateDefinition::getApproverRole()

public function getApproverRole(): string

GateDefinition::getApprovalPolicy()

public function getApprovalPolicy(): Milpa\Workflow\Enums\ApprovalPolicy

Returns the approval policy as an {@see ApprovalPolicy} enum case.

GateDefinition::getApprovalPolicyValue()

public function getApprovalPolicyValue(): string

GateDefinition::getRequiredEvidenceTypes()

public function getRequiredEvidenceTypes(): ?array

GateDefinition::getRequiredFields()

public function getRequiredFields(): ?array

GateDefinition::isWaivable()

public function isWaivable(): bool

GateDefinition::getFailureAction()

public function getFailureAction(): ?string

GateDefinition::getSuccessAutoActions()

public function getSuccessAutoActions(): ?array

GateDefinition::getSortOrder()

public function getSortOrder(): int

GateDefinition::getMetadata()

public function getMetadata(): ?array

GateDefinition::getCreatedAt()

public function getCreatedAt(): DateTime

GateDefinition::getUpdatedAt()

public function getUpdatedAt(): DateTime

GateDefinition::getTransitions()

public function getTransitions(): Doctrine\Common\Collections\Collection

GateDefinition::getPassages()

public function getPassages(): Doctrine\Common\Collections\Collection

GateDefinition::setDomain()

public function setDomain(string $domain): self

Sets the domain this gate belongs to (e.g. "opportunity", "project").

Parameters

Parameters of setDomain()
NameTypeDescription
$domainstring

GateDefinition::setCode()

public function setCode(string $code): self

Sets the gate's unique code within its domain.

Parameters

Parameters of setCode()
NameTypeDescription
$codestring

GateDefinition::setName()

public function setName(string $name): self

Sets the gate's human-readable name.

Parameters

Parameters of setName()
NameTypeDescription
$namestring

GateDefinition::setDescription()

public function setDescription(?string $description): self

Sets the gate's optional description of its purpose.

Parameters

Parameters of setDescription()
NameTypeDescription
$description?string

GateDefinition::setRequesterRole()

public function setRequesterRole(string $requesterRole): self

Sets the role allowed to request this gate.

Parameters

Parameters of setRequesterRole()
NameTypeDescription
$requesterRolestring

GateDefinition::setApproverRole()

public function setApproverRole(string $approverRole): self

Sets the role allowed to approve this gate.

Parameters

Parameters of setApproverRole()
NameTypeDescription
$approverRolestring

GateDefinition::setApprovalPolicy()

public function setApprovalPolicy(Milpa\Workflow\Enums\ApprovalPolicy $approvalPolicy): self

Sets the gate's approval policy.

Parameters

Parameters of setApprovalPolicy()
NameTypeDescription
$approvalPolicyMilpa\Workflow\Enums\ApprovalPolicy

GateDefinition::setRequiredEvidenceTypes()

public function setRequiredEvidenceTypes(?array $requiredEvidenceTypes): self

Sets the evidence types required to pass this gate.

Parameters

Parameters of setRequiredEvidenceTypes()
NameTypeDescription
$requiredEvidenceTypes(array<string> | null)

GateDefinition::setRequiredFields()

public function setRequiredFields(?array $requiredFields): self

Sets the fields required in the gate passage's metadata.

Parameters

Parameters of setRequiredFields()
NameTypeDescription
$requiredFields(array<string> | null)

GateDefinition::setIsWaivable()

public function setIsWaivable(bool $isWaivable): self

Sets whether this gate can be waived by an authorized role.

Parameters

Parameters of setIsWaivable()
NameTypeDescription
$isWaivablebool

GateDefinition::setFailureAction()

public function setFailureAction(?string $failureAction): self

Sets the action taken when this gate fails ("block" or "warn").

Parameters

Parameters of setFailureAction()
NameTypeDescription
$failureAction?string

GateDefinition::setSuccessAutoActions()

public function setSuccessAutoActions(?array $successAutoActions): self

Sets the automatic actions run when this gate is approved.

Parameters

Parameters of setSuccessAutoActions()
NameTypeDescription
$successAutoActions(array<string> | null)

GateDefinition::setSortOrder()

public function setSortOrder(int $sortOrder): self

Sets the gate's display sort order.

Parameters

Parameters of setSortOrder()
NameTypeDescription
$sortOrderint

GateDefinition::setMetadata()

public function setMetadata(?array $metadata): self

Sets additional metadata for the gate.

Parameters

Parameters of setMetadata()
NameTypeDescription
$metadata(array<string, mixed> | null)

GateDefinition::blocksOnFailure()

public function blocksOnFailure(): bool

Checks if the failure action blocks the transition.

GateDefinition::toArray()

public function toArray(): array

Converts the entity to an array for API responses.