Select Git revision
UWSMergeWork.java
-
Robert Butora authoredRobert Butora authored
UWSMergeWork.java 6.23 KiB
import java.io.PrintWriter;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.io.BufferedOutputStream;
import javax.servlet.ServletOutputStream;
import java.io.IOException;
import java.io.FileNotFoundException;
import java.io.File;
import java.io.FileInputStream;
import uws.UWSException;
import uws.job.ErrorType;
import uws.job.JobThread;
import uws.job.Result;
import uws.job.UWSJob;
import uws.service.UWSUrl;
/* for datasets::doAction */
import java.security.Principal;
import java.util.Map;
import java.util.HashMap;
import java.util.Set;
import java.util.List;
import java.util.ArrayList;
import vo.parameter.*;
public class UWSMergeWork extends JobThread
{
private Settings settings = UWSMerge.settings;
final String RESPONSE_ENCODING = "utf-8";
final String DEFAULT_RESPONSEFORMAT = settings.defaults.responseFormat;
final String DEFAULT_SKY_SYSTEM = settings.defaults.skySystem;
final String DEFAULT_SPEC_SYSTEM = settings.defaults.specSystem;
final String DEFAULT_TIME_SYSTEM = "MJD_UTC";
protected Vlkb vlkb = ( settings.amqpConn.isHostnameEmpty() ? new VlkbCli(settings): new VlkbAmqp(settings) );
/* NOTE needed if cutouts dir served by vlkb-datasets */
private String webappRootRequestUrl = null;
public UWSMergeWork(UWSJob j) throws UWSException
{
super(j);
UWSUrl url = j.getUrl();
webappRootRequestUrl = url.getUrlHeader();
}
/* FIXME in UWS howto result.setSize(size); */
@Override
protected void jobWork() throws UWSException, InterruptedException
{
try
{
long startTime_msec = System.currentTimeMillis();
boolean showDuration = true;
Map<String, String[]> params = collectSodaParams(job);
String id = SingleStringParam.parseSingleStringParam(params, "ID");
Pos pos = Pos.parsePos(params, DEFAULT_SKY_SYSTEM);
Band band = Band.parseBand(params, DEFAULT_SPEC_SYSTEM);
Time time = Time.parseTime(params, DEFAULT_TIME_SYSTEM);
Pol pol = null;// FIXME Pol.parsePol(params);
String pixels = SingleStringParam.parseSingleStringParam(params, "PIXELS");
/* if(parser.sodaReq_hasSodaId())