public static void serverAdded(IServer server) {
   ICarbonOperationManager serverOperationManager = getServerOperationManager(server);
   if (serverOperationManager != null) {
     getServers().add(server);
     isServerAdded = true;
     IServerManager wsasServerManager = ServerController.getInstance().getServerManager();
     HashMap<String, Object> operationParameters = new HashMap<String, Object>();
     operationParameters.put(
         ICarbonOperationManager.PARAMETER_TYPE,
         ICarbonOperationManager.OPERATION_GET_SERVER_PORTS);
     Object r;
     CarbonServerInformation serverInformation = new CarbonServerInformation();
     serverInformation.setServerId(server.getId());
     ServerPort[] wsasPorts = new ServerPort[] {};
     try {
       r = wsasServerManager.executeOperationOnServer(server, operationParameters);
       if (r instanceof ServerPort[]) wsasPorts = (ServerPort[]) r;
       CarbonServerUtils.setServicePath(server);
     } catch (NoSuchCarbonOperationDefinedException e) {
       // ports cannot be retrieved
     } catch (Exception e) {
       log.error(e);
     }
     serverInformation.setServerPorts(wsasPorts);
     // The localrepo path is for now is the bin distribution path. this
     // needs to be fixed in order to be set inside the workspace path
     // String workspaceRootPath =
     // ResourcesPlugin.getWorkspace().getRoot().getLocation().toOSString();
     // String serverPath=FileUtils.addNodesToPath(workspaceRootPath, new
     // String[]{".metadata",".carbon",server.getId()});
     IPath serverHome = getServerHome(server);
     if (serverHome != null) {
       String serverPath = serverHome.toOSString();
       (new File(serverPath)).mkdirs();
       serverInformation.setServerLocalWorkspacePath(serverPath);
     }
     getAppServerInformation().put(server, serverInformation);
     try {
       initializeServerConfigurations(server);
     } catch (Exception e) {
       log.error(e);
     }
   }
 }