use of org.springframework.web.bind.annotation.ResponseBody in project hive by apache.
the class ExecutionController method testLog.
@RequestMapping(value = "/testLog", method = RequestMethod.POST)
@ResponseBody
public TestLogResponse testLog(@RequestBody TestLogRequest logsRequest, BindingResult result) {
String testHandle = logsRequest.getTestHandle();
Test testExecution = mTests.get(testHandle);
if (result.hasErrors() || Strings.nullToEmpty(logsRequest.getTestHandle()).trim().isEmpty() || testExecution == null || logsRequest.getLength() > MAX_READ_SIZE) {
return new TestLogResponse(Status.illegalArgument());
}
File outputFile = testExecution.getOutputFile();
if (outputFile == null || logsRequest.getOffset() > outputFile.length()) {
return new TestLogResponse(Status.illegalArgument());
}
RandomAccessFile fileHandle = null;
try {
fileHandle = new RandomAccessFile(outputFile, "r");
long offset = logsRequest.getOffset();
fileHandle.seek(offset);
int readLength = 0;
if (offset < fileHandle.length()) {
readLength = (int) Math.min(fileHandle.length() - offset, logsRequest.getLength());
}
byte[] buffer = new byte[readLength];
fileHandle.readFully(buffer);
offset += readLength;
return new TestLogResponse(Status.ok(), offset, new String(buffer, Charsets.UTF_8));
} catch (IOException e) {
LOG.info("Unexpected IO error reading " + testExecution.getOutputFile(), e);
return new TestLogResponse(Status.internalError(e.getMessage()));
} finally {
if (fileHandle != null) {
try {
fileHandle.close();
} catch (IOException e) {
LOG.warn("Error closing " + outputFile, e);
}
}
}
}
use of org.springframework.web.bind.annotation.ResponseBody in project hive by apache.
the class ExecutionController method testStatus.
@RequestMapping(value = "/testStatus", method = RequestMethod.POST)
@ResponseBody
public TestStatusResponse testStatus(@RequestBody TestStopRequest stopRequest, BindingResult result) {
String testHandle = stopRequest.getTestHandle();
Test test = mTests.get(testHandle);
if (result.hasErrors() || Strings.nullToEmpty(stopRequest.getTestHandle()).trim().isEmpty() || test == null) {
return new TestStatusResponse(Status.illegalArgument());
}
return new TestStatusResponse(Status.ok(), test.toTestStatus());
}
use of org.springframework.web.bind.annotation.ResponseBody in project hive by apache.
the class ExecutionController method testStop.
@RequestMapping(value = "/testStop", method = RequestMethod.POST)
@ResponseBody
public TestStopResponse testStop(@RequestBody TestStopRequest stopRequest, BindingResult result) {
String testHandle = stopRequest.getTestHandle();
Test test = mTests.get(testHandle);
if (result.hasErrors() || Strings.nullToEmpty(stopRequest.getTestHandle()).trim().isEmpty() || test == null) {
return new TestStopResponse(Status.illegalArgument());
}
test.setStopRequested(true);
return new TestStopResponse(Status.ok());
}
use of org.springframework.web.bind.annotation.ResponseBody in project head by mifos.
the class CenterRESTController method getCenterChargesByNumber.
@RequestMapping(value = "center/num-{globalCustNum}/charges", method = RequestMethod.GET)
@ResponseBody
public CustomerChargesDetailsDto getCenterChargesByNumber(@PathVariable String globalCustNum) {
CenterBO centerBO = customerDao.findCenterBySystemId(globalCustNum);
CustomerChargesDetailsDto centerCharges = centerServiceFacade.retrieveChargesDetails(centerBO.getCustomerId());
centerCharges.addActivities(centerServiceFacade.retrieveRecentActivities(centerBO.getCustomerId(), 3));
return centerCharges;
}
use of org.springframework.web.bind.annotation.ResponseBody in project head by mifos.
the class CollectionSheetRESTController method saveCollectionSheet.
@RequestMapping(value = "/collectionsheet/save", method = RequestMethod.POST)
@ResponseBody
public Map<String, Object> saveCollectionSheet(@RequestBody JSONSaveCollectionsheet request) throws Throwable {
Map<String, Object> map = new HashMap<String, Object>();
ObjectMapper om = createObjectMapper();
List<InvalidSaveCollectionSheetReason> reasons = new ArrayList<InvalidSaveCollectionSheetReason>();
CollectionSheetErrorsDto errors = null;
SaveCollectionSheetDto saveCollectionSheetDto = null;
try {
saveCollectionSheetDto = om.readValue(request.getJson(), SaveCollectionSheetDto.class);
} catch (JsonMappingException e) {
if (e.getCause() instanceof SaveCollectionSheetException) {
reasons.addAll(((SaveCollectionSheetException) e.getCause()).getInvalidSaveCollectionSheetReasons());
} else {
throw e.getCause();
}
}
if (saveCollectionSheetDto != null) {
try {
errors = collectionSheetServiceFacade.saveCollectionSheet(saveCollectionSheetDto);
map.put("errors", errors != null ? errors.getErrorText() : null);
} catch (MifosRuntimeException e) {
map.put("errors", e.getMessage());
}
}
map.put("invalidCollectionSheet", reasons);
return map;
}
Aggregations