package mil.nga.giat.geowave.core.cli.operations.config; import java.io.File; import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.Properties; import com.beust.jcommander.JCommander; import com.beust.jcommander.Parameter; import com.beust.jcommander.Parameters; import mil.nga.giat.geowave.core.cli.annotations.GeowaveOperation; import mil.nga.giat.geowave.core.cli.api.Command; import mil.nga.giat.geowave.core.cli.api.DefaultOperation; import mil.nga.giat.geowave.core.cli.api.OperationParams; @GeowaveOperation(name = "list", parentOperation = ConfigSection.class) @Parameters(commandDescription = "List property name within cache") public class ListCommand extends DefaultOperation implements Command { @Parameter(names = { "-f", "--filter" }) private String filter; @Override public void execute( OperationParams params ) { File f = getGeoWaveConfigFile(params); // Reload options with filter if specified. Properties p = getGeoWaveConfigProperties( params, filter); JCommander.getConsole().println( "PROPERTIES (" + f.getName() + ")"); List<String> keys = new ArrayList<String>(); keys.addAll(p.stringPropertyNames()); Collections.sort(keys); for (String key : keys) { String value = (String) p.get(key); JCommander.getConsole().println( key + ": " + value); } } }