/* * Copyright 2016-present ScyllaDB * * Modified by ScyllaDB */ /* * SPDX-License-Identifier: (LicenseRef-ScyllaDB-Source-Available-1.0 and Apache-2.0) */ #pragma once #include #include "data_dictionary/data_dictionary.hh" #include "cql3/statements/cf_prop_defs.hh" #include "cql3/statements/schema_altering_statement.hh" namespace cql3 { class query_processor; class cf_name; namespace statements { /** An ALTER MATERIALIZED VIEW parsed from a CQL query statement. */ class alter_view_statement : public schema_altering_statement { private: std::optional _properties; view_ptr prepare_view(data_dictionary::database db) const; public: alter_view_statement(cf_name view_name, std::optional properties); virtual future<> check_access(query_processor& qp, const service::client_state& state) const override; future, utils::chunked_vector, cql3::cql_warnings_vec>> prepare_schema_mutations(query_processor& qp, const query_options& options, api::timestamp_type) const override; virtual std::unique_ptr prepare(data_dictionary::database db, cql_stats& stats) override; }; } }