}
@Override
public RelNode convert( RelNode rel )
{
final TableModificationRel modificationRel = (TableModificationRel) rel;
final RelNode convertedChild = convert(
modificationRel.getChild(),
modificationRel.getTraitSet().replace( CONVENTION ) );
if( convertedChild == null )
return null; // We can't convert the child, so we can't convert rel.
return new CascadingTableModificationRel(
modificationRel.getCluster(),
modificationRel.getTraitSet()
.plus( CONVENTION ),
modificationRel.getTable(),
modificationRel.getCatalogReader(),
convertedChild,
modificationRel.getOperation(),
modificationRel.getUpdateColumnList(),
modificationRel.isFlattened() );
}