/* Copyright (c) 2014 OpenPlans - www.openplans.org. All rights reserved. * This code is licensed under the GPL 2.0 license, available at the root * application directory. */ package org.geoserver.wps; import java.io.IOException; import java.io.InputStream; import org.geoserver.wps.process.AbstractRawData; import org.geoserver.wps.process.RawData; import org.geotools.process.ProcessFactory; import org.geotools.process.factory.AnnotatedBeanProcessFactory; import org.geotools.process.factory.DescribeParameter; import org.geotools.process.factory.DescribeProcess; import org.geotools.process.factory.DescribeResult; import org.geotools.util.SimpleInternationalString; @DescribeProcess(title = "Raw", description = "Process used to test raw inputs and outputs") public class RawProcess { @DescribeResult(name = "result", description = "Output raster", meta = { "mimeTypes=application/json,text/xml", "chosenMimeType=outputMimeType" }) public RawData execute( @DescribeParameter(name = "data", description = "Input features", meta = { "mimeTypes=application/json,text/xml" }) final RawData input, @DescribeParameter(name = "outputMimeType", min = 0) final String outputMimeType) { return new RawData() { @Override public String getMimeType() { return outputMimeType; } @Override public InputStream getInputStream() throws IOException { return input.getInputStream(); } @Override public String getFileExtension() { return AbstractRawData.DEFAULT_EXTENSION; } }; } static final ProcessFactory getFactory() { return new AnnotatedBeanProcessFactory(new SimpleInternationalString("Raw data process"), "gs", RawProcess.class); } }