}
private static void exportConfig(Connector conn, String tableID, ZipOutputStream zipOut, DataOutputStream dataOut) throws AccumuloException,
AccumuloSecurityException, TableNotFoundException, IOException {
DefaultConfiguration defaultConfig = AccumuloConfiguration.getDefaultConfiguration();
Map<String,String> siteConfig = conn.instanceOperations().getSiteConfiguration();
Map<String,String> systemConfig = conn.instanceOperations().getSystemConfiguration();
TableConfiguration tableConfig = ServerConfiguration.getTableConfiguration(conn.getInstance(), tableID);
OutputStreamWriter osw = new OutputStreamWriter(dataOut, Constants.UTF8);
// only put props that are different than defaults and higher level configurations
zipOut.putNextEntry(new ZipEntry(Constants.EXPORT_TABLE_CONFIG_FILE));
for (Entry<String,String> prop : tableConfig) {
if (prop.getKey().startsWith(Property.TABLE_PREFIX.getKey())) {
Property key = Property.getPropertyByKey(prop.getKey());
if (key == null || !defaultConfig.get(key).equals(prop.getValue())) {
if (!prop.getValue().equals(siteConfig.get(prop.getKey())) && !prop.getValue().equals(systemConfig.get(prop.getKey()))) {
osw.append(prop.getKey() + "=" + prop.getValue() + "\n");
}
}
}