public static void main(String[] args) throws Exception { final NetPlan np = new NetPlan (); final Node n1 = np.addNode(0 , 0 , "name1" , null); final Node n2 = np.addNode(0 , 0 , "name2" , null); final Node n3 = np.addNode(0 , 0 , "name3" , null); final Link e12 = np.addLink(n1,n2,3,100,200000,null); final Link e23 = np.addLink(n2,n3,3,100,200000,null); final Resource r1 = np.addResource("CPU" , "nameRes1" , Optional.of(n1) , 10 , "Mbps" , null , 5 , null); final Resource r2 = np.addResource("RAM" , "nameRes2" , Optional.of(n2) , 10 , "Mbps" , null , 5 , null); final Demand d = np.addDemand(n1 , n3 , 0 , RoutingType.SOURCE_ROUTING , null); d.setServiceChainSequenceOfTraversedResourceTypes(Arrays.asList("CPU" , "RAM")); final Route r = np.addServiceChain(d , 2.0 , Arrays.asList(1.0,2.0,3.0,4.0) , Arrays.asList(r1,e12,r2,e23) , null); final NetworkLayer layer = np.getNetworkLayerDefault(); layer.setName("WDM"); JFrame frame = new JFrame("Example"); frame.getContentPane().setLayout(new FlowLayout()); frame.setPreferredSize(new Dimension (600,600)); //frame.add(new FigureLinkSequencePanel(r.getPath() , layer , r.getSeqOccupiedCapacitiesIfNotFailing() , "Route " + r.getIndex() , r.getCarriedTraffic())); frame.pack(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); }
newDemand.setServiceChainSequenceOfTraversedResourceTypes(originDemand.getServiceChainSequenceOfTraversedResourceTypes());
selectedDemand.setServiceChainSequenceOfTraversedResourceTypes(newTraversedResourcesTypes);
if (!mandatorySequenceOfTraversedResourceTypes.isEmpty()) newDemand.setServiceChainSequenceOfTraversedResourceTypes(mandatorySequenceOfTraversedResourceTypes);
if (isUpstream) scNp.setServiceChainSequenceOfTraversedResourceTypes(userService.getListVnfTypesToTraverseUpstream()); scReq.setIsUpstream(true); scReq.setPotentiallyValidOrigins(Sets.newTreeSet(Arrays.asList(userInjectionNode))); scNp.setServiceChainSequenceOfTraversedResourceTypes(userService.getListVnfTypesToTraverseDownstream()); scReq.setIsUpstream(false); scReq.setPotentiallyValidDestinations(Sets.newTreeSet(Arrays.asList(userInjectionNode)));
if (thisDemand.isSourceRouting()) thisDemand.setServiceChainSequenceOfTraversedResourceTypes(otherDemand.getServiceChainSequenceOfTraversedResourceTypes()); for (Route other : otherDemand.getRoutes())
d.setServiceChainSequenceOfTraversedResourceTypes(nfvsToTraverse);
newDemand.setServiceChainSequenceOfTraversedResourceTypes(mandatorySequenceOfTraversedResourceTypes);