use of ddf.catalog.operation.ResourceResponse in project ddf by codice.
the class ResourceDownload method copyToLocalSite.
@Override
public void copyToLocalSite(String sourceId, String metacardId) throws MBeanException {
LOGGER.debug("Downloading resource associated with metacard id [{}] from source [{}] to the local site.", metacardId, sourceId);
ResourceRequest resourceRequest = new ResourceRequestById(metacardId);
if (!resourceCacheMBean.isCacheEnabled()) {
String message = "Caching of resources is not enabled.";
LOGGER.info(message);
throw new MBeanException(new DownloadToLocalSiteException(Status.BAD_REQUEST, message), message);
}
try {
LOGGER.debug("Attempting to download the resource associated with metacard [{}] from source [{}] to the local site.", metacardId, sourceId);
ResourceResponse resourceResponse = catalogFramework.getResource(resourceRequest, sourceId);
if (resourceResponse == null) {
String message = String.format(ERROR_MESSAGE_TEMPLATE, metacardId, sourceId);
LOGGER.debug(message);
throw new MBeanException(new DownloadToLocalSiteException(Status.INTERNAL_SERVER_ERROR, message), message);
}
} catch (IOException | ResourceNotSupportedException e) {
String message = String.format(ERROR_MESSAGE_TEMPLATE, metacardId, sourceId);
LOGGER.debug(message, e);
throw new MBeanException(new DownloadToLocalSiteException(Status.INTERNAL_SERVER_ERROR, message), message);
} catch (ResourceNotFoundException e) {
String message = String.format(ERROR_MESSAGE_TEMPLATE + " The resource could not be found.", metacardId, sourceId);
LOGGER.debug(message, e);
throw new MBeanException(new DownloadToLocalSiteException(Status.NOT_FOUND, message), message);
}
}
use of ddf.catalog.operation.ResourceResponse in project ddf by codice.
the class FilterPluginTest method testPluginFilterResourceNoStrategiesGood.
@Test
public void testPluginFilterResourceNoStrategiesGood() throws StopProcessingException {
plugin = new FilterPlugin();
ResourceResponse response = plugin.processPostResource(resourceResponse, getExactRolesMetacard());
}
use of ddf.catalog.operation.ResourceResponse in project ddf by codice.
the class TestResourceUsagePlugin method testPostResourceRemoteSourceNoRemoteDestinationKey.
@Test
public void testPostResourceRemoteSourceNoRemoteDestinationKey() throws Exception {
plugin.setMonitorLocalSources(false);
ResourceResponse originalResponse = getMockRemoteResourceResponseNoRemoteDestinationKey(RESOURCE_SIZE, TEST_USER);
ResourceResponse response = plugin.process(originalResponse);
assertThat(response, is(notNullValue()));
assertThat(response, is(originalResponse));
verify(attributeStore, never()).getDataLimitByUser(anyString());
verify(attributeStore, never()).getCurrentDataUsageByUser(anyString());
}
use of ddf.catalog.operation.ResourceResponse in project ddf by codice.
the class TestResourceUsagePlugin method testPostResourceNoSubject.
@Test
public void testPostResourceNoSubject() throws StopProcessingException, PluginExecutionException, PersistenceException {
ResourceResponse originalResponse = getMockResourceResponseNoSubject(RESOURCE_SIZE);
ResourceResponse response = plugin.process(originalResponse);
assertThat(response, is(notNullValue()));
assertThat(response, is(originalResponse));
verify(attributeStore, never()).updateUserDataUsage(anyString(), anyLong());
}
use of ddf.catalog.operation.ResourceResponse in project ddf by codice.
the class TestResourceUsagePlugin method testPostResourceLocalSourceSizeNotFound.
@Test
public void testPostResourceLocalSourceSizeNotFound() throws PersistenceException, PluginExecutionException, StopProcessingException {
ResourceResponse resourceResponse = getMockLocalResourceResponse(null, TEST_USER);
ResourceResponse request = plugin.process(resourceResponse);
assertThat(request, is(notNullValue()));
assertThat(request, is(resourceResponse));
verify(attributeStore, never()).updateUserDataUsage(anyString(), anyLong());
}
Aggregations