Skip to content

Commit d1582af

Browse files
authored
[Improve][Core] Refactor common options of column/row (#7911)
1 parent a6954ed commit d1582af

File tree

11 files changed

+25
-9
lines changed

11 files changed

+25
-9
lines changed
File renamed without changes.
File renamed without changes.

seatunnel-common/src/main/java/org/apache/seatunnel/common/constants/CommonOptions.java seatunnel-api/src/main/java/org/apache/seatunnel/api/table/type/CommonOptions.java

+14-1
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,27 @@
1515
* limitations under the License.
1616
*/
1717

18-
package org.apache.seatunnel.common.constants;
18+
package org.apache.seatunnel.api.table.type;
19+
20+
import org.apache.seatunnel.api.table.catalog.Column;
1921

2022
import lombok.Getter;
2123

24+
/**
25+
* Common option keys of SeaTunnel {@link Column#getOptions()} / {@link SeaTunnelRow#getOptions()}.
26+
* Used to store some extra information of the column value.
27+
*/
2228
@Getter
2329
public enum CommonOptions {
30+
/**
31+
* The key of {@link Column#getOptions()} to specify the column value is a json format string.
32+
*/
2433
JSON("Json"),
34+
/** The key of {@link Column#getOptions()} to specify the column value is a metadata field. */
2535
METADATA("Metadata"),
36+
/**
37+
* The key of {@link SeaTunnelRow#getOptions()} to store the partition value of the row value.
38+
*/
2639
PARTITION("Partition"),
2740
;
2841

seatunnel-api/src/main/java/org/apache/seatunnel/api/table/type/SeaTunnelRow.java

+4-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ public final class SeaTunnelRow implements Serializable {
3636

3737
private volatile int size;
3838

39-
private Map<String, Object> options = new HashMap<>();
39+
private Map<String, Object> options;
4040

4141
public SeaTunnelRow(int arity) {
4242
this.fields = new Object[arity];
@@ -75,6 +75,9 @@ public RowKind getRowKind() {
7575
}
7676

7777
public Map<String, Object> getOptions() {
78+
if (options == null) {
79+
options = new HashMap<>();
80+
}
7881
return options;
7982
}
8083

seatunnel-connectors-v2/connector-milvus/src/main/java/org/apache/seatunnel/connectors/seatunnel/milvus/catalog/MilvusCatalog.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
import org.apache.seatunnel.api.table.catalog.exception.DatabaseNotExistException;
3333
import org.apache.seatunnel.api.table.catalog.exception.TableAlreadyExistException;
3434
import org.apache.seatunnel.api.table.catalog.exception.TableNotExistException;
35-
import org.apache.seatunnel.common.constants.CommonOptions;
35+
import org.apache.seatunnel.api.table.type.CommonOptions;
3636
import org.apache.seatunnel.connectors.seatunnel.milvus.config.MilvusSinkConfig;
3737
import org.apache.seatunnel.connectors.seatunnel.milvus.exception.MilvusConnectionErrorCode;
3838
import org.apache.seatunnel.connectors.seatunnel.milvus.exception.MilvusConnectorException;

seatunnel-connectors-v2/connector-milvus/src/main/java/org/apache/seatunnel/connectors/seatunnel/milvus/sink/MilvusBufferBatchWriter.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@
2020
import org.apache.seatunnel.api.configuration.ReadonlyConfig;
2121
import org.apache.seatunnel.api.table.catalog.CatalogTable;
2222
import org.apache.seatunnel.api.table.catalog.PrimaryKey;
23+
import org.apache.seatunnel.api.table.type.CommonOptions;
2324
import org.apache.seatunnel.api.table.type.SeaTunnelRow;
24-
import org.apache.seatunnel.common.constants.CommonOptions;
2525
import org.apache.seatunnel.common.utils.SeaTunnelException;
2626
import org.apache.seatunnel.connectors.seatunnel.milvus.exception.MilvusConnectionErrorCode;
2727
import org.apache.seatunnel.connectors.seatunnel.milvus.exception.MilvusConnectorException;

seatunnel-connectors-v2/connector-milvus/src/main/java/org/apache/seatunnel/connectors/seatunnel/milvus/source/MilvusSourceReader.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@
2424
import org.apache.seatunnel.api.table.catalog.CatalogTable;
2525
import org.apache.seatunnel.api.table.catalog.TablePath;
2626
import org.apache.seatunnel.api.table.catalog.TableSchema;
27+
import org.apache.seatunnel.api.table.type.CommonOptions;
2728
import org.apache.seatunnel.api.table.type.SeaTunnelRow;
28-
import org.apache.seatunnel.common.constants.CommonOptions;
2929
import org.apache.seatunnel.connectors.seatunnel.milvus.config.MilvusSourceConfig;
3030
import org.apache.seatunnel.connectors.seatunnel.milvus.exception.MilvusConnectionErrorCode;
3131
import org.apache.seatunnel.connectors.seatunnel.milvus.exception.MilvusConnectorException;

seatunnel-connectors-v2/connector-milvus/src/main/java/org/apache/seatunnel/connectors/seatunnel/milvus/utils/MilvusConnectorUtils.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919

2020
import org.apache.seatunnel.api.table.catalog.CatalogTable;
2121
import org.apache.seatunnel.api.table.catalog.Column;
22-
import org.apache.seatunnel.common.constants.CommonOptions;
22+
import org.apache.seatunnel.api.table.type.CommonOptions;
2323

2424
import io.milvus.v2.client.MilvusClientV2;
2525
import io.milvus.v2.service.collection.request.CreateCollectionReq;

seatunnel-connectors-v2/connector-milvus/src/main/java/org/apache/seatunnel/connectors/seatunnel/milvus/utils/MilvusConvertUtils.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
import org.apache.seatunnel.api.table.catalog.TablePath;
2828
import org.apache.seatunnel.api.table.catalog.TableSchema;
2929
import org.apache.seatunnel.api.table.catalog.VectorIndex;
30-
import org.apache.seatunnel.common.constants.CommonOptions;
30+
import org.apache.seatunnel.api.table.type.CommonOptions;
3131
import org.apache.seatunnel.connectors.seatunnel.milvus.catalog.MilvusOptions;
3232
import org.apache.seatunnel.connectors.seatunnel.milvus.config.MilvusSourceConfig;
3333
import org.apache.seatunnel.connectors.seatunnel.milvus.exception.MilvusConnectionErrorCode;

seatunnel-connectors-v2/connector-milvus/src/main/java/org/apache/seatunnel/connectors/seatunnel/milvus/utils/sink/MilvusSinkConverter.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,11 @@
2323
import org.apache.seatunnel.api.table.catalog.PrimaryKey;
2424
import org.apache.seatunnel.api.table.catalog.exception.CatalogException;
2525
import org.apache.seatunnel.api.table.type.ArrayType;
26+
import org.apache.seatunnel.api.table.type.CommonOptions;
2627
import org.apache.seatunnel.api.table.type.SeaTunnelDataType;
2728
import org.apache.seatunnel.api.table.type.SeaTunnelRow;
2829
import org.apache.seatunnel.api.table.type.SeaTunnelRowType;
2930
import org.apache.seatunnel.api.table.type.SqlType;
30-
import org.apache.seatunnel.common.constants.CommonOptions;
3131
import org.apache.seatunnel.common.utils.BufferUtils;
3232
import org.apache.seatunnel.common.utils.JsonUtils;
3333
import org.apache.seatunnel.connectors.seatunnel.milvus.exception.MilvusConnectionErrorCode;

seatunnel-connectors-v2/connector-milvus/src/main/java/org/apache/seatunnel/connectors/seatunnel/milvus/utils/source/MilvusSourceConverter.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -23,13 +23,13 @@
2323
import org.apache.seatunnel.api.table.catalog.TableSchema;
2424
import org.apache.seatunnel.api.table.type.ArrayType;
2525
import org.apache.seatunnel.api.table.type.BasicType;
26+
import org.apache.seatunnel.api.table.type.CommonOptions;
2627
import org.apache.seatunnel.api.table.type.RowKind;
2728
import org.apache.seatunnel.api.table.type.SeaTunnelDataType;
2829
import org.apache.seatunnel.api.table.type.SeaTunnelRow;
2930
import org.apache.seatunnel.api.table.type.SeaTunnelRowType;
3031
import org.apache.seatunnel.api.table.type.SqlType;
3132
import org.apache.seatunnel.api.table.type.VectorType;
32-
import org.apache.seatunnel.common.constants.CommonOptions;
3333
import org.apache.seatunnel.common.exception.CommonErrorCode;
3434
import org.apache.seatunnel.common.utils.BufferUtils;
3535
import org.apache.seatunnel.connectors.seatunnel.milvus.exception.MilvusConnectorException;

0 commit comments

Comments
 (0)