Fixes for resource-related test CLI commands:
- Tweak to assumptions in base command for ConnectivityIntents - Check before casting between port types Change-Id: I5db84ec435029f2de84abb0f3f5ddc726035bf1b
Showing
2 changed files
with
18 additions
and
14 deletions
... | @@ -115,7 +115,7 @@ public abstract class ConnectivityIntentCommand extends AbstractShellCommand { | ... | @@ -115,7 +115,7 @@ public abstract class ConnectivityIntentCommand extends AbstractShellCommand { |
115 | 115 | ||
116 | @Option(name = "-l", aliases = "--lambda", description = "Lambda", | 116 | @Option(name = "-l", aliases = "--lambda", description = "Lambda", |
117 | required = false, multiValued = false) | 117 | required = false, multiValued = false) |
118 | - private boolean lambda = false; | 118 | + private Boolean lambda = null; |
119 | 119 | ||
120 | @Option(name = "-a", aliases = "--appId", description = "Application Id", | 120 | @Option(name = "-a", aliases = "--appId", description = "Application Id", |
121 | required = false, multiValued = false) | 121 | required = false, multiValued = false) |
... | @@ -189,7 +189,7 @@ public abstract class ConnectivityIntentCommand extends AbstractShellCommand { | ... | @@ -189,7 +189,7 @@ public abstract class ConnectivityIntentCommand extends AbstractShellCommand { |
189 | // Set the default EthType based on the IP version if the matching | 189 | // Set the default EthType based on the IP version if the matching |
190 | // source or destination IP prefixes. | 190 | // source or destination IP prefixes. |
191 | // | 191 | // |
192 | - short ethType = EthType.IPV4.value(); | 192 | + Short ethType = null; |
193 | if ((srcIpPrefix != null) && srcIpPrefix.isIp6()) { | 193 | if ((srcIpPrefix != null) && srcIpPrefix.isIp6()) { |
194 | ethType = EthType.IPV6.value(); | 194 | ethType = EthType.IPV6.value(); |
195 | } | 195 | } |
... | @@ -199,8 +199,9 @@ public abstract class ConnectivityIntentCommand extends AbstractShellCommand { | ... | @@ -199,8 +199,9 @@ public abstract class ConnectivityIntentCommand extends AbstractShellCommand { |
199 | if (!isNullOrEmpty(ethTypeString)) { | 199 | if (!isNullOrEmpty(ethTypeString)) { |
200 | ethType = EthType.parseFromString(ethTypeString); | 200 | ethType = EthType.parseFromString(ethTypeString); |
201 | } | 201 | } |
202 | - selectorBuilder.matchEthType(ethType); | 202 | + if (ethType != null) { |
203 | - | 203 | + selectorBuilder.matchEthType(ethType); |
204 | + } | ||
204 | if (!isNullOrEmpty(srcMacString)) { | 205 | if (!isNullOrEmpty(srcMacString)) { |
205 | selectorBuilder.matchEthSrc(MacAddress.valueOf(srcMacString)); | 206 | selectorBuilder.matchEthSrc(MacAddress.valueOf(srcMacString)); |
206 | } | 207 | } |
... | @@ -312,11 +313,12 @@ public abstract class ConnectivityIntentCommand extends AbstractShellCommand { | ... | @@ -312,11 +313,12 @@ public abstract class ConnectivityIntentCommand extends AbstractShellCommand { |
312 | } | 313 | } |
313 | 314 | ||
314 | // Check for a lambda specification | 315 | // Check for a lambda specification |
315 | - if (lambda) { | 316 | + if (lambda != null) { |
316 | - constraints.add(new LambdaConstraint(null)); | 317 | + if (lambda) { |
318 | + constraints.add(new LambdaConstraint(null)); | ||
319 | + } | ||
320 | + constraints.add(new LinkTypeConstraint(lambda, Link.Type.OPTICAL)); | ||
317 | } | 321 | } |
318 | - constraints.add(new LinkTypeConstraint(lambda, Link.Type.OPTICAL)); | ||
319 | - | ||
320 | return constraints; | 322 | return constraints; |
321 | } | 323 | } |
322 | 324 | ... | ... |
... | @@ -24,6 +24,7 @@ import org.onlab.util.KryoNamespace; | ... | @@ -24,6 +24,7 @@ import org.onlab.util.KryoNamespace; |
24 | import org.onlab.util.PositionalParameterStringFormatter; | 24 | import org.onlab.util.PositionalParameterStringFormatter; |
25 | import org.onosproject.net.Link; | 25 | import org.onosproject.net.Link; |
26 | import org.onosproject.net.LinkKey; | 26 | import org.onosproject.net.LinkKey; |
27 | +import org.onosproject.net.Port; | ||
27 | import org.onosproject.net.intent.IntentId; | 28 | import org.onosproject.net.intent.IntentId; |
28 | import org.onosproject.net.link.LinkService; | 29 | import org.onosproject.net.link.LinkService; |
29 | import org.onosproject.net.resource.link.BandwidthResource; | 30 | import org.onosproject.net.resource.link.BandwidthResource; |
... | @@ -140,14 +141,15 @@ public class ConsistentLinkResourceStore extends | ... | @@ -140,14 +141,15 @@ public class ConsistentLinkResourceStore extends |
140 | 141 | ||
141 | private Set<LambdaResourceAllocation> getLambdaResourceCapacity(Link link) { | 142 | private Set<LambdaResourceAllocation> getLambdaResourceCapacity(Link link) { |
142 | Set<LambdaResourceAllocation> allocations = new HashSet<>(); | 143 | Set<LambdaResourceAllocation> allocations = new HashSet<>(); |
144 | + Port port = deviceService.getPort(link.src().deviceId(), link.src().port()); | ||
145 | + if (port instanceof OmsPort) { | ||
146 | + OmsPort omsPort = (OmsPort) port; | ||
143 | 147 | ||
144 | - OmsPort port = (OmsPort) deviceService.getPort(link.src().deviceId(), link.src().port()); | 148 | + // Assume fixed grid for now |
145 | - | 149 | + for (int i = 0; i < omsPort.totalChannels(); i++) { |
146 | - // Assume fixed grid for now | 150 | + allocations.add(new LambdaResourceAllocation(LambdaResource.valueOf(i))); |
147 | - for (int i = 0; i < port.totalChannels(); i++) { | 151 | + } |
148 | - allocations.add(new LambdaResourceAllocation(LambdaResource.valueOf(i))); | ||
149 | } | 152 | } |
150 | - | ||
151 | return allocations; | 153 | return allocations; |
152 | } | 154 | } |
153 | 155 | ... | ... |
-
Please register or login to post a comment