[improvement][semantic] refactor zipper source type (#518)

Co-authored-by: jipengli <jipengli@tencent.com>
This commit is contained in:
jipeli
2023-12-15 21:47:35 +08:00
committed by GitHub
parent ef8caea9d2
commit c86cd9f901
45 changed files with 368 additions and 805 deletions

View File

@@ -1,7 +0,0 @@
package com.tencent.supersonic.semantic.api.materialization.enums;
public enum MaterializedTypeEnum {
FULL,
PARTITION,
ZIPPER
}

View File

@@ -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;

View File

@@ -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;

View File

@@ -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;

View File

@@ -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;

View File

@@ -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);
}
}

View File

@@ -30,6 +30,8 @@ public class ModelReq extends SchemaItem {
private String alias;
private String sourceType;
private ModelDetail modelDetail;
private List<String> viewers = new ArrayList<>();

View File

@@ -22,6 +22,8 @@ public class ModelResp extends SchemaItem {
private String depends;
private String sourceType;
private String filterSql;
private List<String> viewers = new ArrayList<>();

View File

@@ -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;
}