@Override public void itemStateChanged(ItemEvent e) { final Node originNode = (Node) ((StringLabeller) originNodeSelector.getSelectedItem()).getObject(); final Node destinationNode = (Node) ((StringLabeller) destinationNodeSelector.getSelectedItem()).getObject(); callback.putTransientColorInElementTopologyCanvas(Arrays.asList(originNode), Color.GREEN); callback.putTransientColorInElementTopologyCanvas(Arrays.asList(destinationNode), Color.CYAN); } };
/** * Returns the information required to call a runnable code. * * @return Runnable information * @since 0.2.0 */ public Triple<File, String, Class> getRunnable() { String filename = txt_file.getText(); if (filename.isEmpty() || algorithmSelector.getSelectedIndex() == -1) { throw new Net2PlanException(label + " must be selected"); } String algorithm = (String) ((StringLabeller) algorithmSelector.getSelectedItem()).getObject(); return Triple.of(new File(filename), algorithm, implementations.get(algorithm)); }
@Override public void actionPerformed(ActionEvent e) { if (algorithmSelector.getItemCount() == 0 || algorithmSelector.getSelectedIndex() == -1) return; try { File fileName = new File(txt_file.getText()); String className = (String) ((StringLabeller) algorithmSelector.getSelectedItem()).getObject(); Class<? extends IExternal> _class = implementations.get(className); IExternal instance = ClassLoaderUtils.getInstance(fileName, className, _class , null); String aux_description = instance.getDescription() == null ? "No description" : instance.getDescription(); List<Triple<String, String, String>> aux_parameters = instance.getParameters() == null ? new LinkedList<>() : instance.getParameters(); ((Closeable) instance.getClass().getClassLoader()).close(); txt_description.setText(aux_description); if (!txt_description.getText().isEmpty()) txt_description.setCaretPosition(0); parametersPanel.setParameters(aux_parameters); } catch (Throwable ex) { ex.printStackTrace(); ErrorHandling.showErrorDialog("Error selecting " + label.toLowerCase(getLocale())); } } });
@Override public void itemStateChanged(ItemEvent e) { Object selectedItem_Link = linkSelector.getSelectedItem(); Object selectedItem_Demand = demandSelector.getSelectedItem(); if(selectedItem_Link == null || selectedItem_Demand == null) return; final long demandId = (long) ((StringLabeller) selectedItem_Demand).getObject(); Demand demand = netPlan.getDemandFromId(demandId); final long linkId = (long) ((StringLabeller) selectedItem_Link).getObject(); Link link = netPlan.getLinkFromId(linkId); double splittingRatio; if (netPlan.getForwardingRuleSplittingFactor(demand, link) > 0) { splittingRatio = netPlan.getForwardingRuleSplittingFactor(demand, link); } else { Node node = link.getOriginNode(); Map<Pair<Demand, Link>, Double> forwardingRules_thisNode = node.getForwardingRules(demand); double totalSplittingRatio = 0; for (Double value : forwardingRules_thisNode.values()) totalSplittingRatio += value; splittingRatio = Math.max(0, 1 - totalSplittingRatio); } txt_splittingRatio.setText(Double.toString(splittingRatio)); } };
Long newSelectedNodeId = (Long) newItem.getObject(); Node newSelectedNode = netPlan.getNodeFromId(newSelectedNodeId); selectionPanelElements.clear(); throw new Net2PlanException("A multicast demand must have at least two egress nodes"); Long ingressNode = (Long)((StringLabeller)originNodeComboBox.getSelectedItem()).getObject(); LinkedList<Object[]> egressNodes_selection = selectionPanel.getSelectedElements(); Set<Node> egressNodes = new HashSet<Node>();
Long newSelectedMulticasDemandId = (Long) newItem.getObject(); MulticastDemand newSelectedMulticastDemand = netPlan.getMulticastDemandFromId(newSelectedMulticasDemandId); selectionPanelElements.clear(); if (result != JOptionPane.OK_OPTION) return; Long multicastDemandId = (Long)((StringLabeller)(multicastDemandComboBox.getSelectedItem())).getObject(); MulticastDemand demand = netPlan.getMulticastDemandFromId(multicastDemandId); Set<Link> links = new HashSet<Link>();
if (result != JOptionPane.OK_OPTION) return; Node originNode = (Node) ((StringLabeller) originNodeSelector.getSelectedItem()).getObject(); Node destinationNode = (Node) ((StringLabeller) destinationNodeSelector.getSelectedItem()).getObject(); if (networkElementType == NetworkElementType.LINK) final RoutingType rt = (RoutingType) ((StringLabeller) routingTypeSelector.getSelectedItem()).getObject(); final Demand d = netPlan.addDemand(originNode, destinationNode, 0, rt , null , layer); callback.updateVisualizationAfterChanges();
long demandId = (Long) item.getObject(); Demand demand = netPlan.getDemandFromId(demandId); seqLinks.add(netPlan.getLinkFromId((Long) ((StringLabeller) link.getSelectedItem()).getObject())); callback.putTransientColorInElementTopologyCanvas(seqLinks, Color.BLUE); }); long linkId = (Long) ((StringLabeller) seqLinks_cmb.get(seqLinks_cmb.size() - 1).getSelectedItem()).getObject(); Link link = netPlan.getLinkFromId(linkId); long destinationNodeId = link.getDestinationNode().getId(); seqLinks.add(netPlan.getLinkFromId((Long) ((StringLabeller) link1.getSelectedItem()).getObject())); callback.putTransientColorInElementTopologyCanvas(seqLinks, Color.BLUE); }); seqLinks.add(netPlan.getLinkFromId((Long) ((StringLabeller) auxLink.getSelectedItem()).getObject())); seqLinks.add(netPlan.getLinkFromId((Long) ((StringLabeller) link.getSelectedItem()).getObject())); callback.putTransientColorInElementTopologyCanvas(seqLinks, Color.BLUE); }); seqLinks.add(netPlan.getLinkFromId((Long) ((StringLabeller) link.getSelectedItem()).getObject())); callback.putTransientColorInElementTopologyCanvas(seqLinks, Color.BLUE); }); long demandId = (Long) ((StringLabeller) demandSelector.getSelectedItem()).getObject(); seqLinks.add(netPlan.getLinkFromId((Long) ((StringLabeller) link.getSelectedItem()).getObject()));
@Override public void itemStateChanged(ItemEvent e) { linkSelector.removeAllItems(); Object selectedItem_Node = nodeSelector.getSelectedItem(); if(selectedItem_Node == null) return; final long nodeId = (long) ((StringLabeller) selectedItem_Node).getObject(); final Node node = netPlan.getNodeFromId(nodeId); for (Link link : node.getOutgoingLinks(layer)) { String originNodeLabel = "Node " + link.getOriginNode().getId(); if (!link.getOriginNode().getName().isEmpty()) originNodeLabel += " (" + link.getOriginNode().getName() + ")"; String destinationNodeLabel = "Node " + link.getDestinationNode().getId(); if (!link.getDestinationNode().getName().isEmpty()) destinationNodeLabel += " (" + link.getDestinationNode().getName() + ")"; String linkLabel = "e" + link.getId() + ": " + originNodeLabel + " -> " + destinationNodeLabel; linkSelector.addItem(StringLabeller.of(link.getId(), linkLabel)); } if(linkSelector.getItemCount() == 0) linkSelector.setSelectedIndex(-1); else linkSelector.setSelectedIndex(0); } };
hostNode = np.getNodeFromId((Long) ((StringLabeller) hostNodeSelector.getSelectedItem()).getObject()); capacityUnits = capUnitsField.getText(); resType = typeSelector.getText(); if (result != JOptionPane.OK_OPTION) return; hostNode = callback.getDesign().getNodeFromId((Long) ((StringLabeller)(hostNodeSelector.getSelectedItem())).getObject()); resource.attachToNode(hostNode);
if (result != JOptionPane.OK_OPTION) return; long layerId = (long) ((StringLabeller) layerSelector.getSelectedItem()).getObject(); for (Demand d : getSelectedElements()) if (!d.isCoupled()) long selectedLayerId = (Long) ((StringLabeller) layerSelector.getSelectedItem()).getObject(); NetworkLayer selectedLayer = np.getNetworkLayerFromId(selectedLayerId); if (result != JOptionPane.OK_OPTION) return; Long linkId = (Long) ((StringLabeller) linkSelector.getSelectedItem()).getObject(); if (linkId == null) throw new NullPointerException(); if (result != JOptionPane.OK_OPTION) return; long layerId = (long) ((StringLabeller) layerSelector.getSelectedItem()).getObject(); NetworkLayer layer = np.getNetworkLayerFromId(layerId); for (Demand demand : getSelectedElements())
final long layerId = (long) ((StringLabeller) layerSelector.getSelectedItem()).getObject(); for (Link link : getSelectedElements ()) if (!link.isCoupled()) long selectedLayerId = (Long) ((StringLabeller) layerSelector.getSelectedItem()).getObject(); final Long demandId = (Long) ((StringLabeller) demandSelector.getSelectedItem()).getObject(); final Demand demand = np.getDemandFromId(demandId); final Link link = getSelectedElements().first();
if (result != JOptionPane.OK_OPTION) return; long layerId = (long) ((StringLabeller) layerSelector.getSelectedItem()).getObject(); NetworkLayer layer = np.getNetworkLayerFromId(layerId); for (MulticastDemand demand : getSelectedElements())
long backupRouteId = (Long) ((StringLabeller) selectedItem).getObject(); Route backupRoute = netPlan.getRouteFromId(backupRouteId); route.addBackupRoute(backupRoute); long backupRouteId = (Long) ((StringLabeller) selectedItem).getObject(); List<NetworkElement> backupRoutePath = netPlan.getRouteFromId(backupRouteId).getPath(); callback.putTransientColorInElementTopologyCanvas(seqLinksAndResources, Color.ORANGE);