public boolean execute(PlugInContext context) throws Exception { reportNothingToUndoYet(context); // limpiamos lo que haya podido quedar de ejecuciones anteriores emptyBlackboard(); WizardDialog d = new WizardDialog( GeopistaUtil.getFrame(context.getWorkbenchGuiComponent()), Constants.APLICACION.getI18nString("ExtractDialogGestionar"), context.getErrorHandler()); d.init( new WizardPanel[] { new MobileModifyPanel01("MobileModifyPanel01", null, context), }); d.setSize(520, 650); d.setLocation(10, 20); d.setVisible(true); if (!d.wasFinishPressed()) { LayerManager layerManager = context.getLayerManager(); if (layerManager != null) { Layer graticuleLayer = layerManager.getLayer(GraticuleCreatorEngine.getGraticuleName()); // si existe una cuadrícula la borramos if (graticuleLayer != null) { layerManager.remove(graticuleLayer); } } return false; } return true; }
/* * Se ejecuta una vez finalizado el interfaz despues de pasar por todas las pantallas. * (non-Javadoc) * @see com.vividsolutions.jump.workbench.plugin.ThreadedPlugIn#run(com.vividsolutions.jump.task.TaskMonitor, com.vividsolutions.jump.workbench.plugin.PlugInContext) */ public void run(TaskMonitor monitor, PlugInContext context) throws Exception { try { monitor.report( I18N.get( PluginMobileExtracti18n, MobilePluginI18NResource.MobileModifyPanel01_deletingProy)); ExtractionProject eProject = (ExtractionProject) blackboard.get(MobileModifyPanel01.SELECTED_EXTRACT_PROJECT); // guardamos la informacion en base de datos final String sUrlPrefix = Constants.APLICACION.getString(UserPreferenceConstants.LOCALGIS_SERVER_URL); AdministradorCartografiaClient administradorCartografiaClient = new AdministradorCartografiaClient( sUrlPrefix + WebAppConstants.GEOPISTA_WEBAPP_NAME + ServletConstants.ADMINISTRADOR_CARTOGRAFIA_SERVLET_NAME); administradorCartografiaClient.deleteExtractProject(eProject); // Borramos los datos subidos al servidor. httpDeleteProject(Constants.URL_DELETE_SERVER, eProject); String dirBase = UserPreferenceStore.getUserPreference( UserPreferenceConstants.PREFERENCES_DATA_PATH_KEY, UserPreferenceConstants.DEFAULT_DATA_PATH, true); dirBase += File.separator + "maps"; String projectName = eProject.getNombreProyecto(); String idProyecto = eProject.getIdProyecto(); String dirMapName = projectName + "." + idProyecto; File dirBaseMake = new File(dirBase, dirMapName); if (dirBaseMake.exists()) { MobileUtils.deleteDir(dirBaseMake); logger.info("Borrando fichero local:" + dirBaseMake); } } finally { // borramos la cuadrícula LayerManager layerManager = context.getLayerManager(); Layer graticuleLayer = layerManager.getLayer(GraticuleCreatorEngine.getGraticuleName()); if (graticuleLayer != null) { layerManager.remove(graticuleLayer); } } }