Interface Views

All Known Implementing Classes:
BaseMetastoreViews, HadoopViews, NessieExtCatalog, NessieViewCatalog

public interface Views
Generic interface for creating and loading a view implementation.

The 'viewIdentifier' field should be interpreted by the underlying implementation (e.g. catalog.database.view_name)

  • Method Details

    • create

      void create(String viewIdentifier, ViewDefinition viewDefinition, Map<String,String> properties)
      Create a view without replacing any existing view.
      Parameters:
      viewIdentifier - view name or location
      viewDefinition - SQL metadata of the view
      properties - Version property genie-id of the operation, as well as table properties such as owner, table type, common view flag etc.
    • replace

      void replace(String viewIdentifier, ViewDefinition viewDefinition, Map<String,String> properties)
      Replaces a view.
      Parameters:
      viewIdentifier - view name or location
      viewDefinition - SQL metadata of the view
      properties - Version property genie-id of the operation, as well as table properties such as owner, table type, common view flag etc.
    • load

      View load(String viewIdentifier)
      Loads a view by name.
      Parameters:
      viewIdentifier - view name or location
      Returns:
      All the metadata of the view
    • loadDefinition

      ViewDefinition loadDefinition(String viewIdentifier)
      Loads a view by name.
      Parameters:
      viewIdentifier - view name or location
      Returns:
      SQL metadata of the view
    • drop

      void drop(String viewIdentifier)
      Drops a view.
      Parameters:
      viewIdentifier - view name or location
    • rename

      default void rename(String oldIdentifier, String newIdentifier)
      Renames a view.
      Parameters:
      oldIdentifier - the view identifier of the existing view to rename
      newIdentifier - the new view identifier of the view