@Override public PairQueryableId getQueryableId() { return new PairQueryableId(getMemberId(getFirst()), getMemberId(getSecond())); }
private boolean canRemoveVnics() { Iterable<PairQueryable<VmNetworkInterface, VM>> selectedItems = getSelectedItems() != null ? getSelectedItems() : new ArrayList(); for (PairQueryable<VmNetworkInterface, VM> pair : selectedItems) { if (pair.getFirst().isPlugged() && !VMStatus.Down.equals(pair.getSecond().getStatus())) { return false; } } return true; }
private VmDevice getDeviceFromObject(T object) { VmDevice device = null; if (object instanceof VmDeviceFeEntity) { device = ((VmDeviceFeEntity) object).getVmDevice(); } else if (object instanceof PairQueryable && ((PairQueryable) object).getFirst() instanceof VmDevice) { device = ((PairQueryable<VmDevice, VM>) object).getFirst(); } return device; }
public void updateVDSInterfaceList(Collection<PairQueryable<VdsNetworkInterface, VDS>> pairCollection, Runnable callback) { if (pairCollection != null) { List<VDS> vdsList = pairCollection.stream().map(pair -> pair.getSecond()).collect(Collectors.toList()); updateVDSInterfaceList(vdsList, callback); } else { callback.run(); } }
@Override protected void syncSearch() { if (getEntity() == null) { return; } final NetworkHostFilter filter = getViewFilterType(); AsyncQuery<QueryReturnValue> asyncQuery = new AsyncQuery<>(returnValue -> { if (filter.equals(getViewFilterType())) { final Iterable returnList = returnValue.getReturnValue(); if (NetworkHostFilter.unattached.equals(getViewFilterType())) { final List<PairQueryable<VdsNetworkInterface, VDS>> items = new ArrayList<>(); for (Object obj : returnList) { items.add(new PairQueryable<VdsNetworkInterface, VDS>(null, (VDS) obj)); } setItems(items); } else if (NetworkHostFilter.attached.equals(getViewFilterType())) { initAttachedInterfaces((Collection<PairQueryable<VdsNetworkInterface, VDS>>) returnList); } } }); IdQueryParameters params = new IdQueryParameters(getEntity().getId()); params.setRefresh(getIsQueryFirstTime()); if (NetworkHostFilter.unattached.equals(getViewFilterType())) { Frontend.getInstance().runQuery(QueryType.GetVdsWithoutNetwork, params, asyncQuery); } else if (NetworkHostFilter.attached.equals(getViewFilterType())) { Frontend.getInstance().runQuery(QueryType.GetVdsAndNetworkInterfacesByNetworkId, params, asyncQuery); } setIsQueryFirstTime(false); }
private ClusterNetworkManageModel createManageList() { List<ClusterNetworkModel> networkManageModelList = new ArrayList<>(); Iterable<PairQueryable<Cluster, NetworkCluster>> items = getItems(); for (PairQueryable<Cluster, NetworkCluster> item : items) { Network network = (Network) Cloner.clone(getEntity()); if (item.getSecond() != null) { network.setCluster((NetworkCluster) Cloner.clone(item.getSecond())); } ClusterNetworkModel networkManageModel = new ClusterNetworkModel(network) { @Override public String getDisplayedName() { return getCluster().getName(); } }; networkManageModel.setCluster((Cluster) Cloner.clone(item.getFirst())); networkManageModelList.add(networkManageModel); } Collections.sort(networkManageModelList, manageModelComparator); ClusterNetworkManageModel listModel = new ClusterNetworkManageModel(this) { @Override public boolean isMultiCluster() { return true; } }; listModel.setItems(networkManageModelList); return listModel; }
private ImageResource getImage(T object) { VmNetworkInterface vnic = null; if (object instanceof VmNetworkInterface) { vnic = (VmNetworkInterface) object; } else if (object instanceof PairQueryable && ((PairQueryable) object).getFirst() instanceof VmNetworkInterface) { vnic = ((PairQueryable<VmNetworkInterface, VM>) object).getFirst(); } if (vnic != null) { return vnic.isPlugged() && vnic.isLinked() ? resources.upImage() : resources.downImage(); } return null; }
private void updateActionAvailability() { ArrayList<VM> vms = new ArrayList<>(); Iterable<PairQueryable<VmNetworkInterface, VM>> selectedItems = getSelectedItems() != null ? getSelectedItems() : new ArrayList(); for (PairQueryable<VmNetworkInterface, VM> item : selectedItems) { vms.add(item.getSecond()); } getRemoveCommand().setIsExecutionAllowed(ActionUtils.canExecute(vms, VM.class, ActionType.RemoveVmInterface) && getSelectedItems() != null && !getSelectedItems().isEmpty() && canRemoveVnics()); }
private void remove() { if (getWindow() != null) { return; } List<VmNetworkInterface> vnics = new ArrayList<>(); for (PairQueryable<VmNetworkInterface, VmTemplate> pair : getSelectedItems()) { vnics.add(pair.getFirst()); } RemoveVmTemplateInterfaceModel model = new RemoveVmTemplateInterfaceModel(this, vnics, true); setWindow(model); }
public void setupNetworks() { if (getWindow() != null) { return; } HostSetupNetworksModel setupNetworksWindowModel = new HostSetupNetworksModel(this, getSelectedItem().getSecond()); setWindow(setupNetworksWindowModel); }
private void remove() { if (getWindow() != null) { return; } List<VmNetworkInterface> vnics = new ArrayList<>(); for (Object item : getSelectedItems()) { PairQueryable<VmNetworkInterface, VM> pair = (PairQueryable<VmNetworkInterface, VM>) item; vnics.add(pair.getFirst()); } RemoveVmInterfaceModel model = new RemoveVmInterfaceModel(this, vnics, true); setWindow(model); }
public NetworkHostListModel() { setTitle(ConstantsManager.getInstance().getConstants().hostsTitle()); setHelpTag(HelpTag.hosts); setHashName("hosts"); //$NON-NLS-1$ setComparator( Comparator.comparing((PairQueryable<VdsNetworkInterface, VDS> p) -> p.getSecond() .getClusterName()).thenComparing(p -> p.getSecond().getName())); setSetupNetworksCommand(new UICommand("SetupNetworks", this)); //$NON-NLS-1$ updateActionAvailability(); }
@Override public SafeHtml getTooltip(T object) { VmNetworkInterface vnic = null; if (object instanceof VmNetworkInterface) { vnic = (VmNetworkInterface) object; } else if (object instanceof PairQueryable && ((PairQueryable) object).getFirst() instanceof VmNetworkInterface) { vnic = ((PairQueryable<VmNetworkInterface, VM>) object).getFirst(); } StringBuilder tooltip = new StringBuilder(""); //$NON-NLS-1$ boolean vnicExist = vnic != null; if (vnicExist && vnic.isPlugged()) { tooltip = tooltip.append(templates.cardStatus(constants.pluggedNetworkInterface()).asString()); } else { tooltip = tooltip.append(templates.cardStatus(constants.unpluggedNetworkInterface()).asString()); } tooltip = tooltip.append("<BR>"); //$NON-NLS-1$ if (vnicExist && vnic.isLinked()) { tooltip = tooltip.append(templates.linkState(constants.linkedNetworkInterface()) .asString()); } else { tooltip = tooltip.append(templates.linkState(constants.unlinkedNetworkInterface()) .asString()); } return SafeHtmlUtils.fromTrustedString(tooltip.toString()); }
public NetworkTemplateListModel() { setTitle(ConstantsManager.getInstance().getConstants().templatesTitle()); setHelpTag(HelpTag.templates); setHashName("templates"); //$NON-NLS-1$ setAvailableInModes(ApplicationMode.VirtOnly); setComparator(Comparator .comparing((PairQueryable<VmNetworkInterface, VmTemplate> p) -> p.getSecond().getClusterName()) .thenComparing(p -> p.getSecond().getName())); setRemoveCommand(new UICommand("Remove", this)); //$NON-NLS-1$ updateActionAvailability(); }
public NetworkVmListModel() { setTitle(ConstantsManager.getInstance().getConstants().virtualMachinesTitle()); setHelpTag(HelpTag.virtual_machines); setHashName("virtual_machines"); //$NON-NLS-1$ setAvailableInModes(ApplicationMode.VirtOnly); setComparator( Comparator.comparing((PairQueryable<VmNetworkInterface, VM> p) -> p.getSecond().getClusterName()) .thenComparing(p -> p.getSecond().getName())); setRemoveCommand(new UICommand("Remove", this)); //$NON-NLS-1$ updateActionAvailability(); }