Package dev.frostlake.metastore.model
Class MaterializedView
java.lang.Object
dev.frostlake.metastore.SqlObject
dev.frostlake.metastore.model.MaterializedView
- All Implemented Interfaces:
Taggable
-
Field Summary
Fields inherited from class dev.frostlake.metastore.SqlObject
comment, createdTime, name, owner -
Constructor Summary
ConstructorsConstructorDescriptionMaterializedView(String name, String definition) MaterializedView(String name, List<String> columnNames, String definition) -
Method Summary
Modifier and TypeMethodDescriptionGet the type of this SQL object (e.g., "TABLE", "VIEW", "DATABASE") Subclasses should override to provide their specific typeThe materialized view's columns — name and declared type — as its defining query resolved to at CREATE time, or null when they could not be resolved.booleanbooleanbooleanisSecure()booleanvoidsetLastRefreshedTime(LocalDateTime lastRefreshedTime) voidsetOriginalDdl(String originalDdl) voidsetResolvedColumns(List<TableColumn> resolvedColumns) voidsetSecure(boolean secure) voidsetSuspended(boolean suspended) voidsetWarehouse(String warehouse) Methods inherited from class dev.frostlake.metastore.SqlObject
equals, getComment, getCreatedTime, getName, getOwner, getTagValue, getTagValues, hashCode, rename, setComment, setName, setOwner, setTag, toString, unsetTag, withoutTrailingSemicolon
-
Constructor Details
-
MaterializedView
-
MaterializedView
-
-
Method Details
-
getDefinition
-
getColumnNames
-
hasExplicitColumnNames
public boolean hasExplicitColumnNames() -
getResolvedColumns
The materialized view's columns — name and declared type — as its defining query resolved to at CREATE time, or null when they could not be resolved. WhatINFORMATION_SCHEMA.COLUMNSreports for it, and through that whatDatabaseMetaData.getColumnsanswers.Frozen at creation exactly as a plain
View's is — live-verified separately on a real account: afterALTER TABLE t ALTER COLUMN c SET DATA TYPE VARCHAR(77)the base table reports the new length while the materialized view over it still reports the old one, and a SUSPEND/RESUME refresh cycle does not move it either. -
setResolvedColumns
-
hasResolvedColumns
public boolean hasResolvedColumns() -
getWarehouse
-
setWarehouse
-
isSuspended
public boolean isSuspended() -
setSuspended
public void setSuspended(boolean suspended) -
getLastRefreshedTime
-
setLastRefreshedTime
-
isSecure
public boolean isSecure() -
getOriginalDdl
-
setOriginalDdl
-
ddl
-
setSecure
public void setSecure(boolean secure) -
getObjectType
Description copied from class:SqlObjectGet the type of this SQL object (e.g., "TABLE", "VIEW", "DATABASE") Subclasses should override to provide their specific type- Specified by:
getObjectTypein classSqlObject- Returns:
- The object type as a string
-