use of edu.uci.ics.texera.api.exception.TexeraException in project textdb by TextDB.
the class PlanStoreResource method updateQueryPlan.
@PUT
@Path("/{plan_name}")
public TexeraWebResponse updateQueryPlan(@PathParam("plan_name") String planName, String queryPlanBeanJson) {
try {
QueryPlanBean queryPlanBean = new ObjectMapper().readValue(queryPlanBeanJson, QueryPlanBean.class);
// Updating the plan in the plan store
planStore.updatePlan(planName, queryPlanBean.getDescription(), mapper.writeValueAsString(queryPlanBean.getQueryPlan()));
} catch (IOException | TexeraException e) {
throw new TexeraWebException(e.getMessage());
}
return new TexeraWebResponse(0, "Success");
}
use of edu.uci.ics.texera.api.exception.TexeraException in project textdb by TextDB.
the class ScanBasedSourceOperator method open.
@Override
public void open() throws TexeraException {
if (isOpen) {
return;
}
try {
dataReader.open();
isOpen = true;
} catch (Exception e) {
throw new DataflowException(e.getMessage(), e);
}
}
use of edu.uci.ics.texera.api.exception.TexeraException in project textdb by TextDB.
the class TwitterFeedOperator method open.
@Override
public void open() throws TexeraException {
if (cursor != CLOSED) {
return;
}
try {
twitterConnector.getClient().connect();
cursor = OPENED;
} catch (Exception e) {
throw new DataflowException(e.getMessage(), e);
}
}
use of edu.uci.ics.texera.api.exception.TexeraException in project textdb by TextDB.
the class TwitterUtils method getPlaceLocation.
/**
* To track tweets inside a geoBox defined by a List</Location>.
* The string defines the coordinates in the order of "latitude_SW, longitude_SW, latitude_NE, longitude_NE".
*
* @param inputLocation
* @return
* @throws TexeraException
*/
public static List<Location> getPlaceLocation(String inputLocation) throws TexeraException {
List<Location> locationList = new ArrayList<>();
if (inputLocation == null || inputLocation.isEmpty()) {
return locationList;
}
List<String> boudingCoordinate = Arrays.asList(inputLocation.trim().split(","));
if (boudingCoordinate.size() != 4 || boudingCoordinate.stream().anyMatch(s -> s.trim().isEmpty())) {
throw new DataflowException("Please provide valid location coordinates");
}
List<Double> boundingBox = new ArrayList<>();
boudingCoordinate.stream().forEach(s -> boundingBox.add(Double.parseDouble(s.trim())));
locationList.add(new Location(new Coordinate(boundingBox.get(1), boundingBox.get(0)), new Coordinate(boundingBox.get(3), boundingBox.get(2))));
return locationList;
}
use of edu.uci.ics.texera.api.exception.TexeraException in project textdb by TextDB.
the class Join method close.
@Override
public void close() throws TexeraException {
if (cursor == CLOSED) {
return;
}
try {
innerOperator.close();
outerOperator.close();
} catch (Exception e) {
throw new DataflowException(e.getMessage(), e);
}
// Set the inner tuple list back to null on close.
innerTupleList = null;
innerTupleListCursor = 0;
cursor = CLOSED;
}
Aggregations