Added conversion for Tunnel Endpoints to ofplugin
[openflowplugin.git] / openflowplugin / src / main / java / org / opendaylight / openflowplugin / openflow / md / core / sal / convertor / MeterConvertor.java
index c6130d643ec70ce6618826562844069ed1fcc114..1632b8724109426c7aed01fc61bc7cb1e2185ef0 100644 (file)
@@ -1,3 +1,12 @@
+/**
+ * Copyright (c) 2014 Ericsson India Global Services Pvt Ltd. 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
+ *
+ * Contributor: usha.m.s@ericsson.com
+ */
 package org.opendaylight.openflowplugin.openflow.md.core.sal.convertor;
 
 /****
@@ -16,6 +25,9 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.band.
 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.band.type.band.type.Experimenter;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.meter.MeterBandHeaders;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.meter.meter.band.headers.MeterBandHeader;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.ExperimenterIdMeterBand;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.ExperimenterIdMeterBandBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.ExperimenterId;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.MeterBandType;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.MeterFlags;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.MeterId;
@@ -111,8 +123,8 @@ public final class MeterConvertor {
                         MeterBandDropBuilder meterBandDropBuilder = new MeterBandDropBuilder();
                         meterBandDropBuilder.setType(MeterBandType.OFPMBTDROP);
                         Drop drop = (Drop) meterBandHeader.getBandType();
-                        meterBandDropBuilder.setBurstSize(drop.getRate());
-                        meterBandDropBuilder.setRate(drop.getBurstSize());
+                        meterBandDropBuilder.setBurstSize(drop.getDropRate());
+                        meterBandDropBuilder.setRate(drop.getDropBurstSize());
                         dropCaseBuilder.setMeterBandDrop(meterBandDropBuilder.build());
                         meterBandItem = dropCaseBuilder.build();
                         bandsB = new BandsBuilder();
@@ -128,8 +140,8 @@ public final class MeterConvertor {
                         MeterBandDscpRemarkBuilder meterBandDscpRemarkBuilder = new MeterBandDscpRemarkBuilder();
                         meterBandDscpRemarkBuilder.setType(MeterBandType.OFPMBTDSCPREMARK);
                         DscpRemark dscpRemark = (DscpRemark) meterBandHeader.getBandType();
-                        meterBandDscpRemarkBuilder.setBurstSize(dscpRemark.getBurstSize());
-                        meterBandDscpRemarkBuilder.setRate(dscpRemark.getRate());
+                        meterBandDscpRemarkBuilder.setBurstSize(dscpRemark.getDscpRemarkBurstSize());
+                        meterBandDscpRemarkBuilder.setRate(dscpRemark.getDscpRemarkRate());
                         meterBandDscpRemarkBuilder.setPrecLevel(dscpRemark.getPercLevel());
                         dscpCaseBuilder.setMeterBandDscpRemark(meterBandDscpRemarkBuilder.build());
                         meterBandItem = dscpCaseBuilder.build();
@@ -146,9 +158,12 @@ public final class MeterConvertor {
                         MeterBandExperimenterBuilder meterBandExperimenterBuilder = new MeterBandExperimenterBuilder();
                         meterBandExperimenterBuilder.setType(MeterBandType.OFPMBTEXPERIMENTER);
                         Experimenter experimenter = (Experimenter) meterBandHeader.getBandType();
-                        meterBandExperimenterBuilder.setBurstSize(experimenter.getBurstSize());
-                        meterBandExperimenterBuilder.setRate(experimenter.getRate());
-                        meterBandExperimenterBuilder.setExperimenter(experimenter.getExperimenter());
+                        meterBandExperimenterBuilder.setBurstSize(experimenter.getExperimenterBurstSize());
+                        meterBandExperimenterBuilder.setRate(experimenter.getExperimenterRate());
+                        ExperimenterIdMeterBandBuilder expBuilder = new ExperimenterIdMeterBandBuilder();
+                        expBuilder.setExperimenter(new ExperimenterId(experimenter.getExperimenter()));
+                        meterBandExperimenterBuilder.addAugmentation(ExperimenterIdMeterBand.class, expBuilder.build());
+                        // TODO - implement / finish experimenter meter band translation
                         experimenterCaseBuilder.setMeterBandExperimenter(meterBandExperimenterBuilder.build());
                         meterBandItem = experimenterCaseBuilder.build();
                         bandsB = new BandsBuilder();