/** * Get trigger * * @param string $triggerName * @param string $schema * @return Object\TriggerObject */ public function getTrigger($triggerName, $schema = null) { if ($schema === null) { $schema = $this->defaultSchema; } $this->loadTriggerData($schema); if (!isset($this->data['triggers'][$schema][$triggerName])) { throw new \Exception('Trigger "' . $triggerName . '" does not exist'); } $info = $this->data['triggers'][$schema][$triggerName]; $trigger = new Object\TriggerObject(); $trigger->setName($triggerName); $trigger->setEventManipulation($info['event_manipulation']); $trigger->setEventObjectCatalog($info['event_object_catalog']); $trigger->setEventObjectSchema($info['event_object_schema']); $trigger->setEventObjectTable($info['event_object_table']); $trigger->setActionOrder($info['action_order']); $trigger->setActionCondition($info['action_condition']); $trigger->setActionStatement($info['action_statement']); $trigger->setActionOrientation($info['action_orientation']); $trigger->setActionTiming($info['action_timing']); $trigger->setActionReferenceOldTable($info['action_reference_old_table']); $trigger->setActionReferenceNewTable($info['action_reference_new_table']); $trigger->setActionReferenceOldRow($info['action_reference_old_row']); $trigger->setActionReferenceNewRow($info['action_reference_new_row']); $trigger->setCreated($info['created']); return $trigger; }