| /* |
| * Copyright 2015-present Open Networking Laboratory |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); |
| * you may not use this file except in compliance with the License. |
| * You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| package org.onosproject.ovsdb.rfc.table; |
| |
| import java.util.Map; |
| import java.util.Set; |
| |
| import org.onosproject.ovsdb.rfc.notation.Column; |
| import org.onosproject.ovsdb.rfc.notation.Row; |
| import org.onosproject.ovsdb.rfc.notation.Uuid; |
| import org.onosproject.ovsdb.rfc.schema.DatabaseSchema; |
| import org.onosproject.ovsdb.rfc.tableservice.AbstractOvsdbTableService; |
| import org.onosproject.ovsdb.rfc.tableservice.ColumnDescription; |
| |
| /** |
| * This class provides operations of Qos Table. |
| */ |
| public class Qos extends AbstractOvsdbTableService { |
| /** |
| * Qos table column name. |
| */ |
| public enum QosColumn { |
| QUEUES("queues"), TYPE("type"), OTHERCONFIG("other_config"), EXTERNALIDS("external_ids"); |
| |
| private final String columnName; |
| |
| private QosColumn(String columnName) { |
| this.columnName = columnName; |
| } |
| |
| /** |
| * Returns the table column name for QosColumn. |
| * @return the table column name |
| */ |
| public String columnName() { |
| return columnName; |
| } |
| } |
| |
| /** |
| * Constructs a Qos object. Generate Qos Table Description. |
| * @param dbSchema DatabaseSchema |
| * @param row Row |
| */ |
| public Qos(DatabaseSchema dbSchema, Row row) { |
| super(dbSchema, row, OvsdbTable.QOS, VersionNum.VERSION100); |
| } |
| |
| /** |
| * Get the Column entity which column name is "queues" from the Row entity |
| * of attributes. |
| * @return the Column entity |
| */ |
| public Column getQueuesColumn() { |
| ColumnDescription columndesc = new ColumnDescription(QosColumn.QUEUES.columnName(), |
| "getQueuesColumn", VersionNum.VERSION100); |
| return (Column) super.getColumnHandler(columndesc); |
| } |
| |
| /** |
| * Add a Column entity which column name is "queues" to the Row entity of |
| * attributes. |
| * @param queues the column data which column name is "queues" |
| */ |
| public void setQueues(Map<Long, Uuid> queues) { |
| ColumnDescription columndesc = new ColumnDescription(QosColumn.QUEUES.columnName(), "setQueues", |
| VersionNum.VERSION100); |
| super.setDataHandler(columndesc, queues); |
| } |
| |
| /** |
| * Get the Column entity which column name is "type" from the Row entity of |
| * attributes. |
| * @return the Column entity |
| */ |
| public Column getTypeColumn() { |
| ColumnDescription columndesc = new ColumnDescription(QosColumn.TYPE.columnName(), "getTypeColumn", |
| VersionNum.VERSION100); |
| return (Column) super.getColumnHandler(columndesc); |
| } |
| |
| /** |
| * Add a Column entity which column name is "type" to the Row entity of |
| * attributes. |
| * @param type the column data which column name is "type" |
| */ |
| public void setType(Set<String> type) { |
| ColumnDescription columndesc = new ColumnDescription(QosColumn.TYPE.columnName(), "setType", |
| VersionNum.VERSION100); |
| super.setDataHandler(columndesc, type); |
| } |
| |
| /** |
| * Get the Column entity which column name is "other_config" from the Row |
| * entity of attributes. |
| * @return the Column entity |
| */ |
| public Column getOtherConfigColumn() { |
| ColumnDescription columndesc = new ColumnDescription(QosColumn.OTHERCONFIG.columnName(), |
| "getOtherConfigColumn", VersionNum.VERSION100); |
| return (Column) super.getColumnHandler(columndesc); |
| } |
| |
| /** |
| * Add a Column entity which column name is "other_config" to the Row entity |
| * of attributes. |
| * @param otherConfig the column data which column name is "other_config" |
| */ |
| public void setOtherConfig(Map<String, String> otherConfig) { |
| ColumnDescription columndesc = new ColumnDescription(QosColumn.OTHERCONFIG.columnName(), |
| "setOtherConfig", VersionNum.VERSION100); |
| super.setDataHandler(columndesc, otherConfig); |
| } |
| |
| /** |
| * Get the Column entity which column name is "external_ids" from the Row |
| * entity of attributes. |
| * @return the Column entity |
| */ |
| public Column getExternalIdsColumn() { |
| ColumnDescription columndesc = new ColumnDescription(QosColumn.EXTERNALIDS.columnName(), |
| "getExternalIdsColumn", VersionNum.VERSION100); |
| return (Column) super.getColumnHandler(columndesc); |
| } |
| |
| /** |
| * Add a Column entity which column name is "external_ids" to the Row entity |
| * of attributes. |
| * @param externalIds the column data which column name is "external_ids" |
| */ |
| public void setExternalIds(Map<String, String> externalIds) { |
| ColumnDescription columndesc = new ColumnDescription(QosColumn.EXTERNALIDS.columnName(), |
| "setExternalIds", VersionNum.VERSION100); |
| super.setDataHandler(columndesc, externalIds); |
| } |
| } |