[ONOS-2449] - OVSDB -- Create the rest table of RFC7047 which contain
FlowSampleCollectorSet,FlowTable,IPFIX,Manager,Mirror.
Change-Id: I730a6a42c7bb90a6ffd8e3c4e525dabfd85b3bd0
diff --git a/ovsdb/rfc/src/main/java/org/onosproject/ovsdb/rfc/table/FlowSampleCollectorSet.java b/ovsdb/rfc/src/main/java/org/onosproject/ovsdb/rfc/table/FlowSampleCollectorSet.java
new file mode 100644
index 0000000..05a0354
--- /dev/null
+++ b/ovsdb/rfc/src/main/java/org/onosproject/ovsdb/rfc/table/FlowSampleCollectorSet.java
@@ -0,0 +1,151 @@
+/*
+ * 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);
+ }
+}
diff --git a/ovsdb/rfc/src/main/java/org/onosproject/ovsdb/rfc/table/FlowTable.java b/ovsdb/rfc/src/main/java/org/onosproject/ovsdb/rfc/table/FlowTable.java
new file mode 100644
index 0000000..ed1c217
--- /dev/null
+++ b/ovsdb/rfc/src/main/java/org/onosproject/ovsdb/rfc/table/FlowTable.java
@@ -0,0 +1,196 @@
+/*
+ * 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);
+ }
+
+}
diff --git a/ovsdb/rfc/src/main/java/org/onosproject/ovsdb/rfc/table/Ipfix.java b/ovsdb/rfc/src/main/java/org/onosproject/ovsdb/rfc/table/Ipfix.java
new file mode 100644
index 0000000..c29f2e0
--- /dev/null
+++ b/ovsdb/rfc/src/main/java/org/onosproject/ovsdb/rfc/table/Ipfix.java
@@ -0,0 +1,220 @@
+/*
+ * 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);
+ }
+}
diff --git a/ovsdb/rfc/src/main/java/org/onosproject/ovsdb/rfc/table/Manager.java b/ovsdb/rfc/src/main/java/org/onosproject/ovsdb/rfc/table/Manager.java
new file mode 100644
index 0000000..d0c2638
--- /dev/null
+++ b/ovsdb/rfc/src/main/java/org/onosproject/ovsdb/rfc/table/Manager.java
@@ -0,0 +1,243 @@
+/*
+ * 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 Manager Table.
+ */
+public class Manager extends AbstractOvsdbTableService {
+ /**
+ * Manager table column name.
+ */
+ public enum ManagerColumn {
+ TARGET("target"), ISCONNECTED("is_connected"), CONNECTIONMODE("connection_mode"),
+ EXTERNALIDS("external_ids"), STATUS("status"), INACTIVITYPROBE("inactivity_probe"),
+ OTHERCONFIG("other_config"), MAXBACKOFF("max_backoff");
+
+ private final String columnName;
+
+ private ManagerColumn(String columnName) {
+ this.columnName = columnName;
+ }
+
+ /**
+ * Returns the table column name for ManagerColumn.
+ * @return the table column name
+ */
+ public String columnName() {
+ return columnName;
+ }
+ }
+
+ /**
+ * Constructs a Manager object. Generate Manager Table Description.
+ * @param dbSchema DatabaseSchema
+ * @param row Row
+ */
+ public Manager(DatabaseSchema dbSchema, Row row) {
+ super(dbSchema, row, OvsdbTable.MANAGER, VersionNum.VERSION100);
+ }
+
+ /**
+ * Get the Column entity which column name is "target" from the Row entity
+ * of attributes.
+ * @return the Column entity which column name is "target"
+ */
+ public Column getTargetColumn() {
+ ColumnDescription columndesc = new ColumnDescription(ManagerColumn.TARGET.columnName(),
+ "getTargetColumn", VersionNum.VERSION100);
+ return (Column) super.getColumnHandler(columndesc);
+ }
+
+ /**
+ * Add a Column entity which column name is "target" to the Row entity of
+ * attributes.
+ * @param target the column data which column name is "target"
+ */
+ public void setTarget(Set<String> target) {
+ ColumnDescription columndesc = new ColumnDescription(ManagerColumn.TARGET.columnName(),
+ "setTarget",
+ VersionNum.VERSION100);
+ super.setDataHandler(columndesc, target);
+ }
+
+ /**
+ * Get the Column entity which column name is "is_connected" from the Row
+ * entity of attributes.
+ * @return the Column entity which column name is "is_connected"
+ */
+ public Column getIsConnectedColumn() {
+ ColumnDescription columndesc = new ColumnDescription(ManagerColumn.ISCONNECTED.columnName(),
+ "getIsConnectedColumn", VersionNum.VERSION110);
+ return (Column) super.getColumnHandler(columndesc);
+ }
+
+ /**
+ * Add a Column entity which column name is "is_connected" to the Row entity
+ * of attributes.
+ * @param isConnected the column data which column name is "is_connected"
+ */
+ public void setIsConnected(Boolean isConnected) {
+ ColumnDescription columndesc = new ColumnDescription(ManagerColumn.ISCONNECTED.columnName(),
+ "setIsConnected", VersionNum.VERSION110);
+ super.setDataHandler(columndesc, isConnected);
+ }
+
+ /**
+ * Get the Column entity which column name is "other_config" from the Row
+ * entity of attributes.
+ * @return the Column entity which column name is "other_config"
+ */
+ public Column getOtherConfigColumn() {
+ ColumnDescription columndesc = new ColumnDescription(ManagerColumn.OTHERCONFIG.columnName(),
+ "getOtherConfigColumn", VersionNum.VERSION680);
+ 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(ManagerColumn.OTHERCONFIG.columnName(),
+ "setOtherConfig", VersionNum.VERSION680);
+ super.setDataHandler(columndesc, otherConfig);
+ }
+
+ /**
+ * 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(ManagerColumn.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(ManagerColumn.EXTERNALIDS.columnName(),
+ "setExternalIds", VersionNum.VERSION100);
+ super.setDataHandler(columndesc, externalIds);
+ }
+
+ /**
+ * Get the Column entity which column name is "max_backoff" from the Row
+ * entity of attributes.
+ * @return the Column entity which column name is "max_backoff"
+ */
+ public Column getMaxBackoffColumn() {
+ ColumnDescription columndesc = new ColumnDescription(ManagerColumn.MAXBACKOFF.columnName(),
+ "getMaxBackoffColumn", VersionNum.VERSION100);
+ return (Column) super.getColumnHandler(columndesc);
+ }
+
+ /**
+ * Add a Column entity which column name is "max_backoff" to the Row entity
+ * of attributes.
+ * @param maxBackoff the column data which column name is "max_backoff"
+ */
+ public void setMaxBackoff(Set<Long> maxBackoff) {
+ ColumnDescription columndesc = new ColumnDescription(ManagerColumn.MAXBACKOFF.columnName(),
+ "setMaxBackoff", VersionNum.VERSION100);
+ super.setDataHandler(columndesc, maxBackoff);
+ }
+
+ /**
+ * Get the Column entity which column name is "status" from the Row entity
+ * of attributes.
+ * @return the Column entity which column name is "status"
+ */
+ public Column getStatusColumn() {
+ ColumnDescription columndesc = new ColumnDescription(ManagerColumn.STATUS.columnName(),
+ "getStatusColumn", VersionNum.VERSION110);
+ return (Column) super.getColumnHandler(columndesc);
+ }
+
+ /**
+ * Add a Column entity which column name is "status" to the Row entity of
+ * attributes.
+ * @param status the column data which column name is "status"
+ */
+ public void setStatus(Map<String, String> status) {
+ ColumnDescription columndesc = new ColumnDescription(ManagerColumn.STATUS.columnName(),
+ "setStatus",
+ VersionNum.VERSION110);
+ super.setDataHandler(columndesc, status);
+ }
+
+ /**
+ * Get the Column entity which column name is "inactivity_probe" from the
+ * Row entity of attributes.
+ * @return the Column entity which column name is "inactivity_probe"
+ */
+ public Column getInactivityProbeColumn() {
+ ColumnDescription columndesc = new ColumnDescription(ManagerColumn.INACTIVITYPROBE.columnName(),
+ "getInactivityProbeColumn",
+ VersionNum.VERSION100);
+ return (Column) super.getColumnHandler(columndesc);
+ }
+
+ /**
+ * Add a Column entity which column name is "inactivity_probe" to the Row
+ * entity of attributes.
+ * @param inactivityProbe the column data which column name is
+ * "inactivity_probe"
+ */
+ public void setInactivityProbe(Set<Long> inactivityProbe) {
+ ColumnDescription columndesc = new ColumnDescription(ManagerColumn.INACTIVITYPROBE.columnName(),
+ "setInactivityProbe", VersionNum.VERSION100);
+ super.setDataHandler(columndesc, inactivityProbe);
+ }
+
+ /**
+ * Get the Column entity which column name is "connection_mode" from the Row
+ * entity of attributes.
+ * @return the Column entity which column name is "connection_mode"
+ */
+ public Column getConnectionModeColumn() {
+ ColumnDescription columndesc = new ColumnDescription(ManagerColumn.CONNECTIONMODE.columnName(),
+ "getConnectionModeColumn", VersionNum.VERSION100);
+ return (Column) super.getColumnHandler(columndesc);
+ }
+
+ /**
+ * Add a Column entity which column name is "connection_mode" to the Row
+ * entity of attributes.
+ * @param connectionMode the column data which column name is
+ * "connection_mode"
+ */
+ public void setConnectionMode(Set<String> connectionMode) {
+ ColumnDescription columndesc = new ColumnDescription(ManagerColumn.CONNECTIONMODE.columnName(),
+ "setConnectionMode", VersionNum.VERSION100);
+ super.setDataHandler(columndesc, connectionMode);
+ }
+}
diff --git a/ovsdb/rfc/src/main/java/org/onosproject/ovsdb/rfc/table/Mirror.java b/ovsdb/rfc/src/main/java/org/onosproject/ovsdb/rfc/table/Mirror.java
new file mode 100644
index 0000000..ec022fe
--- /dev/null
+++ b/ovsdb/rfc/src/main/java/org/onosproject/ovsdb/rfc/table/Mirror.java
@@ -0,0 +1,277 @@
+/*
+ * 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.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 Mirror Table.
+ */
+public class Mirror extends AbstractOvsdbTableService {
+ /**
+ * Mirror table column name.
+ */
+ public enum MirrorColumn {
+ NAME("name"), SELECTSRCPORT("select_src_port"), SELECTDSTPORT("select_dst_port"),
+ SELECTVLAN("select_vlan"), OUTPUTPORT("output_port"), EXTERNALIDS("external_ids"),
+ OUTPUTVLAN("output_vlan"), STATISTICS("statistics"), SELECTALL("select_all");
+
+ private final String columnName;
+
+ private MirrorColumn(String columnName) {
+ this.columnName = columnName;
+ }
+
+ /**
+ * Returns the table column name for MirrorColumn.
+ * @return the table column name
+ */
+ public String columnName() {
+ return columnName;
+ }
+ }
+
+ /**
+ * Constructs a Mirror object. Generate Mirror Table Description.
+ * @param dbSchema DatabaseSchema
+ * @param row Row
+ */
+ public Mirror(DatabaseSchema dbSchema, Row row) {
+ super(dbSchema, row, OvsdbTable.MIRROR, VersionNum.VERSION100);
+ }
+
+ /**
+ * 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(MirrorColumn.NAME.columnName(),
+ "getNameColumn",
+ VersionNum.VERSION100);
+ 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(MirrorColumn.NAME.columnName(),
+ "setName",
+ VersionNum.VERSION100);
+ super.setDataHandler(columndesc, name);
+ }
+
+ /**
+ * Get the column data which column name is "name" from the Row entity of
+ * attributes.
+ * @return the column data which column name is "name"
+ */
+ public Set<String> getName() {
+ ColumnDescription columndesc = new ColumnDescription(MirrorColumn.NAME.columnName(),
+ "getName",
+ VersionNum.VERSION100);
+ return (Set<String>) super.getDataHandler(columndesc);
+ }
+
+ /**
+ * Get the Column entity which column name is "select_src_port" from the Row
+ * entity of attributes.
+ * @return the Column entity which column name is "select_src_port"
+ */
+ public Column getSelectSrcPortColumn() {
+ ColumnDescription columndesc = new ColumnDescription(MirrorColumn.SELECTSRCPORT.columnName(),
+ "getSelectSrcPortColumn", VersionNum.VERSION100);
+ return (Column) super.getColumnHandler(columndesc);
+ }
+
+ /**
+ * Add a Column entity which column name is "select_src_port" to the Row
+ * entity of attributes.
+ * @param selectSrcPort the column data which column name is
+ * "select_src_port"
+ */
+ public void setSelectSrcPort(Set<UUID> selectSrcPort) {
+ ColumnDescription columndesc = new ColumnDescription(MirrorColumn.SELECTSRCPORT.columnName(),
+ "setSelectSrcPort", VersionNum.VERSION100);
+ super.setDataHandler(columndesc, selectSrcPort);
+ }
+
+ /**
+ * Get the Column entity which column name is "select_dst_port" from the Row
+ * entity of attributes.
+ * @return the Column entity which column name is "select_dst_port"
+ */
+ public Column getSelectDstPortColumn() {
+ ColumnDescription columndesc = new ColumnDescription(MirrorColumn.SELECTDSTPORT.columnName(),
+ "getSelectDstPortColumn", VersionNum.VERSION100);
+ return (Column) super.getColumnHandler(columndesc);
+ }
+
+ /**
+ * Add a Column entity which column name is "select_dst_port" to the Row
+ * entity of attributes.
+ * @param selectDstPrt the column data which column name is
+ * "select_dst_port"
+ */
+ public void setSelectDstPort(Set<UUID> selectDstPrt) {
+ ColumnDescription columndesc = new ColumnDescription(MirrorColumn.SELECTDSTPORT.columnName(),
+ "setSelectDstPort", VersionNum.VERSION100);
+ super.setDataHandler(columndesc, selectDstPrt);
+ }
+
+ /**
+ * Get the Column entity which column name is "select_vlan" from the Row
+ * entity of attributes.
+ * @return the Column entity which column name is "select_vlan"
+ */
+ public Column getSelectVlanColumn() {
+ ColumnDescription columndesc = new ColumnDescription(MirrorColumn.SELECTVLAN.columnName(),
+ "getSelectVlanColumn", VersionNum.VERSION100);
+ return (Column) super.getColumnHandler(columndesc);
+ }
+
+ /**
+ * Add a Column entity which column name is "select_vlan" to the Row entity
+ * of attributes.
+ * @param selectVlan the column data which column name is "select_vlan"
+ */
+ public void setSelectVlan(Set<Long> selectVlan) {
+ ColumnDescription columndesc = new ColumnDescription(MirrorColumn.SELECTVLAN.columnName(),
+ "setSelectVlan", VersionNum.VERSION100);
+ super.setDataHandler(columndesc, selectVlan);
+ }
+
+ /**
+ * Get the Column entity which column name is "output_port" from the Row
+ * entity of attributes.
+ * @return the Column entity which column name is "output_port"
+ */
+ public Column getOutputPortColumn() {
+ ColumnDescription columndesc = new ColumnDescription(MirrorColumn.OUTPUTPORT.columnName(),
+ "getOutputPortColumn", VersionNum.VERSION100);
+ return (Column) super.getColumnHandler(columndesc);
+ }
+
+ /**
+ * Add a Column entity which column name is "output_port" to the Row entity
+ * of attributes.
+ * @param outputPort the column data which column name is "output_port"
+ */
+ public void setOutputPort(Set<UUID> outputPort) {
+ ColumnDescription columndesc = new ColumnDescription(MirrorColumn.OUTPUTPORT.columnName(),
+ "setOutputPort", VersionNum.VERSION100);
+ super.setDataHandler(columndesc, outputPort);
+ }
+
+ /**
+ * Get the Column entity which column name is "output_vlan" from the Row
+ * entity of attributes.
+ * @return the Column entity which column name is "output_vlan"
+ */
+ public Column getOutputVlanColumn() {
+ ColumnDescription columndesc = new ColumnDescription(MirrorColumn.OUTPUTVLAN.columnName(),
+ "getOutputVlanColumn", VersionNum.VERSION100);
+ return (Column) super.getColumnHandler(columndesc);
+ }
+
+ /**
+ * Add a Column entity which column name is "output_vlan" to the Row entity
+ * of attributes.
+ * @param outputVlan the column data which column name is "output_vlan"
+ */
+ public void setOutputVlan(Set<Long> outputVlan) {
+ ColumnDescription columndesc = new ColumnDescription(MirrorColumn.OUTPUTVLAN.columnName(),
+ "setOutputVlan", VersionNum.VERSION100);
+ super.setDataHandler(columndesc, outputVlan);
+ }
+
+ /**
+ * Get the Column entity which column name is "statistics" from the Row
+ * entity of attributes.
+ * @return the Column entity which column name is "statistics"
+ */
+ public Column getStatisticsColumn() {
+ ColumnDescription columndesc = new ColumnDescription(MirrorColumn.STATISTICS.columnName(),
+ "getStatisticsColumn", VersionNum.VERSION640);
+ return (Column) super.getColumnHandler(columndesc);
+ }
+
+ /**
+ * Add a Column entity which column name is "statistics" to the Row entity
+ * of attributes.
+ * @param statistics the column data which column name is "statistics"
+ */
+ public void setStatistics(Map<String, Long> statistics) {
+ ColumnDescription columndesc = new ColumnDescription(MirrorColumn.STATISTICS.columnName(),
+ "setStatistics", VersionNum.VERSION640);
+ super.setDataHandler(columndesc, statistics);
+ }
+
+ /**
+ * 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(MirrorColumn.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(MirrorColumn.EXTERNALIDS.columnName(),
+ "setExternalIds", VersionNum.VERSION100);
+ super.setDataHandler(columndesc, externalIds);
+ }
+
+ /**
+ * Get the Column entity which column name is "select_all" from the Row
+ * entity of attributes.
+ * @return the Column entity which column name is "select_all"
+ */
+ public Column getSelectAllColumn() {
+ ColumnDescription columndesc = new ColumnDescription(MirrorColumn.SELECTALL.columnName(),
+ "getSelectAllColumn", VersionNum.VERSION620);
+ return (Column) super.getColumnHandler(columndesc);
+ }
+
+ /**
+ * Add a Column entity which column name is "select_all" to the Row entity
+ * of attributes.
+ * @param selectAll the column data which column name is "select_all"
+ */
+ public void setSelectAll(Boolean selectAll) {
+ ColumnDescription columndesc = new ColumnDescription(MirrorColumn.SELECTALL.columnName(),
+ "setSelectAll", VersionNum.VERSION620);
+ super.setDataHandler(columndesc, selectAll);
+ }
+}