package com.opower.updater.operation; import org.kiji.schema.shell.api.Client; /** * Implementation of the {@link TableDDLGenerator} that uses the kiji client shell * API to get the table current layout as DDL statements. * * @author felix.trepanier */ public class ShellClientTableDDLGenerator implements TableDDLGenerator { private final Client client; public ShellClientTableDDLGenerator(Client client) { this.client = client; } /** * {@inheritDoc} */ @Override public String generateTableLayoutDDL(String tableName) { client.executeUpdate("DUMP DDL FOR TABLE " + tableName + ";"); return client.getLastOutput(); } }