3f7df0989c604f5f36400fcbde75f5dc74e8a3b1
[neutron.git] / neutron-spi / src / main / java / org / opendaylight / neutron / spi / NeutronQosMinimumBandwidthRule.java
1 /*
2  * Copyright (c) 2017 Intel Corporation.  All rights reserved.
3  *
4  * This program and the accompanying materials are made available under the
5  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6  * and is available at http://www.eclipse.org/legal/epl-v10.html
7  */
8
9 package org.opendaylight.neutron.spi;
10 import java.io.Serializable;
11 import java.math.BigInteger;
12 import javax.xml.bind.annotation.XmlAccessType;
13 import javax.xml.bind.annotation.XmlAccessorType;
14 import javax.xml.bind.annotation.XmlElement;
15 import javax.xml.bind.annotation.XmlRootElement;
16
17
18 @XmlRootElement
19 @XmlAccessorType(XmlAccessType.NONE)
20 public final class NeutronQosMinimumBandwidthRule extends NeutronObject<NeutronQosMinimumBandwidthRule>
21     implements Serializable, INeutronObject<NeutronQosMinimumBandwidthRule> {
22     private static final long serialVersionUID = 1L;
23
24     @XmlElement(name = "min_kbps")
25     BigInteger minKbps;
26
27     @XmlElement(defaultValue = "egress", name = "direction")
28     String direction;
29
30     public BigInteger getMinKbps() {
31         return minKbps;
32     }
33
34     public void setMinKbps(BigInteger minKbps) {
35         this.minKbps = minKbps;
36     }
37
38     public String getDirection() {
39         return direction;
40     }
41
42     public void setDirection(String direction) {
43         this.direction = direction;
44     }
45
46     @Override
47     public boolean extractField(String field, NeutronQosMinimumBandwidthRule ans) {
48         switch (field) {
49             case "min_kbps":
50                 ans.setMinKbps(this.getMinKbps());
51                 break;
52             case "direction":
53                 ans.setDirection(this.getDirection());
54                 break;
55             default:
56                 return super.extractField(field, ans);
57         }
58         return true;
59     }
60
61     @Override
62     public String toString() {
63         return "qosMinimumBandwidthRules{" + "qosMinimumBandwidthRuleUUID='" + uuid + '\'' + ","
64                 + " qosMinimumBandwidthRuleTenantID='" + tenantID
65                 + '\'' + ", qosMinimumBandwidthMinValue='" + minKbps
66                 + '\'' + ", qosMinimumBandwidthDirection='" + direction + '\''
67                 + '}';
68     }
69 }