package mil.nga.giat.geowave.format.landsat8;
import java.util.ArrayList;
import java.util.List;
import com.beust.jcommander.Parameter;
import com.beust.jcommander.Parameters;
import com.beust.jcommander.ParametersDelegate;
import it.geosolutions.jaiext.JAIExt;
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 = "ingest", parentOperation = Landsat8Section.class)
@Parameters(commandDescription = "Ingest routine for locally downloading Landsat 8 imagery and ingesting it into GeoWave's raster store and in parallel ingesting the scene metadata into GeoWave's vector store. These two stores can actually be the same or they can be different.")
public class Landsat8IngestCommand extends
DefaultOperation implements
Command
{
@Parameter(description = "<storename> <comma delimited index/group list>")
protected final List<String> parameters = new ArrayList<String>();
@ParametersDelegate
protected Landsat8BasicCommandLineOptions analyzeOptions = new Landsat8BasicCommandLineOptions();
@ParametersDelegate
protected Landsat8DownloadCommandLineOptions downloadOptions = new Landsat8DownloadCommandLineOptions();
@ParametersDelegate
protected Landsat8RasterIngestCommandLineOptions ingestOptions = new Landsat8RasterIngestCommandLineOptions();
@ParametersDelegate
protected VectorOverrideCommandLineOptions vectorOverrideOptions = new VectorOverrideCommandLineOptions();
public Landsat8IngestCommand() {}
@Override
public void execute(
final OperationParams params )
throws Exception {
JAIExt.initJAIEXT();
final IngestRunner runner = new IngestRunner(
analyzeOptions,
downloadOptions,
ingestOptions,
vectorOverrideOptions,
parameters);
runner.runInternal(params);
}
}