/** * This method returns a default configuration for a new remote container. * * @param preventUsageOfAlreadyUsedComputers the prevent usage of already used computers * @return the default RemoteContainerConfig */ private RemoteContainerConfig getRemoteContainerConfigAuto() { // --- Variable for the new container name ------------------ String newContainerPrefix = "remote"; String newContainerName; // --- Get the local IP-Address ----------------------------- String myIP = myContainer.getNodeDescriptor().getContainer().getAddress(); // --- Get the local port of JADE --------------------------- String myPort = myContainer.getNodeDescriptor().getContainer().getPort(); // --- Get the List of services started here ---------------- String myServices = ""; List<?> services = myContainer.getServiceManager().getLocalServices(); Iterator<?> it = services.iterator(); while (it.hasNext()) { ServiceDescriptor serviceDesc = (ServiceDescriptor) it.next(); String service = serviceDesc.getService().getClass().getName() + ";"; myServices += service; } newContainerName = newContainerPrefix + getSuffixNo(newContainerPrefix); logger.info("-- Infos to start the remote container ------------"); logger.info("=> Services2Start: " + myServices); logger.info("=> NewContainerName: " + newContainerName); logger.info("=> ThisAddresses: " + myIP + " - Port: " + myPort); // --- Define the 'RemoteContainerConfig' - Object ---------- RemoteContainerConfig remConf = new RemoteContainerConfig(); remConf.setJadeServices(myServices); remConf.setJadeIsRemoteContainer(true); remConf.setJadeHost(myIP); remConf.setJadePort(myPort); remConf.setJadeContainerName(newContainerName); remConf.setJadeShowGUI(true); // --- Apply defaults, if set ------------------------------- if (this.defaults4RemoteContainerConfig != null) { remConf.setJadeShowGUI(this.defaults4RemoteContainerConfig.getJadeShowGUI()); remConf.setJvmMemAllocInitial(this.defaults4RemoteContainerConfig.getJvmMemAllocInitial()); remConf.setJvmMemAllocMaximum(this.defaults4RemoteContainerConfig.getJvmMemAllocMaximum()); } return remConf; }