Added copyright and updated appropriate log levels
[vpnservice.git] / mdsalutil / mdsalutil-api / src / main / java / org / opendaylight / vpnservice / mdsalutil / GroupEntity.java
1 /*
2  * Copyright (c) 2015 Ericsson India Global Services Pvt Ltd. and others.  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 package org.opendaylight.vpnservice.mdsalutil;
9
10 import java.util.List;
11
12 import org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.GroupId;
13 import org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.GroupTypes;
14 import org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.groups.GroupBuilder;
15 import org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.groups.GroupKey;
16
17 public class GroupEntity extends AbstractSwitchEntity {
18     private static final long serialVersionUID = 1L;
19
20     private long m_lGroupId;
21     private String m_sGroupName;
22     private GroupTypes m_groupType;
23     private List<BucketInfo> m_listBucketInfo;
24
25     private transient GroupBuilder m_groupBuilder;
26
27     public GroupEntity(long lDpnId) {
28         super(lDpnId);
29     }
30
31     @Override
32     public String toString() {
33         return "GroupEntity [m_lGroupId=" + m_lGroupId + ", m_sGroupName=" + m_sGroupName + ", m_groupType="
34                 + m_groupType + ", m_listBucketInfo=" + m_listBucketInfo + ", toString()=" + super.toString() + "]";
35     }
36
37     public List<BucketInfo> getBucketInfoList() {
38         return m_listBucketInfo;
39     }
40
41     public GroupBuilder getGroupBuilder() {
42         if (m_groupBuilder == null) {
43             m_groupBuilder = new GroupBuilder();
44
45             GroupId groupId = new GroupId(getGroupId());
46             m_groupBuilder.setKey(new GroupKey(groupId));
47             m_groupBuilder.setGroupId(groupId);
48
49             m_groupBuilder.setGroupName(getGroupName());
50             m_groupBuilder.setGroupType(getGroupType());
51             m_groupBuilder.setBuckets(MDSALUtil.buildBuckets(getBucketInfoList()));
52         }
53
54         return m_groupBuilder;
55     }
56
57     public long getGroupId() {
58         return m_lGroupId;
59     }
60
61     public String getGroupName() {
62         return m_sGroupName;
63     }
64
65     public GroupTypes getGroupType() {
66         return m_groupType;
67     }
68
69     public void setBucketInfoList(List<BucketInfo> listBucketInfo) {
70         m_listBucketInfo = listBucketInfo;
71     }
72
73     public void setGroupId(long lGroupId) {
74         m_lGroupId = lGroupId;
75         if (m_groupBuilder != null) {
76             GroupId groupId = new GroupId(getGroupId());
77             m_groupBuilder.setKey(new GroupKey(groupId));
78             m_groupBuilder.setGroupId(groupId);
79         }
80     }
81
82     public void setGroupName(String sGroupName) {
83         m_sGroupName = sGroupName;
84         m_groupBuilder = null;
85     }
86
87     public void setGroupType(GroupTypes groupType) {
88         m_groupType = groupType;
89         m_groupBuilder = null;
90     }
91 }