@Override public void setInsteadOfTriggerDefinition(String vdbName, String vdbVersion, String schema, String viewName, TriggerEvent triggerEvent, String triggerDefinition, Boolean enabled) { Table t = getTable(vdbName, vdbVersion, schema, viewName); if (t == null) { return; } DdlPlan.alterInsteadOfTrigger(getVdbRepository().getLiveVDB(vdbName, vdbVersion), t, triggerDefinition, enabled, triggerEvent, true); }
@Override public void visit(AlterTrigger obj) { Table t = (Table)obj.getTarget().getMetadataID(); String sql = null; TriggerEvent event = obj.getEvent(); if (obj.getEnabled() == null) { if (obj.isCreate()) { if (getPlanForEvent(t, event) != null) { throw new TeiidRuntimeException(new TeiidProcessingException(QueryPlugin.Util.gs(QueryPlugin.Event.TEIID30156, t.getName(), obj.getEvent()))); } } else if (getPlanForEvent(t, event) == null) { throw new TeiidRuntimeException(new TeiidProcessingException(QueryPlugin.Util.gs(QueryPlugin.Event.TEIID30158, t.getName(), obj.getEvent()))); } sql = obj.getDefinition().toString(); } else if (getPlanForEvent(t, event) == null) { throw new TeiidRuntimeException(new TeiidProcessingException(QueryPlugin.Util.gs(QueryPlugin.Event.TEIID30158, t.getName(), obj.getEvent()))); } if (getMetadataRepository(vdb, t.getParent().getName()) != null) { if (sql != null) { getMetadataRepository(vdb, t.getParent().getName()).setInsteadOfTriggerDefinition(workContext.getVdbName(), workContext.getVdbVersion(), t, obj.getEvent(), sql); } else { getMetadataRepository(vdb, t.getParent().getName()).setInsteadOfTriggerEnabled(workContext.getVdbName(), workContext.getVdbVersion(), t, obj.getEvent(), obj.getEnabled()); } } alterInsteadOfTrigger(vdb, t, sql, obj.getEnabled(), event, false); if (pdm.getEventDistributor() != null) { pdm.getEventDistributor().setInsteadOfTriggerDefinition(workContext.getVdbName(), workContext.getVdbVersion(), t.getParent().getName(), t.getName(), obj.getEvent(), sql, obj.getEnabled()); } } }
@Override public void visit(AlterTrigger obj) { Table t = (Table)obj.getTarget().getMetadataID(); String sql = null; TriggerEvent event = obj.getEvent(); if (obj.getEnabled() == null) { if (obj.isCreate()) { if (getPlanForEvent(t, event) != null) { throw new TeiidRuntimeException(new TeiidProcessingException(QueryPlugin.Util.gs(QueryPlugin.Event.TEIID30156, t.getName(), obj.getEvent()))); } } else if (getPlanForEvent(t, event) == null) { throw new TeiidRuntimeException(new TeiidProcessingException(QueryPlugin.Util.gs(QueryPlugin.Event.TEIID30158, t.getName(), obj.getEvent()))); } sql = obj.getDefinition().toString(); } else if (getPlanForEvent(t, event) == null) { throw new TeiidRuntimeException(new TeiidProcessingException(QueryPlugin.Util.gs(QueryPlugin.Event.TEIID30158, t.getName(), obj.getEvent()))); } if (getMetadataRepository(vdb, t.getParent().getName()) != null) { if (sql != null) { getMetadataRepository(vdb, t.getParent().getName()).setInsteadOfTriggerDefinition(workContext.getVdbName(), workContext.getVdbVersion(), t, obj.getEvent(), sql); } else { getMetadataRepository(vdb, t.getParent().getName()).setInsteadOfTriggerEnabled(workContext.getVdbName(), workContext.getVdbVersion(), t, obj.getEvent(), obj.getEnabled()); } } alterInsteadOfTrigger(vdb, t, sql, obj.getEnabled(), event, false); if (pdm.getEventDistributor() != null) { pdm.getEventDistributor().setInsteadOfTriggerDefinition(workContext.getVdbName(), workContext.getVdbVersion(), t.getParent().getName(), t.getName(), obj.getEvent(), sql, obj.getEnabled()); } } }
@Override public void visit(AlterTrigger obj) { Table t = (Table)obj.getTarget().getMetadataID(); String sql = null; TriggerEvent event = obj.getEvent(); if (obj.getEnabled() == null) { if (obj.isCreate()) { if (getPlanForEvent(t, event) != null) { throw new TeiidRuntimeException(new TeiidProcessingException(QueryPlugin.Util.gs(QueryPlugin.Event.TEIID30156, t.getName(), obj.getEvent()))); } } else if (getPlanForEvent(t, event) == null) { throw new TeiidRuntimeException(new TeiidProcessingException(QueryPlugin.Util.gs(QueryPlugin.Event.TEIID30158, t.getName(), obj.getEvent()))); } sql = obj.getDefinition().toString(); } else if (getPlanForEvent(t, event) == null) { throw new TeiidRuntimeException(new TeiidProcessingException(QueryPlugin.Util.gs(QueryPlugin.Event.TEIID30158, t.getName(), obj.getEvent()))); } if (getMetadataRepository(vdb, t.getParent().getName()) != null) { if (sql != null) { getMetadataRepository(vdb, t.getParent().getName()).setInsteadOfTriggerDefinition(workContext.getVdbName(), workContext.getVdbVersion(), t, obj.getEvent(), sql); } else { getMetadataRepository(vdb, t.getParent().getName()).setInsteadOfTriggerEnabled(workContext.getVdbName(), workContext.getVdbVersion(), t, obj.getEvent(), obj.getEnabled()); } } alterInsteadOfTrigger(vdb, t, sql, obj.getEnabled(), event, false); if (pdm.getEventDistributor() != null) { pdm.getEventDistributor().setInsteadOfTriggerDefinition(workContext.getVdbName(), workContext.getVdbVersion(), t.getParent().getName(), t.getName(), obj.getEvent(), sql, obj.getEnabled()); } } }