restructure and base modules for different features
[vpnservice.git] / mdsalutil / mdsalutil-api / src / main / java / org / opendaylight / vpnservice / mdsalutil / BucketInfo.java
1 /*
2  * Copyright (c) 2013 Ericsson AB.  All rights reserved.
3  *
4  */
5 package org.opendaylight.vpnservice.mdsalutil;
6
7 import java.io.Serializable;
8 import java.util.List;
9
10 import org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action;
11
12 public class BucketInfo implements Serializable {
13     private static final long serialVersionUID = 1L;
14     private final List<ActionInfo> m_listActionInfo;
15     private Integer weight = 0;
16     private Long watchPort = 0xffffffffL;
17     private Long watchGroup = 0xffffffffL;
18
19     public BucketInfo(List<ActionInfo> listActions) {
20         m_listActionInfo = listActions;
21     }
22
23     public BucketInfo(List<ActionInfo> m_listActionInfo, Integer weight, Long watchPort, Long watchGroup) {
24         super();
25         this.m_listActionInfo = m_listActionInfo;
26         this.weight = weight;
27         this.watchPort = watchPort;
28         this.watchGroup = watchGroup;
29     }
30
31     public void buildAndAddActions(List<Action> listActionOut) {
32         int key = 0;
33         if (m_listActionInfo != null) {
34             for (ActionInfo actionInfo : m_listActionInfo) {
35                 actionInfo.setActionKey(key++);
36                 listActionOut.add(actionInfo.buildAction());
37             }
38         }
39     }
40
41     public void setWeight(Integer bucketWeight) {
42         weight = bucketWeight;
43     }
44
45     public Integer getWeight() {
46         return weight;
47     }
48
49     public List<ActionInfo> getActionInfoList() {
50         return m_listActionInfo;
51     }
52
53     public Long getWatchPort() {
54         return watchPort;
55     }
56
57     public void setWatchPort(Long watchPort) {
58         this.watchPort = watchPort;
59     }
60
61     public Long getWatchGroup() {
62         return watchGroup;
63     }
64
65     public void setWatchGroup(Long watchGroup) {
66         this.watchGroup = watchGroup;
67     }
68 }