@Test public void testRemoveWorkspaceLocalService() throws Exception { testAddWorkspaceLocalService(); File dataDirRoot = getTestData().getDataDirectoryRoot(); WorkspaceInfo ws = getCatalog().getDefaultWorkspace(); File f = new File(dataDirRoot, "workspaces" + "/" + ws.getName() + "/service.xml"); assertTrue(f.exists()); Logger logger = Logging.getLogger(GeoServerImpl.class); Level level = logger.getLevel(); try { logger.setLevel(Level.OFF); ServiceInfo s = geoServer.getServiceByName(ws, "foo", ServiceInfo.class); geoServer.remove(s); assertFalse(f.exists()); } finally { logger.setLevel(level); } }
@Before public void removeFooService() throws IOException { GeoServer geoServer = getGeoServer(); WorkspaceInfo ws = getCatalog().getDefaultWorkspace(); ServiceInfo s = geoServer.getServiceByName(ws, "foo", ServiceInfo.class); if (s != null) { geoServer.remove(s); } File serviceFile = getDataDirectory().findFile("service.xml"); if (serviceFile != null) { serviceFile.delete(); } }
/** * get local object searching by name if name is changed (remotely), search is performed using the old one * * @param geoServer * @param ev * @return */ public static ServiceInfo getLocalService(final GeoServer geoServer, final JMSServiceModifyEvent ev) { final ServiceInfo service = ev.getSource(); if (service == null) { throw new IllegalArgumentException("passed service is null"); } // localize service final ServiceInfo localObject; // check if name is changed final List<String> props = ev.getPropertyNames(); final int index = props.indexOf("name"); if (index != -1) { final List<Object> oldValues = ev.getOldValues(); // search the Service using the old name localObject = geoServer.getServiceByName(oldValues.get(index).toString(), ServiceInfo.class); } else { localObject = geoServer.getServiceByName(service.getName(), ServiceInfo.class); } return localObject; }
/** * get local object searching by name if name is changed (remotely), search is performed using the old one * * @param geoServer * @param ev * @return */ public static ServiceInfo getLocalService(final GeoServer geoServer, final JMSServiceModifyEvent ev) { final ServiceInfo service = ev.getSource(); if (service == null) { throw new IllegalArgumentException("passed service is null"); } // localize service final ServiceInfo localObject; // check if name is changed final List<String> props = ev.getPropertyNames(); final int index = props.indexOf("name"); if (index != -1) { final List<Object> oldValues = ev.getOldValues(); // search the Service using the old name localObject = geoServer.getServiceByName(oldValues.get(index).toString(), ServiceInfo.class); } else { localObject = geoServer.getServiceByName(service.getName(), ServiceInfo.class); } return localObject; }
private ServiceInfo findService(String serviceName, String workspaceName) { if (workspaceName == null) { // global service return ModificationProxy.unwrap( getGeoServer().getServiceByName(serviceName, ServiceInfo.class)); } // virtual service WorkspaceInfo workspaceInfo = getCatalog().getWorkspace(workspaceName); return ModificationProxy.unwrap( getGeoServer().getServiceByName(workspaceInfo, serviceName, ServiceInfo.class)); }