V1_0.java [src/java/m/gis/buffer] Revision:   Date:
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package m.gis.buffer;

import static csip.ModelDataService.EXEC_OK;
import java.util.ListIterator;
import javax.ws.rs.Path;
import m.gis.GISModelDataService;
import m.utils.Layer;
import oms3.annotations.*;
import org.codehaus.jettison.json.JSONObject;

/**
 * GIS Buffer.
 *
 * @author ktraff
 */
@Name("buffer")
@Description("CSIP Buffer Service")
@Path("m/buffer/1.0")
public class V1_0 extends GISModelDataService {
    
    JSONObject distance;
    
    @Override
    protected void preProcess() throws Exception {
        super.preProcess();
        distance = getJSONParam("distance");
    }
    
    @Override
    protected String process() throws Exception {
        if (layers.size() > 0) {
            ListIterator<Layer> iterator = layers.listIterator();
            while (iterator.hasNext()) {
                Layer lyr = db.buffer(iterator.next(), distance.getInt("value"));
                result.put(db.toJSON(lyr, outputSRID));
            }
        }
        return EXEC_OK;
    }
    
    @Override
    protected void postProcess() throws Exception {
        super.postProcess();
    }
    
}