2 * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.
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
9 package org.opendaylight.controller.forwardingrulesmanager;
11 import java.util.HashSet;
15 * PortGroup is a simple data-structure to represent any arbitrary group of
16 * ports on a Switch (that is represented using its switch-ID).
18 * PortGroup is used by PortGroupProvider application to signal a set of ports
19 * that represent a configured PortGroupConfig.
21 public class PortGroup {
22 private long matrixSwitchId;
23 private Set<Short> ports;
26 * PortGroup Constructor using Switch and Ports.
28 * @param matrixSwitchId
29 * Switch Id that represents an openflow Switch
31 * Set of short values representing openflow port-ids.
33 public PortGroup(long matrixSwitchId, Set<Short> ports) {
35 this.matrixSwitchId = matrixSwitchId;
40 * PortGroup Constructor using Switch.
42 * @param matrixSwitchId
43 * Switch-Id that represents an openflow Switch
45 public PortGroup(long matrixSwitchId) {
46 this.matrixSwitchId = matrixSwitchId;
47 this.ports = new HashSet<Short>();
51 * Returns the switchId representing the Switch that makes this PortGroup.
53 * @return long switchId
55 public long getMatrixSwitchId() {
56 return matrixSwitchId;
60 * Assigns a Switch to this PortGroup
62 * @param matrixSwitchId
63 * Switch-Id that represents an openflow Switch
65 public void setMatrixSwitchId(long matrixSwitchId) {
66 this.matrixSwitchId = matrixSwitchId;
70 * Returns the Set of Ports that makes this PortGroup.
72 * @return Set of short values representing openflow port-ids.
74 public Set<Short> getPorts() {
79 * Assigns a set of openflow ports to this PortGroup
82 * Set of short values representing openflow port-ids.
84 public void setPorts(Set<Short> ports) {
89 * Adds a port to this PortGroup
92 * Short value of a openflow port.
94 public void addPort(short port) {
99 public String toString() {
100 return "PortGroup [matrixSwitchId=" + matrixSwitchId + ", ports=" + ports + "]";