mirror of
https://github.com/tencentmusic/supersonic.git
synced 2025-12-13 13:07:32 +00:00
[improvement][semantic] refactor zipper source type (#518)
Co-authored-by: jipengli <jipengli@tencent.com>
This commit is contained in:
@@ -1,7 +0,0 @@
|
||||
package com.tencent.supersonic.semantic.api.materialization.enums;
|
||||
|
||||
public enum MaterializedTypeEnum {
|
||||
FULL,
|
||||
PARTITION,
|
||||
ZIPPER
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
package com.tencent.supersonic.semantic.api.materialization.pojo;
|
||||
|
||||
import com.tencent.supersonic.semantic.api.materialization.enums.MaterializedTypeEnum;
|
||||
import com.tencent.supersonic.semantic.api.model.enums.ModelSourceTypeEnum;
|
||||
import com.tencent.supersonic.semantic.api.materialization.enums.UpdateCycleEnum;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
@@ -15,7 +15,7 @@ public class MaterializationFilter {
|
||||
|
||||
private Long materializationId;
|
||||
private String name;
|
||||
private MaterializedTypeEnum materializedType;
|
||||
private ModelSourceTypeEnum materializedType;
|
||||
private UpdateCycleEnum updateCycle;
|
||||
private Long modelId;
|
||||
private Long databaseId;
|
||||
|
||||
@@ -2,7 +2,7 @@ package com.tencent.supersonic.semantic.api.materialization.request;
|
||||
|
||||
import com.tencent.supersonic.common.pojo.RecordInfo;
|
||||
import com.tencent.supersonic.common.pojo.enums.StatusEnum;
|
||||
import com.tencent.supersonic.semantic.api.materialization.enums.MaterializedTypeEnum;
|
||||
import com.tencent.supersonic.semantic.api.model.enums.ModelSourceTypeEnum;
|
||||
import com.tencent.supersonic.semantic.api.materialization.enums.UpdateCycleEnum;
|
||||
import lombok.Data;
|
||||
|
||||
@@ -12,7 +12,7 @@ import java.util.List;
|
||||
public class MaterializationReq extends RecordInfo {
|
||||
private Long id;
|
||||
private String name;
|
||||
private MaterializedTypeEnum materializedType;
|
||||
private ModelSourceTypeEnum materializedType;
|
||||
private UpdateCycleEnum updateCycle;
|
||||
private Long modelId;
|
||||
private Long databaseId;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package com.tencent.supersonic.semantic.api.materialization.response;
|
||||
|
||||
import com.tencent.supersonic.common.pojo.RecordInfo;
|
||||
import com.tencent.supersonic.semantic.api.materialization.enums.MaterializedTypeEnum;
|
||||
import com.tencent.supersonic.semantic.api.model.enums.ModelSourceTypeEnum;
|
||||
import com.tencent.supersonic.semantic.api.materialization.enums.UpdateCycleEnum;
|
||||
import lombok.Data;
|
||||
|
||||
@@ -11,7 +11,7 @@ import java.util.List;
|
||||
public class MaterializationResp extends RecordInfo {
|
||||
private Long id;
|
||||
private String name;
|
||||
private MaterializedTypeEnum materializedType;
|
||||
private ModelSourceTypeEnum materializedType;
|
||||
private UpdateCycleEnum updateCycle;
|
||||
private Long modelId;
|
||||
private Long databaseId;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package com.tencent.supersonic.semantic.api.materialization.response;
|
||||
|
||||
import com.tencent.supersonic.semantic.api.materialization.enums.MaterializedTypeEnum;
|
||||
import com.tencent.supersonic.semantic.api.model.enums.ModelSourceTypeEnum;
|
||||
import com.tencent.supersonic.semantic.api.materialization.enums.UpdateCycleEnum;
|
||||
import com.tencent.supersonic.semantic.api.model.response.DatabaseResp;
|
||||
import java.util.List;
|
||||
@@ -26,7 +26,7 @@ public class MaterializationSourceResp {
|
||||
|
||||
private String dateInfo;
|
||||
private String entities;
|
||||
private MaterializedTypeEnum materializedType;
|
||||
private ModelSourceTypeEnum materializedType;
|
||||
private UpdateCycleEnum updateCycle;
|
||||
private DatabaseResp databaseResp;
|
||||
private String depends;
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
package com.tencent.supersonic.semantic.api.model.enums;
|
||||
|
||||
import java.util.Objects;
|
||||
|
||||
public enum ModelSourceTypeEnum {
|
||||
FULL,
|
||||
PARTITION,
|
||||
ZIPPER;
|
||||
|
||||
public static ModelSourceTypeEnum of(String src) {
|
||||
for (ModelSourceTypeEnum modelSourceTypeEnum : ModelSourceTypeEnum.values()) {
|
||||
if (Objects.nonNull(src) && src.equalsIgnoreCase(modelSourceTypeEnum.name())) {
|
||||
return modelSourceTypeEnum;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public static boolean isZipper(ModelSourceTypeEnum modelSourceTypeEnum) {
|
||||
return Objects.nonNull(modelSourceTypeEnum) && ZIPPER.equals(modelSourceTypeEnum);
|
||||
}
|
||||
|
||||
public static boolean isZipper(String str) {
|
||||
ModelSourceTypeEnum modelSourceTypeEnum = of(str);
|
||||
return Objects.nonNull(modelSourceTypeEnum) && isZipper(modelSourceTypeEnum);
|
||||
}
|
||||
}
|
||||
@@ -30,6 +30,8 @@ public class ModelReq extends SchemaItem {
|
||||
|
||||
private String alias;
|
||||
|
||||
private String sourceType;
|
||||
|
||||
private ModelDetail modelDetail;
|
||||
|
||||
private List<String> viewers = new ArrayList<>();
|
||||
|
||||
@@ -22,6 +22,8 @@ public class ModelResp extends SchemaItem {
|
||||
|
||||
private String depends;
|
||||
|
||||
private String sourceType;
|
||||
|
||||
private String filterSql;
|
||||
|
||||
private List<String> viewers = new ArrayList<>();
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package com.tencent.supersonic.semantic.api.model.yaml;
|
||||
|
||||
import com.tencent.supersonic.semantic.api.model.enums.ModelSourceTypeEnum;
|
||||
import java.util.List;
|
||||
import lombok.Data;
|
||||
|
||||
@@ -21,6 +22,8 @@ public class DataModelYamlTpl {
|
||||
|
||||
private List<MeasureYamlTpl> measures;
|
||||
|
||||
private ModelSourceTypeEnum modelSourceTypeEnum;
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user