Package org.apache.iceberg.catalog
Interface ViewCatalog
- All Known Implementing Classes:
 BaseMetastoreViewCatalog,BaseViewSessionCatalog.AsViewCatalog,InMemoryCatalog,JdbcCatalog,NessieCatalog,RESTCatalog
public interface ViewCatalog
A Catalog API for view create, drop, and load operations.
- 
Method Summary
Modifier and TypeMethodDescriptionbuildView(TableIdentifier identifier) Instantiate a builder to create or replace a SQL view.booleandropView(TableIdentifier identifier) Drop a view.default voidinitialize(String name, Map<String, String> properties) Initialize a view catalog given a custom name and a map of catalog properties.default voidinvalidateView(TableIdentifier identifier) Invalidate cached view metadata from current catalog.Return all the identifiers under this namespace.loadView(TableIdentifier identifier) Load a view.name()Return the name for this catalog.voidrenameView(TableIdentifier from, TableIdentifier to) Rename a view.default booleanviewExists(TableIdentifier identifier) Check whether view exists. 
- 
Method Details
- 
name
String name()Return the name for this catalog.- Returns:
 - this catalog's name
 
 - 
listViews
Return all the identifiers under this namespace.- Parameters:
 namespace- a namespace- Returns:
 - a list of identifiers for views
 - Throws:
 NoSuchNamespaceException- if the namespace is not found
 - 
loadView
Load a view.- Parameters:
 identifier- a view identifier- Returns:
 - instance of 
Viewimplementation referred by the identifier - Throws:
 NoSuchViewException- if the view does not exist
 - 
viewExists
Check whether view exists.- Parameters:
 identifier- a view identifier- Returns:
 - true if the view exists, false otherwise
 
 - 
buildView
Instantiate a builder to create or replace a SQL view.- Parameters:
 identifier- a view identifier- Returns:
 - a view builder
 
 - 
dropView
Drop a view.- Parameters:
 identifier- a view identifier- Returns:
 - true if the view was dropped, false if the view did not exist
 
 - 
renameView
Rename a view.- Parameters:
 from- identifier of the view to renameto- new view identifier- Throws:
 NoSuchViewException- if the "from" view does not existAlreadyExistsException- if the "to" view already existsNoSuchNamespaceException- if the "to" namespace doesn't exist
 - 
invalidateView
Invalidate cached view metadata from current catalog.If the view is already loaded or cached, drop cached data. If the view does not exist or is not cached, do nothing.
- Parameters:
 identifier- a view identifier
 - 
initialize
Initialize a view catalog given a custom name and a map of catalog properties.A custom view catalog implementation must have a no-arg constructor. A compute engine like Spark or Flink will first initialize the catalog without any arguments, and then call this method to complete catalog initialization with properties passed into the engine.
- Parameters:
 name- a custom name for the catalogproperties- catalog properties
 
 -