public Resolution delete() throws DocumentException, IOException { DataProvider dataProvider = context.getRepoxManager().getDataProviderManager().getDataProvider(dataProviderId); DataSource dataSource = dataProvider.getDataSource(dataSourceId); context.getRepoxManager().getDataProviderManager().deleteDataSource(dataSource.getId()); dataProvider.getDataSources().remove(dataSource); context .getRepoxManager() .getDataProviderManager() .updateDataProvider(dataProvider, dataProvider.getId()); context.getMessages().add(new LocalizableMessage("dataSource.delete.success", dataSourceId)); return new RedirectResolution( "/dataProvider/ViewDataProvider.action?dataProviderId=" + URLEncoder.encode(dataProviderId, "UTF-8")); }
@ValidationMethod(on = {"delete"}) public void validateDataSource(ValidationErrors errors) throws DocumentException, IOException { DataProvider dataProvider = context.getRepoxManager().getDataProviderManager().getDataProvider(dataProviderId); if (dataProvider == null) { errors.add( "dataProviderId", new LocalizableError("error.dataSource.delete.dataProviderId", dataProviderId)); } DataSource dataSource = dataProvider.getDataSource(dataSourceId); if (dataSource == null) { errors.add( "dataProviderId", new LocalizableError("error.dataSource.delete.dataSourceId", dataSourceId)); } }