DropTableDDL.java 1.01 KB
package fi.codecrew.moya.sql;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class DropTableDDL {
    private final String tableName;
    private final String[] params;
    private final boolean ifExists;

    public DropTableDDL(String tableName, String... params) {
        this.tableName = tableName;
        this.ifExists = false;
        this.params = params;
    }

    public DropTableDDL(String tableName, boolean ifExists, String... params) {
        this.tableName = tableName;
        this.ifExists = ifExists;
        this.params = params;
    }

    @Override
    public String toString() {
        List<String> words = new ArrayList<String>();
        words.add("DROP TABLE");

        // IF EXISTS flag
        if (ifExists) {
            words.add("IF EXISTS");
        }

        // Extra params such as CASCADE or RESTRICT
        if (params.length>0) {
            words.addAll(Arrays.asList(params));
        }

        return String.join(" ", "DROP TABLE", tableName);
    }
}