New node can be created directly from agent tunnel manager
authorVictor Kirhenshtein <victor@netxms.org>
Sat, 26 Aug 2017 15:55:15 +0000 (18:55 +0300)
committerVictor Kirhenshtein <victor@netxms.org>
Sat, 26 Aug 2017 15:55:15 +0000 (18:55 +0300)
12 files changed:
ChangeLog
src/java/client/netxms-client/src/main/java/org/netxms/client/AgentTunnel.java
src/java/netxms-eclipse/AgentManager/META-INF/MANIFEST.MF
src/java/netxms-eclipse/AgentManager/src/org/netxms/ui/eclipse/agentmanager/views/TunnelManager.java
src/java/netxms-eclipse/ObjectBrowser/src/org/netxms/ui/eclipse/objectbrowser/widgets/ZoneSelector.java
src/java/netxms-eclipse/ObjectManager/META-INF/MANIFEST.MF
src/java/netxms-eclipse/ObjectManager/src/org/netxms/ui/eclipse/objectmanager/dialogs/CreateNodeDialog.java
webui/webapp/AgentManager/META-INF/MANIFEST.MF
webui/webapp/AgentManager/src/org/netxms/ui/eclipse/agentmanager/views/TunnelManager.java
webui/webapp/ObjectBrowser/src/org/netxms/ui/eclipse/objectbrowser/widgets/ZoneSelector.java
webui/webapp/ObjectManager/META-INF/MANIFEST.MF
webui/webapp/ObjectManager/src/org/netxms/ui/eclipse/objectmanager/dialogs/CreateNodeDialog.java

index 861b539..224e88b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -26,6 +26,7 @@
        - Improved status map
        - Fixed bug in sorting alarms by zone name
        - Zone ID can be generated automatically on zone creation
+       - New node can be created directly from agent tunnel manager
 - Fixed issues: NX-930, NX-1143, NX-1170, NX-1263, NX-1272, NX-1273, NX-1278, NX-1281, NX-1284, NX-1285, NX-1286
 
 
index 00b9bb5..0ed2835 100644 (file)
@@ -35,6 +35,7 @@ public class AgentTunnel
    private String systemInformation;
    private String platformName;
    private String agentVersion;
+   private long zoneId;
    private int activeChannelCount;
    
    /**
@@ -54,6 +55,7 @@ public class AgentTunnel
       platformName = msg.getFieldAsString(baseId + 6);
       agentVersion = msg.getFieldAsString(baseId + 7);
       activeChannelCount = msg.getFieldAsInt32(baseId + 8);
+      zoneId = msg.getFieldAsInt64(baseId + 9);
    }
    
    /**
@@ -130,6 +132,14 @@ public class AgentTunnel
       return agentVersion;
    }
 
+   /**
+    * @return the zoneId
+    */
+   public long getZoneId()
+   {
+      return zoneId;
+   }
+
    /**
     * @return the activeChannelCount
     */
index 0ad97dd..41db3df 100644 (file)
@@ -13,7 +13,8 @@ Require-Bundle: org.eclipse.ui;bundle-version="3.8.2",
  org.netxms.ui.eclipse.objectbrowser;bundle-version="2.1.0",
  org.eclipse.ui.forms;bundle-version="3.5.200",
  org.netxms.ui.eclipse.nxsl;bundle-version="2.0.7",
- org.netxms.ui.eclipse.clientlibrary;bundle-version="2.1.3"
+ org.netxms.ui.eclipse.clientlibrary;bundle-version="2.1.3",
+ org.netxms.ui.eclipse.objectmanager;bundle-version="2.1.3"
 Bundle-RequiredExecutionEnvironment: JavaSE-1.7
 Bundle-ActivationPolicy: lazy
 Export-Package: org.netxms.ui.eclipse.agentmanager.dialogs,
index d7fb3ab..04ec6cc 100644 (file)
@@ -37,13 +37,16 @@ import org.eclipse.swt.widgets.Menu;
 import org.eclipse.ui.IActionBars;
 import org.eclipse.ui.part.ViewPart;
 import org.netxms.client.AgentTunnel;
+import org.netxms.client.NXCObjectCreationData;
 import org.netxms.client.NXCSession;
+import org.netxms.client.objects.AbstractObject;
 import org.netxms.ui.eclipse.actions.RefreshAction;
 import org.netxms.ui.eclipse.agentmanager.Activator;
 import org.netxms.ui.eclipse.agentmanager.views.helpers.TunnelListComparator;
 import org.netxms.ui.eclipse.agentmanager.views.helpers.TunnelListLabelProvider;
 import org.netxms.ui.eclipse.jobs.ConsoleJob;
 import org.netxms.ui.eclipse.objectbrowser.dialogs.ObjectSelectionDialog;
+import org.netxms.ui.eclipse.objectmanager.dialogs.CreateNodeDialog;
 import org.netxms.ui.eclipse.shared.ConsoleSharedData;
 import org.netxms.ui.eclipse.tools.MessageDialogHelper;
 import org.netxms.ui.eclipse.tools.WidgetHelper;
@@ -68,6 +71,7 @@ public class TunnelManager extends ViewPart
    
    private SortableTableViewer viewer;
    private Action actionRefresh;
+   private Action actionCreateNode;
    private Action actionBind;
    private Action actionUnbind;
    
@@ -123,6 +127,14 @@ public class TunnelManager extends ViewPart
          }
       };
       
+      actionCreateNode = new Action("&Create node and bind...") {
+         @Override
+         public void run()
+         {
+            createNode();
+         }
+      };
+      
       actionBind = new Action("&Bind to...") {
          @Override
          public void run()
@@ -201,6 +213,7 @@ public class TunnelManager extends ViewPart
       if ((selection.size() == 1) && !((AgentTunnel)selection.getFirstElement()).isBound())
       {
          manager.add(actionBind);
+         manager.add(actionCreateNode);
       }
       else
       {
@@ -243,6 +256,65 @@ public class TunnelManager extends ViewPart
       }.start();
    }
    
+   /**
+    * Create new node and bind tunnel
+    */
+   private void createNode()
+   {
+      IStructuredSelection selection = (IStructuredSelection)viewer.getSelection();
+      if (selection.size() != 1)
+         return;
+      
+      final AgentTunnel tunnel = (AgentTunnel)selection.getFirstElement();
+      if (tunnel.isBound())
+         return;
+      
+      CreateNodeDialog dlg = new CreateNodeDialog(getSite().getShell(), null);
+      dlg.setEnableShowAgainFlag(false);
+      dlg.setObjectName(tunnel.getSystemName());
+      dlg.setZoneId(tunnel.getZoneId());
+      if (dlg.open() != Window.OK)
+         return;
+      
+      final NXCObjectCreationData cd = new NXCObjectCreationData(AbstractObject.OBJECT_NODE, dlg.getObjectName(), 2);
+      cd.setCreationFlags(dlg.getCreationFlags());
+      cd.setPrimaryName(dlg.getHostName());
+      cd.setAgentPort(dlg.getAgentPort());
+      cd.setSnmpPort(dlg.getSnmpPort());
+      cd.setAgentProxyId(dlg.getAgentProxy());
+      cd.setSnmpProxyId(dlg.getSnmpProxy());
+      cd.setIcmpProxyId(dlg.getIcmpProxy());
+      cd.setSshProxyId(dlg.getSshProxy());
+      cd.setZoneId(dlg.getZoneId());
+      cd.setSshLogin(dlg.getSshLogin());
+      cd.setSshPassword(dlg.getSshPassword());
+      
+      final NXCSession session = ConsoleSharedData.getSession();
+      new ConsoleJob("Create new node and bind tunnel", this, Activator.PLUGIN_ID, null) {
+         @Override
+         protected void runInternal(IProgressMonitor monitor) throws Exception
+         {
+            long nodeId = session.createObject(cd);
+            session.bindAgentTunnel(tunnel.getId(), nodeId);
+
+            final List<AgentTunnel> tunnels = session.getAgentTunnels();
+            runInUIThread(new Runnable() {
+               @Override
+               public void run()
+               {
+                  viewer.setInput(tunnels);
+               }
+            });
+         }
+         
+         @Override
+         protected String getErrorMessage()
+         {
+            return "Cannot create node and bind tunnel";
+         }
+      }.start();
+   }
+   
    /**
     * Bind tunnel to node
     */
@@ -281,7 +353,7 @@ public class TunnelManager extends ViewPart
          @Override
          protected String getErrorMessage()
          {
-            return "Cannot unbind tunnel";
+            return "Cannot bind tunnel";
          }
       }.start();
    }
index 6b6e23e..e45ed2d 100644 (file)
@@ -65,7 +65,7 @@ public class ZoneSelector extends AbstractSelector
    @Override
    protected void clearButtonHandler()
    {
-      zoneId = 0;
+      zoneId = -1;
       setText(emptySelectionName);
       fireModifyListeners();
    }
@@ -96,7 +96,7 @@ public class ZoneSelector extends AbstractSelector
    public void setZoneId(long zoneId)
    {
       this.zoneId = zoneId;
-      if (zoneId == 0)
+      if (zoneId == -1)
       {
          setText(emptySelectionName); //$NON-NLS-1$
       }
index f8396db..51a261a 100644 (file)
@@ -19,4 +19,5 @@ Require-Bundle: org.eclipse.ui;bundle-version="3.8.2",
 Bundle-RequiredExecutionEnvironment: JavaSE-1.7
 Bundle-ActivationPolicy: lazy
 Export-Package: org.netxms.ui.eclipse.objectmanager.actions,
+ org.netxms.ui.eclipse.objectmanager.dialogs,
  org.netxms.ui.eclipse.objectmanager.propertypages
index 8437785..b755913 100644 (file)
@@ -65,8 +65,8 @@ public class CreateNodeDialog extends Dialog
    private ObjectSelector sshProxySelector;
        private ZoneSelector zoneSelector;
        
-       private String objectName;
-       private String hostName;
+       private String objectName = "";
+       private String hostName = "";
        private int creationFlags = 0;
        private long agentProxy = 0;
        private long snmpProxy = 0;
@@ -78,6 +78,7 @@ public class CreateNodeDialog extends Dialog
        private String sshLogin = "";
        private String sshPassword; 
        private boolean showAgain = false;
+       private boolean enableShowAgainFlag = true;
        
        /**
         * @param parentShell
@@ -135,9 +136,10 @@ public class CreateNodeDialog extends Dialog
                GridData gd = new GridData();
                gd.horizontalAlignment = SWT.FILL;
                gd.grabExcessHorizontalSpace = true;
-               gd.widthHint = 300;
+               gd.widthHint = 600;
                gd.horizontalSpan = 2;
                objectNameField.setLayoutData(gd);
+               objectNameField.setText(objectName);
                
                final Composite ipAddrGroup = new Composite(dialogArea, SWT.NONE);
                layout = new GridLayout();
@@ -158,6 +160,7 @@ public class CreateNodeDialog extends Dialog
                gd.horizontalAlignment = SWT.FILL;
                gd.grabExcessHorizontalSpace = true;
                hostNameField.setLayoutData(gd);
+               hostNameField.setText(hostName);
                
                agentPortField = WidgetHelper.createLabeledSpinner(dialogArea, SWT.BORDER, Messages.get().CreateNodeDialog_AgentPort, 1, 65535, WidgetHelper.DEFAULT_LAYOUT_DATA);
                agentPortField.setSelection(agentPort);
@@ -242,18 +245,20 @@ public class CreateNodeDialog extends Dialog
                        zoneSelector = new ZoneSelector(dialogArea, SWT.NONE, false);
                        zoneSelector.setLabel(Messages.get().CreateNodeDialog_Zone);
                        Zone zone = ConsoleSharedData.getSession().findZone(zoneId);
-                       zoneSelector.setZoneId((zone != null) ? zone.getZoneId() : 0);
+                       zoneSelector.setZoneId((zone != null) ? zone.getZoneId() : -1);
                        gd = new GridData();
                        gd.horizontalAlignment = SWT.FILL;
                        gd.grabExcessHorizontalSpace = true;
                        gd.horizontalSpan = 2;
                        zoneSelector.setLayoutData(gd);
                }
-               
-               checkCreateAnother = new Button(dialogArea, SWT.CHECK);
-               checkCreateAnother.setText(Messages.get().CreateNodeDialog_ShowAgain);
-               checkCreateAnother.setSelection(showAgain);
-               
+
+               if (enableShowAgainFlag)
+               {
+               checkCreateAnother = new Button(dialogArea, SWT.CHECK);
+               checkCreateAnother.setText(Messages.get().CreateNodeDialog_ShowAgain);
+               checkCreateAnother.setSelection(showAgain);
+               }               
                return dialogArea;
        }
 
@@ -301,7 +306,7 @@ public class CreateNodeDialog extends Dialog
                   zoneId = zoneSelector.getZoneId();
                }
                
-               showAgain = checkCreateAnother.getSelection();
+               showAgain = enableShowAgainFlag ? checkCreateAnother.getSelection() : false;
                super.okPressed();
        }
 
@@ -313,7 +318,15 @@ public class CreateNodeDialog extends Dialog
                return objectName;
        }
 
-       /**
+   /**
+    * @param objectName the objectName to set
+    */
+   public void setObjectName(String objectName)
+   {
+      this.objectName = objectName;
+   }
+
+   /**
         * @return the hostName
         */
        public String getHostName()
@@ -370,6 +383,14 @@ public class CreateNodeDialog extends Dialog
        }
 
        /**
+    * @param zoneId the zoneId to set
+    */
+   public void setZoneId(long zoneId)
+   {
+      this.zoneId = zoneId;
+   }
+
+   /**
         * @return the agentPort
         */
        public int getAgentPort()
@@ -408,4 +429,20 @@ public class CreateNodeDialog extends Dialog
    {
       return showAgain;
    }
+
+   /**
+    * @return the enableShowAgainFlag
+    */
+   public boolean isEnableShowAgainFlag()
+   {
+      return enableShowAgainFlag;
+   }
+
+   /**
+    * @param enableShowAgainFlag the enableShowAgainFlag to set
+    */
+   public void setEnableShowAgainFlag(boolean enableShowAgainFlag)
+   {
+      this.enableShowAgainFlag = enableShowAgainFlag;
+   }
 }
index 4e8cc50..35ed53b 100644 (file)
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: Agent Management Plug-In for NXMC
 Bundle-SymbolicName: org.netxms.ui.eclipse.agentmanager;singleton:=true
-Bundle-Version: 2.1.0
+Bundle-Version: 2.1.1
 Bundle-Activator: org.netxms.ui.eclipse.agentmanager.Activator
 Bundle-Vendor: netxms.org
 Require-Bundle: org.eclipse.rap.ui;bundle-version="2.3.1",
@@ -12,7 +12,8 @@ Require-Bundle: org.eclipse.rap.ui;bundle-version="2.3.1",
  org.netxms.webui.core;bundle-version="2.1.0",
  org.netxms.ui.eclipse.objectbrowser;bundle-version="2.1.0",
  org.netxms.ui.eclipse.nxsl;bundle-version="2.0.7",
- org.eclipse.rap.filedialog;bundle-version="3.1.0"
+ org.eclipse.rap.filedialog;bundle-version="3.1.0",
+ org.netxms.ui.eclipse.objectmanager;bundle-version="2.1.3"
 Bundle-RequiredExecutionEnvironment: JavaSE-1.6
 Bundle-ActivationPolicy: lazy
 Export-Package: org.netxms.ui.eclipse.agentmanager.dialogs,
index d7fb3ab..04ec6cc 100644 (file)
@@ -37,13 +37,16 @@ import org.eclipse.swt.widgets.Menu;
 import org.eclipse.ui.IActionBars;
 import org.eclipse.ui.part.ViewPart;
 import org.netxms.client.AgentTunnel;
+import org.netxms.client.NXCObjectCreationData;
 import org.netxms.client.NXCSession;
+import org.netxms.client.objects.AbstractObject;
 import org.netxms.ui.eclipse.actions.RefreshAction;
 import org.netxms.ui.eclipse.agentmanager.Activator;
 import org.netxms.ui.eclipse.agentmanager.views.helpers.TunnelListComparator;
 import org.netxms.ui.eclipse.agentmanager.views.helpers.TunnelListLabelProvider;
 import org.netxms.ui.eclipse.jobs.ConsoleJob;
 import org.netxms.ui.eclipse.objectbrowser.dialogs.ObjectSelectionDialog;
+import org.netxms.ui.eclipse.objectmanager.dialogs.CreateNodeDialog;
 import org.netxms.ui.eclipse.shared.ConsoleSharedData;
 import org.netxms.ui.eclipse.tools.MessageDialogHelper;
 import org.netxms.ui.eclipse.tools.WidgetHelper;
@@ -68,6 +71,7 @@ public class TunnelManager extends ViewPart
    
    private SortableTableViewer viewer;
    private Action actionRefresh;
+   private Action actionCreateNode;
    private Action actionBind;
    private Action actionUnbind;
    
@@ -123,6 +127,14 @@ public class TunnelManager extends ViewPart
          }
       };
       
+      actionCreateNode = new Action("&Create node and bind...") {
+         @Override
+         public void run()
+         {
+            createNode();
+         }
+      };
+      
       actionBind = new Action("&Bind to...") {
          @Override
          public void run()
@@ -201,6 +213,7 @@ public class TunnelManager extends ViewPart
       if ((selection.size() == 1) && !((AgentTunnel)selection.getFirstElement()).isBound())
       {
          manager.add(actionBind);
+         manager.add(actionCreateNode);
       }
       else
       {
@@ -243,6 +256,65 @@ public class TunnelManager extends ViewPart
       }.start();
    }
    
+   /**
+    * Create new node and bind tunnel
+    */
+   private void createNode()
+   {
+      IStructuredSelection selection = (IStructuredSelection)viewer.getSelection();
+      if (selection.size() != 1)
+         return;
+      
+      final AgentTunnel tunnel = (AgentTunnel)selection.getFirstElement();
+      if (tunnel.isBound())
+         return;
+      
+      CreateNodeDialog dlg = new CreateNodeDialog(getSite().getShell(), null);
+      dlg.setEnableShowAgainFlag(false);
+      dlg.setObjectName(tunnel.getSystemName());
+      dlg.setZoneId(tunnel.getZoneId());
+      if (dlg.open() != Window.OK)
+         return;
+      
+      final NXCObjectCreationData cd = new NXCObjectCreationData(AbstractObject.OBJECT_NODE, dlg.getObjectName(), 2);
+      cd.setCreationFlags(dlg.getCreationFlags());
+      cd.setPrimaryName(dlg.getHostName());
+      cd.setAgentPort(dlg.getAgentPort());
+      cd.setSnmpPort(dlg.getSnmpPort());
+      cd.setAgentProxyId(dlg.getAgentProxy());
+      cd.setSnmpProxyId(dlg.getSnmpProxy());
+      cd.setIcmpProxyId(dlg.getIcmpProxy());
+      cd.setSshProxyId(dlg.getSshProxy());
+      cd.setZoneId(dlg.getZoneId());
+      cd.setSshLogin(dlg.getSshLogin());
+      cd.setSshPassword(dlg.getSshPassword());
+      
+      final NXCSession session = ConsoleSharedData.getSession();
+      new ConsoleJob("Create new node and bind tunnel", this, Activator.PLUGIN_ID, null) {
+         @Override
+         protected void runInternal(IProgressMonitor monitor) throws Exception
+         {
+            long nodeId = session.createObject(cd);
+            session.bindAgentTunnel(tunnel.getId(), nodeId);
+
+            final List<AgentTunnel> tunnels = session.getAgentTunnels();
+            runInUIThread(new Runnable() {
+               @Override
+               public void run()
+               {
+                  viewer.setInput(tunnels);
+               }
+            });
+         }
+         
+         @Override
+         protected String getErrorMessage()
+         {
+            return "Cannot create node and bind tunnel";
+         }
+      }.start();
+   }
+   
    /**
     * Bind tunnel to node
     */
@@ -281,7 +353,7 @@ public class TunnelManager extends ViewPart
          @Override
          protected String getErrorMessage()
          {
-            return "Cannot unbind tunnel";
+            return "Cannot bind tunnel";
          }
       }.start();
    }
index 6b6e23e..e45ed2d 100644 (file)
@@ -65,7 +65,7 @@ public class ZoneSelector extends AbstractSelector
    @Override
    protected void clearButtonHandler()
    {
-      zoneId = 0;
+      zoneId = -1;
       setText(emptySelectionName);
       fireModifyListeners();
    }
@@ -96,7 +96,7 @@ public class ZoneSelector extends AbstractSelector
    public void setZoneId(long zoneId)
    {
       this.zoneId = zoneId;
-      if (zoneId == 0)
+      if (zoneId == -1)
       {
          setText(emptySelectionName); //$NON-NLS-1$
       }
index 13496cd..c493cd9 100644 (file)
@@ -18,4 +18,5 @@ Require-Bundle: org.eclipse.rap.ui;bundle-version="2.3.0",
 Bundle-RequiredExecutionEnvironment: JavaSE-1.6
 Bundle-ActivationPolicy: lazy
 Export-Package: org.netxms.ui.eclipse.objectmanager.actions,
+ org.netxms.ui.eclipse.objectmanager.dialogs,
  org.netxms.ui.eclipse.objectmanager.propertypages
index 8437785..b755913 100644 (file)
@@ -65,8 +65,8 @@ public class CreateNodeDialog extends Dialog
    private ObjectSelector sshProxySelector;
        private ZoneSelector zoneSelector;
        
-       private String objectName;
-       private String hostName;
+       private String objectName = "";
+       private String hostName = "";
        private int creationFlags = 0;
        private long agentProxy = 0;
        private long snmpProxy = 0;
@@ -78,6 +78,7 @@ public class CreateNodeDialog extends Dialog
        private String sshLogin = "";
        private String sshPassword; 
        private boolean showAgain = false;
+       private boolean enableShowAgainFlag = true;
        
        /**
         * @param parentShell
@@ -135,9 +136,10 @@ public class CreateNodeDialog extends Dialog
                GridData gd = new GridData();
                gd.horizontalAlignment = SWT.FILL;
                gd.grabExcessHorizontalSpace = true;
-               gd.widthHint = 300;
+               gd.widthHint = 600;
                gd.horizontalSpan = 2;
                objectNameField.setLayoutData(gd);
+               objectNameField.setText(objectName);
                
                final Composite ipAddrGroup = new Composite(dialogArea, SWT.NONE);
                layout = new GridLayout();
@@ -158,6 +160,7 @@ public class CreateNodeDialog extends Dialog
                gd.horizontalAlignment = SWT.FILL;
                gd.grabExcessHorizontalSpace = true;
                hostNameField.setLayoutData(gd);
+               hostNameField.setText(hostName);
                
                agentPortField = WidgetHelper.createLabeledSpinner(dialogArea, SWT.BORDER, Messages.get().CreateNodeDialog_AgentPort, 1, 65535, WidgetHelper.DEFAULT_LAYOUT_DATA);
                agentPortField.setSelection(agentPort);
@@ -242,18 +245,20 @@ public class CreateNodeDialog extends Dialog
                        zoneSelector = new ZoneSelector(dialogArea, SWT.NONE, false);
                        zoneSelector.setLabel(Messages.get().CreateNodeDialog_Zone);
                        Zone zone = ConsoleSharedData.getSession().findZone(zoneId);
-                       zoneSelector.setZoneId((zone != null) ? zone.getZoneId() : 0);
+                       zoneSelector.setZoneId((zone != null) ? zone.getZoneId() : -1);
                        gd = new GridData();
                        gd.horizontalAlignment = SWT.FILL;
                        gd.grabExcessHorizontalSpace = true;
                        gd.horizontalSpan = 2;
                        zoneSelector.setLayoutData(gd);
                }
-               
-               checkCreateAnother = new Button(dialogArea, SWT.CHECK);
-               checkCreateAnother.setText(Messages.get().CreateNodeDialog_ShowAgain);
-               checkCreateAnother.setSelection(showAgain);
-               
+
+               if (enableShowAgainFlag)
+               {
+               checkCreateAnother = new Button(dialogArea, SWT.CHECK);
+               checkCreateAnother.setText(Messages.get().CreateNodeDialog_ShowAgain);
+               checkCreateAnother.setSelection(showAgain);
+               }               
                return dialogArea;
        }
 
@@ -301,7 +306,7 @@ public class CreateNodeDialog extends Dialog
                   zoneId = zoneSelector.getZoneId();
                }
                
-               showAgain = checkCreateAnother.getSelection();
+               showAgain = enableShowAgainFlag ? checkCreateAnother.getSelection() : false;
                super.okPressed();
        }
 
@@ -313,7 +318,15 @@ public class CreateNodeDialog extends Dialog
                return objectName;
        }
 
-       /**
+   /**
+    * @param objectName the objectName to set
+    */
+   public void setObjectName(String objectName)
+   {
+      this.objectName = objectName;
+   }
+
+   /**
         * @return the hostName
         */
        public String getHostName()
@@ -370,6 +383,14 @@ public class CreateNodeDialog extends Dialog
        }
 
        /**
+    * @param zoneId the zoneId to set
+    */
+   public void setZoneId(long zoneId)
+   {
+      this.zoneId = zoneId;
+   }
+
+   /**
         * @return the agentPort
         */
        public int getAgentPort()
@@ -408,4 +429,20 @@ public class CreateNodeDialog extends Dialog
    {
       return showAgain;
    }
+
+   /**
+    * @return the enableShowAgainFlag
+    */
+   public boolean isEnableShowAgainFlag()
+   {
+      return enableShowAgainFlag;
+   }
+
+   /**
+    * @param enableShowAgainFlag the enableShowAgainFlag to set
+    */
+   public void setEnableShowAgainFlag(boolean enableShowAgainFlag)
+   {
+      this.enableShowAgainFlag = enableShowAgainFlag;
+   }
 }