class GenericDCLPlan implements Plan {

    private final DCLStatement statement;

    public GenericDCLPlan(DCLStatement statement) {
        this.statement = statement;
    }

    @Override
    public StatementType type() {
        return StatementType.MANAGEMENT;
    }

    @Override
    public void executeOrFail(DependencyCarrier executor,
                              PlannerContext plannerContext,
                              RowConsumer consumer,
                              Row params,
                              SubQueryResults subQueryResults) {<FILL_FUNCTION_BODY>}
}

        executor.dclAction().apply(statement, params)
            .whenComplete(new OneRowActionListener<>(consumer, rCount -> new Row1(rCount == null ? -1 : rCount)));
    
<no_super_class>