[ONOS-3804] [ONOS-3805] Initial L3 flowrules setup for Compute/Gateway nodes and PNAT Handler for OpenstackRouting
- Performs app refactoring (openstackrouting and openstackswitching)
- Implements L3 REST call corresponding openstackRouter and openstackRouterInterface.
- Implements initail L3 rules population to compute/gateway node.
- Implements PNAT rules population corresponding packet-in event.
- Fixs comments and javadocs.
- Rebases on master.
Change-Id: I5ad68810f50dc977737d30c43150c892b978b7cb
diff --git a/apps/openstacknetworking/api/src/main/java/org/onosproject/openstacknetworking/OpenstackRouter.java b/apps/openstacknetworking/api/src/main/java/org/onosproject/openstacknetworking/OpenstackRouter.java
index 8e513f1..5230c18 100644
--- a/apps/openstacknetworking/api/src/main/java/org/onosproject/openstacknetworking/OpenstackRouter.java
+++ b/apps/openstacknetworking/api/src/main/java/org/onosproject/openstacknetworking/OpenstackRouter.java
@@ -16,6 +16,7 @@
package org.onosproject.openstacknetworking;
import java.util.Objects;
+import static com.google.common.base.Preconditions.checkNotNull;
/**
* An Openstack Neutron Router Model.
@@ -31,9 +32,9 @@
private final String tenantId;
private final String id;
private final String name;
- private final RouterStatus status;
- private final boolean adminStateUp;
- private final OpenstackExternalGateway gatewayExternalInfo;
+ private RouterStatus status;
+ private boolean adminStateUp;
+ private OpenstackExternalGateway gatewayExternalInfo;
private OpenstackRouter(String id, String tenantId, String name, RouterStatus status,
boolean adminStateUp, OpenstackExternalGateway gatewayExternalInfo) {
@@ -209,8 +210,8 @@
* @return OpenstasckRouter object
*/
public OpenstackRouter build() {
- return new OpenstackRouter(id, tenantId, name, status,
- adminStateUp, gatewayExternalInfo);
+ return new OpenstackRouter(checkNotNull(id), checkNotNull(tenantId), name, checkNotNull(status),
+ checkNotNull(adminStateUp), gatewayExternalInfo);
}
}