public void OnSave() { ClusterNetworkModel model = (ClusterNetworkModel) getWindow(); network network = new network(null); if (getEntity() == null) { Cancel(); return; } if (!model.Validate() || getEntity().getstorage_pool_id() == null) { return; } network.setstorage_pool_id(getEntity().getstorage_pool_id()); network.setname((String) model.getName().getEntity()); network.setstp((Boolean) model.getIsStpEnabled().getEntity()); network.setdescription((String) model.getDescription().getEntity()); network.setvlan_id(null); if ((Boolean) model.getHasVLanTag().getEntity()) { network.setvlan_id(Integer.parseInt(model.getVLanTag().getEntity().toString())); } Frontend.RunAction( VdcActionType.AddNetwork, new AddNetworkStoragePoolParameters(network.getstorage_pool_id().getValue(), network), new IFrontendActionAsyncCallback() { @Override public void Executed(FrontendActionAsyncResult result) { Object[] data = (Object[]) result.getState(); ClusterNetworkListModel networkListModel = (ClusterNetworkListModel) data[0]; VdcReturnValueBase retVal = result.getReturnValue(); if (retVal != null && retVal.getSucceeded()) { network tempVar = new network(null); tempVar.setId((Guid) retVal.getActionReturnValue()); tempVar.setname(((network) data[1]).getname()); Frontend.RunAction( VdcActionType.AttachNetworkToVdsGroup, new AttachNetworkToVdsGroupParameter(networkListModel.getEntity(), tempVar)); } networkListModel.Cancel(); } }, new Object[] {this, network}); }