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.
23 public class PortGroup {
24 private long matrixSwitchId;
25 private Set<Short> ports;
28 * PortGroup Constructor using Switch and Ports.
30 * @param matrixSwitchId
31 * Switch Id that represents an openflow Switch
33 * Set of short values representing openflow port-ids.
35 public PortGroup(long matrixSwitchId, Set<Short> ports) {
37 this.matrixSwitchId = matrixSwitchId;
42 * PortGroup Constructor using Switch.
44 * @param matrixSwitchId
45 * Switch-Id that represents an openflow Switch
47 public PortGroup(long matrixSwitchId) {
48 this.matrixSwitchId = matrixSwitchId;
49 this.ports = new HashSet<Short>();
53 * Returns the switchId representing the Switch that makes this PortGroup.
55 * @return long switchId
57 public long getMatrixSwitchId() {
58 return matrixSwitchId;
62 * Assigns a Switch to this PortGroup
64 * @param matrixSwitchId
65 * Switch-Id that represents an openflow Switch
67 public void setMatrixSwitchId(long matrixSwitchId) {
68 this.matrixSwitchId = matrixSwitchId;
72 * Returns the Set of Ports that makes this PortGroup.
74 * @return Set of short values representing openflow port-ids.
76 public Set<Short> getPorts() {
81 * Assigns a set of openflow ports to this PortGroup
84 * Set of short values representing openflow port-ids.
86 public void setPorts(Set<Short> ports) {
91 * Adds a port to this PortGroup
94 * Short value of a openflow port.
96 public void addPort(short port) {
101 public String toString() {
102 return "PortGroup [matrixSwitchId=" + matrixSwitchId + ", ports="