YuanyouZhang
Committed by Gerrit Code Review

[ONOS-2449] - OVSDB -- Create the rest table of RFC7047 which contain

FlowSampleCollectorSet,FlowTable,IPFIX,Manager,Mirror.

Change-Id: I730a6a42c7bb90a6ffd8e3c4e525dabfd85b3bd0
/*
* Copyright 2015 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 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 FlowSampleCollectorSet Table.
*/
public class FlowSampleCollectorSet extends AbstractOvsdbTableService {
/**
* FlowSampleCollectorSet table column name.
*/
public enum FlowSampleCollectorSetColumn {
ID("id"), BRIDGE("bridge"), IPFIX("ipfix"), EXTERNALIDS("external_ids");
private final String columnName;
private FlowSampleCollectorSetColumn(String columnName) {
this.columnName = columnName;
}
/**
* Returns the table column name for FlowSampleCollectorSetColumn.
* @return the table column name
*/
public String columnName() {
return columnName;
}
}
/**
* Constructs a FlowSampleCollectorSet object. Generate
* FlowSampleCollectorSet Table Description.
* @param dbSchema DatabaseSchema
* @param row Row
*/
public FlowSampleCollectorSet(DatabaseSchema dbSchema, Row row) {
super(dbSchema, row, OvsdbTable.FLOWSAMPLECOLLECTORSET, VersionNum.VERSION710);
}
/**
* Get the Column entity which column name is "id" from the Row entity of
* attributes.
* @return the Column entity which column name is "id"
*/
public Column getIdColumn() {
ColumnDescription columndesc = new ColumnDescription(FlowSampleCollectorSetColumn.ID.columnName(),
"getIdColumn", VersionNum.VERSION710);
return (Column) super.getColumnHandler(columndesc);
}
/**
* Add a Column entity which column name is "id" to the Row entity of
* attributes.
* @param id the column data which column name is "id"
*/
public void setId(Long id) {
ColumnDescription columndesc = new ColumnDescription(FlowSampleCollectorSetColumn.ID.columnName(),
"setId", VersionNum.VERSION710);
super.setDataHandler(columndesc, id);
}
/**
* Get the Column entity which column name is "bridge" from the Row entity
* of attributes.
* @return the Column entity which column name is "bridge"
*/
public Column getBridgeColumn() {
ColumnDescription columndesc = new ColumnDescription(FlowSampleCollectorSetColumn.BRIDGE.columnName(),
"getBridgeColumn", VersionNum.VERSION710);
return (Column) super.getColumnHandler(columndesc);
}
/**
* Add a Column entity which column name is "bridge" to the Row entity of
* attributes.
* @param bridge the column data which column name is "bridge"
*/
public void setBridge(UUID bridge) {
ColumnDescription columndesc = new ColumnDescription(FlowSampleCollectorSetColumn.BRIDGE.columnName(),
"setBridge", VersionNum.VERSION710);
super.setDataHandler(columndesc, bridge);
}
/**
* Get the Column entity which column name is "ipfix" from the Row entity of
* attributes.
* @return the Column entity which column name is "ipfix"
*/
public Column getIpfixColumn() {
ColumnDescription columndesc = new ColumnDescription(FlowSampleCollectorSetColumn.IPFIX.columnName(),
"getIpfixColumn", VersionNum.VERSION710);
return (Column) super.getColumnHandler(columndesc);
}
/**
* Add a Column entity which column name is "ipfix" to the Row entity of
* attributes.
* @param ipfix the column data which column name is "ipfix"
*/
public void setIpfix(UUID ipfix) {
ColumnDescription columndesc = new ColumnDescription(FlowSampleCollectorSetColumn.IPFIX.columnName(),
"setIpfix", VersionNum.VERSION710);
super.setDataHandler(columndesc, ipfix);
}
/**
* Get the Column entity which column name is "external_ids" from the Row
* entity of attributes.
* @return the Column entity which column name is "external_ids"
*/
public Column getExternalIdsColumn() {
ColumnDescription columndesc = new ColumnDescription(FlowSampleCollectorSetColumn.EXTERNALIDS
.columnName(),
"getExternalIdsColumn", VersionNum.VERSION710);
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(FlowSampleCollectorSetColumn.EXTERNALIDS
.columnName(),
"setExternalIds", VersionNum.VERSION710);
super.setDataHandler(columndesc, externalIds);
}
}
/*
* Copyright 2015 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.schema.DatabaseSchema;
import org.onosproject.ovsdb.rfc.tableservice.AbstractOvsdbTableService;
import org.onosproject.ovsdb.rfc.tableservice.ColumnDescription;
/**
* This class provides operations of FlowTable Table.
*/
public class FlowTable extends AbstractOvsdbTableService {
/**
* FlowTable table column name.
*/
public enum FlowTableColumn {
FLOWLIMIT("flow_limit"), OVERFLOWPOLICY("overflow_policy"), GROUPS("groups"), NAME("name"),
PREFIXES("prefixes"), EXTERNALIDS("external_ids");
private final String columnName;
private FlowTableColumn(String columnName) {
this.columnName = columnName;
}
/**
* Returns the table column name for FlowTableColumn.
* @return the table column name
*/
public String columnName() {
return columnName;
}
}
/**
* Constructs a FlowTable object. Generate FlowTable Table Description.
* @param dbSchema DatabaseSchema
* @param row Row
*/
public FlowTable(DatabaseSchema dbSchema, Row row) {
super(dbSchema, row, OvsdbTable.FLWTABLE, VersionNum.VERSION650);
}
/**
* Get the Column entity which column name is "flow_limit" from the Row
* entity of attributes.
* @return the Column entity which column name is "flow_limit"
*/
public Column getFlowLimitColumn() {
ColumnDescription columndesc = new ColumnDescription(FlowTableColumn.FLOWLIMIT.columnName(),
"getFlowLimitColumn", VersionNum.VERSION650);
return (Column) super.getColumnHandler(columndesc);
}
/**
* Add a Column entity which column name is "flow_limit" to the Row entity
* of attributes.
* @param flowLimit the column data which column name is "flow_limit"
*/
public void setFlowLimit(Set<Long> flowLimit) {
ColumnDescription columndesc = new ColumnDescription(FlowTableColumn.FLOWLIMIT.columnName(),
"setFlowLimit", VersionNum.VERSION650);
super.setDataHandler(columndesc, flowLimit);
}
/**
* Get the Column entity which column name is "overflow_policy" from the Row
* entity of attributes.
* @return the Column entity which column name is "overflow_policy"
*/
public Column getOverflowPolicyColumn() {
ColumnDescription columndesc = new ColumnDescription(FlowTableColumn.OVERFLOWPOLICY.columnName(),
"getOverflowPolicyColumn", VersionNum.VERSION650);
return (Column) super.getColumnHandler(columndesc);
}
/**
* Add a Column entity which column name is "overflow_policy" to the Row
* entity of attributes.
* @param overflowPolicy the column data which column name is
* "overflow_policy"
*/
public void setOverflowPolicy(Set<String> overflowPolicy) {
ColumnDescription columndesc = new ColumnDescription(FlowTableColumn.OVERFLOWPOLICY.columnName(),
"setOverflowPolicy", VersionNum.VERSION650);
super.setDataHandler(columndesc, overflowPolicy);
}
/**
* Get the Column entity which column name is "groups" from the Row entity
* of attributes.
* @return the Column entity which column name is "groups"
*/
public Column getGroupsColumn() {
ColumnDescription columndesc = new ColumnDescription(FlowTableColumn.GROUPS.columnName(),
"getGroupsColumn", VersionNum.VERSION650);
return (Column) super.getColumnHandler(columndesc);
}
/**
* Add a Column entity which column name is "groups" to the Row entity of
* attributes.
* @param groups the column data which column name is "groups"
*/
public void setGroups(Set<String> groups) {
ColumnDescription columndesc = new ColumnDescription(FlowTableColumn.GROUPS.columnName(),
"setGroups", VersionNum.VERSION650);
super.setDataHandler(columndesc, groups);
}
/**
* Get the Column entity which column name is "name" from the Row entity of
* attributes.
* @return the Column entity which column name is "name"
*/
public Column getNameColumn() {
ColumnDescription columndesc = new ColumnDescription(FlowTableColumn.NAME.columnName(),
"getNameColumn", VersionNum.VERSION650);
return (Column) super.getColumnHandler(columndesc);
}
/**
* Add a Column entity which column name is "name" to the Row entity of
* attributes.
* @param name the column data which column name is "name"
*/
public void setName(Set<String> name) {
ColumnDescription columndesc = new ColumnDescription(FlowTableColumn.NAME.columnName(),
"setName",
VersionNum.VERSION650);
super.setDataHandler(columndesc, name);
}
/**
* Get the Column entity which column name is "prefixes" from the Row entity
* of attributes.
* @return the Column entity which column name is "prefixes"
*/
public Column getPrefixesColumn() {
ColumnDescription columndesc = new ColumnDescription(FlowTableColumn.PREFIXES.columnName(),
"getPrefixesColumn", VersionNum.VERSION740);
return (Column) super.getColumnHandler(columndesc);
}
/**
* Add a Column entity which column name is "prefixes" to the Row entity of
* attributes.
* @param prefixes the column data which column name is "prefixes"
*/
public void setPrefixes(Set<String> prefixes) {
ColumnDescription columndesc = new ColumnDescription(FlowTableColumn.PREFIXES.columnName(),
"setPrefixes", VersionNum.VERSION740);
super.setDataHandler(columndesc, prefixes);
}
/**
* Get the Column entity which column name is "external_ids" from the Row
* entity of attributes.
* @return the Column entity which column name is "external_ids"
*/
public Column getExternalIdsColumn() {
ColumnDescription columndesc = new ColumnDescription(FlowTableColumn.EXTERNALIDS.columnName(),
"getExternalIdsColumn", VersionNum.VERSION750);
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(FlowTableColumn.EXTERNALIDS.columnName(),
"setExternalIds", VersionNum.VERSION750);
super.setDataHandler(columndesc, externalIds);
}
}
/*
* Copyright 2015 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.schema.DatabaseSchema;
import org.onosproject.ovsdb.rfc.tableservice.AbstractOvsdbTableService;
import org.onosproject.ovsdb.rfc.tableservice.ColumnDescription;
/**
* This class provides operations of Ipfix Table.
*/
public class Ipfix extends AbstractOvsdbTableService {
/**
* Ipfix table column name.
*/
public enum IpfixColumn {
TARGETS("targets"), SAMPLING("sampling"), OBSDOMAINID("obs_domain_id"), OBSPOINTID("obs_point_id"),
CACHEACTIVETIMEOUT("cache_active_timeout"), EXTERNALIDS("external_ids"),
CACHEMAXFLOWS("cache_max_flows");
private final String columnName;
private IpfixColumn(String columnName) {
this.columnName = columnName;
}
/**
* Returns the table column name for IpfixColumn.
* @return the table column name
*/
public String columnName() {
return columnName;
}
}
/**
* Constructs a Ipfix object. Generate Ipfix Table Description.
* @param dbSchema DatabaseSchema
* @param row Row
*/
public Ipfix(DatabaseSchema dbSchema, Row row) {
super(dbSchema, row, OvsdbTable.IPFIX, VersionNum.VERSION710);
}
/**
* Get the Column entity which column name is "targets" from the Row entity
* of attributes.
* @return the Column entity which column name is "targets"
*/
public Column getTargetsColumn() {
ColumnDescription columndesc = new ColumnDescription(IpfixColumn.TARGETS.columnName(),
"getTargetsColumn", VersionNum.VERSION710);
return (Column) super.getColumnHandler(columndesc);
}
/**
* Add a Column entity which column name is "targets" to the Row entity of
* attributes.
* @param targets the column data which column name is "targets"
*/
public void setTargets(Set<String> targets) {
ColumnDescription columndesc = new ColumnDescription(IpfixColumn.TARGETS.columnName(),
"setTargets",
VersionNum.VERSION710);
super.setDataHandler(columndesc, targets);
}
/**
* Get the Column entity which column name is "sampling" from the Row entity
* of attributes.
* @return the Column entity which column name is "sampling"
*/
public Column getSamplingColumn() {
ColumnDescription columndesc = new ColumnDescription(IpfixColumn.SAMPLING.columnName(),
"getSamplingColumn", VersionNum.VERSION710);
return (Column) super.getColumnHandler(columndesc);
}
/**
* Add a Column entity which column name is "sampling" to the Row entity of
* attributes.
* @param sampling the column data which column name is "sampling"
*/
public void setSampling(Set<Long> sampling) {
ColumnDescription columndesc = new ColumnDescription(IpfixColumn.SAMPLING.columnName(),
"setSampling", VersionNum.VERSION710);
super.setDataHandler(columndesc, sampling);
}
/**
* Get the Column entity which column name is "obs_domain_id" from the Row
* entity of attributes.
* @return the Column entity which column name is "obs_domain_id"
*/
public Column getObsDomainIdColumn() {
ColumnDescription columndesc = new ColumnDescription(IpfixColumn.OBSDOMAINID.columnName(),
"getObsDomainIdColumn", VersionNum.VERSION710);
return (Column) super.getColumnHandler(columndesc);
}
/**
* Add a Column entity which column name is "obs_domain_id" to the Row
* entity of attributes.
* @param obsdomainid the column data which column name is "obs_domain_id"
*/
public void setObsDomainId(Set<Long> obsdomainid) {
ColumnDescription columndesc = new ColumnDescription(IpfixColumn.OBSDOMAINID.columnName(),
"setObsDomainId", VersionNum.VERSION710);
super.setDataHandler(columndesc, obsdomainid);
}
/**
* Get the Column entity which column name is "obs_point_id" from the Row
* entity of attributes.
* @return the Column entity which column name is "obs_point_id"
*/
public Column getObsPointIdColumn() {
ColumnDescription columndesc = new ColumnDescription(IpfixColumn.OBSPOINTID.columnName(),
"getObsPointIdColumn", VersionNum.VERSION710);
return (Column) super.getColumnHandler(columndesc);
}
/**
* Add a Column entity which column name is "obs_point_id" to the Row entity
* of attributes.
* @param obsPointId the column data which column name is "obs_point_id"
*/
public void setObsPointId(Set<Long> obsPointId) {
ColumnDescription columndesc = new ColumnDescription(IpfixColumn.OBSPOINTID.columnName(),
"setObsPointId", VersionNum.VERSION710);
super.setDataHandler(columndesc, obsPointId);
}
/**
* Get the Column entity which column name is "cache_active_timeout" from
* the Row entity of attributes.
* @return the Column entity which column name is "cache_active_timeout"
*/
public Column getCacheActiveTimeoutColumn() {
ColumnDescription columndesc = new ColumnDescription(IpfixColumn.CACHEACTIVETIMEOUT.columnName(),
"getCacheActiveTimeoutColumn",
VersionNum.VERSION730);
return (Column) super.getColumnHandler(columndesc);
}
/**
* Add a Column entity which column name is "cache_active_timeout" to the
* Row entity of attributes.
* @param cacheActiveTimeout the column data which column name is
* "cache_active_timeout"
*/
public void setCacheActiveTimeout(Set<Long> cacheActiveTimeout) {
ColumnDescription columndesc = new ColumnDescription(IpfixColumn.CACHEACTIVETIMEOUT.columnName(),
"setCacheActiveTimeout", VersionNum.VERSION730);
super.setDataHandler(columndesc, cacheActiveTimeout);
}
/**
* Get the Column entity which column name is "cache_max_flows" from the Row
* entity of attributes.
* @return the Column entity which column name is "cache_max_flows"
*/
public Column getCacheMaxFlowsColumn() {
ColumnDescription columndesc = new ColumnDescription(IpfixColumn.CACHEMAXFLOWS.columnName(),
"getCacheMaxFlowsColumn", VersionNum.VERSION730);
return (Column) super.getColumnHandler(columndesc);
}
/**
* Add a Column entity which column name is "cache_max_flows" to the Row
* entity of attributes.
* @param cacheMaxFlows the column data which column name is
* "cache_max_flows"
*/
public void setCacheMaxFlows(Set<Long> cacheMaxFlows) {
ColumnDescription columndesc = new ColumnDescription(IpfixColumn.CACHEMAXFLOWS.columnName(),
"setCacheMaxFlows", VersionNum.VERSION730);
super.setDataHandler(columndesc, cacheMaxFlows);
}
/**
* Get the Column entity which column name is "external_ids" from the Row
* entity of attributes.
* @return the Column entity which column name is "external_ids"
*/
public Column getExternalIdsColumn() {
ColumnDescription columndesc = new ColumnDescription(IpfixColumn.EXTERNALIDS.columnName(),
"getExternalIdsColumn", VersionNum.VERSION710);
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(IpfixColumn.EXTERNALIDS.columnName(),
"setExternalIds", VersionNum.VERSION710);
super.setDataHandler(columndesc, externalIds);
}
}