-/*\r
- * Copyright (c) 2016 Cisco Systems, Inc. and others. All rights reserved.\r
- *\r
- * This program and the accompanying materials are made available under the\r
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
- * and is available at http://www.eclipse.org/legal/epl-v10.html\r
- */\r
-\r
-package org.opendaylight.groupbasedpolicy.neutron.vpp.mapper.processors;\r
-\r
-import org.opendaylight.controller.md.sal.binding.api.DataBroker;\r
-import org.opendaylight.controller.md.sal.binding.api.DataObjectModification;\r
-import org.opendaylight.controller.md.sal.binding.api.DataTreeIdentifier;\r
-import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;\r
-import org.opendaylight.groupbasedpolicy.util.DataTreeChangeHandler;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.neutron.gbp.mapper.rev150513.Mappings;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.neutron.gbp.mapper.rev150513.mappings.GbpByNeutronMappings;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.neutron.gbp.mapper.rev150513.mappings.gbp.by.neutron.mappings.BaseEndpointsByPorts;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.neutron.gbp.mapper.rev150513.mappings.gbp.by.neutron.mappings.base.endpoints.by.ports.BaseEndpointByPort;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.ports.rev150712.ports.attributes.ports.Port;\r
-import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;\r
-import org.slf4j.Logger;\r
-import org.slf4j.LoggerFactory;\r
-\r
-public class PortAware extends DataTreeChangeHandler<BaseEndpointByPort> implements\r
- MappingProvider<Port> {\r
-\r
- private static final Logger LOG = LoggerFactory.getLogger(PortAware.class);\r
- private final PortHandler portHandler;\r
-\r
- protected PortAware(PortHandler portHandler, DataBroker dataProvider) {\r
- super(dataProvider);\r
- this.portHandler = portHandler;\r
- registerDataTreeChangeListener(new DataTreeIdentifier<>(LogicalDatastoreType.OPERATIONAL,\r
- InstanceIdentifier.builder(Mappings.class)\r
- .child(GbpByNeutronMappings.class)\r
- .child(BaseEndpointsByPorts.class)\r
- .child(BaseEndpointByPort.class)\r
- .build()));\r
- }\r
-\r
- @Override\r
- public InstanceIdentifier<Port> getNeutronDtoIid() {\r
- return portHandler.createWildcartedPortIid();\r
- }\r
-\r
- @Override\r
- public void processCreatedNeutronDto(Port port) {\r
- LOG.trace("Neutron port created: {}", port);\r
- portHandler.processCreated(port);\r
- }\r
-\r
- @Override\r
- public void processUpdatedNeutronDto(Port original, Port delta) {\r
- LOG.trace("Neutron port updated: {}, delta {}", original, delta);\r
- portHandler.processUpdated(original, delta);\r
- }\r
-\r
- @Override\r
- public void processDeletedNeutronDto(Port port) {\r
- LOG.trace("Neutron port deleted: {}", port);\r
- // handled by BaseEndpointByPort removal\r
- }\r
-\r
- @Override\r
- protected void onWrite(DataObjectModification<BaseEndpointByPort> rootNode,\r
- InstanceIdentifier<BaseEndpointByPort> rootIdentifier) {\r
- if (rootNode.getDataBefore() == null) {\r
- portHandler.processCreated(rootNode.getDataAfter());\r
- }\r
- }\r
-\r
- @Override\r
- protected void onDelete(DataObjectModification<BaseEndpointByPort> rootNode,\r
- InstanceIdentifier<BaseEndpointByPort> rootIdentifier) {\r
- portHandler.processDeleted(rootNode.getDataBefore());\r
- }\r
-\r
- @Override\r
- protected void onSubtreeModified(DataObjectModification<BaseEndpointByPort> rootNode,\r
- InstanceIdentifier<BaseEndpointByPort> rootIdentifier) {\r
- // update should not happen\r
- }\r
-}\r
+/*
+ * Copyright (c) 2016 Cisco Systems, Inc. and others. All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+
+package org.opendaylight.groupbasedpolicy.neutron.vpp.mapper.processors;
+
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
+import org.opendaylight.controller.md.sal.binding.api.DataObjectModification;
+import org.opendaylight.controller.md.sal.binding.api.DataTreeIdentifier;
+import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
+import org.opendaylight.groupbasedpolicy.util.DataTreeChangeHandler;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.neutron.gbp.mapper.rev150513.Mappings;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.neutron.gbp.mapper.rev150513.mappings.GbpByNeutronMappings;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.neutron.gbp.mapper.rev150513.mappings.gbp.by.neutron.mappings.BaseEndpointsByPorts;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.neutron.gbp.mapper.rev150513.mappings.gbp.by.neutron.mappings.base.endpoints.by.ports.BaseEndpointByPort;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.ports.rev150712.ports.attributes.ports.Port;
+import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public class PortAware extends DataTreeChangeHandler<BaseEndpointByPort> implements
+ MappingProvider<Port> {
+
+ private static final Logger LOG = LoggerFactory.getLogger(PortAware.class);
+ private final PortHandler portHandler;
+
+ protected PortAware(PortHandler portHandler, DataBroker dataProvider) {
+ super(dataProvider);
+ this.portHandler = portHandler;
+ registerDataTreeChangeListener(new DataTreeIdentifier<>(LogicalDatastoreType.OPERATIONAL,
+ InstanceIdentifier.builder(Mappings.class)
+ .child(GbpByNeutronMappings.class)
+ .child(BaseEndpointsByPorts.class)
+ .child(BaseEndpointByPort.class)
+ .build()));
+ }
+
+ @Override
+ public InstanceIdentifier<Port> getNeutronDtoIid() {
+ return portHandler.createWildcartedPortIid();
+ }
+
+ @Override
+ public void processCreatedNeutronDto(Port port) {
+ LOG.trace("Neutron port created: {}", port);
+ portHandler.processCreated(port);
+ }
+
+ @Override
+ public void processUpdatedNeutronDto(Port original, Port delta) {
+ LOG.trace("Neutron port updated: {}, delta {}", original, delta);
+ portHandler.processUpdated(original, delta);
+ }
+
+ @Override
+ public void processDeletedNeutronDto(Port port) {
+ LOG.trace("Neutron port deleted: {}", port);
+ // handled by BaseEndpointByPort removal
+ }
+
+ @Override
+ protected void onWrite(DataObjectModification<BaseEndpointByPort> rootNode,
+ InstanceIdentifier<BaseEndpointByPort> rootIdentifier) {
+ if (rootNode.getDataBefore() == null) {
+ portHandler.processCreated(rootNode.getDataAfter());
+ }
+ }
+
+ @Override
+ protected void onDelete(DataObjectModification<BaseEndpointByPort> rootNode,
+ InstanceIdentifier<BaseEndpointByPort> rootIdentifier) {
+ portHandler.processDeleted(rootNode.getDataBefore());
+ }
+
+ @Override
+ protected void onSubtreeModified(DataObjectModification<BaseEndpointByPort> rootNode,
+ InstanceIdentifier<BaseEndpointByPort> rootIdentifier) {
+ // update should not happen
+ }
+}