presto-main/src/main/java/io/prestosql/execution/DropViewTask.java/DropViewTask/execute
class DropViewTask:    @Override
    public ListenableFuture<?> execute(DropView statement, TransactionManager transactionManager, Metadata metadata, AccessControl accessControl, QueryStateMachine stateMachine, List<Expression> parameters)
    {
        Session session = stateMachine.getSession();
        QualifiedObjectName name = createQualifiedObjectName(session, statement, statement.getName());

        Optional<ConnectorViewDefinition> view = metadata.getView(session, name);
        if (!view.isPresent()) {
            if (!statement.isExists()) {
                throw semanticException(TABLE_NOT_FOUND, statement, "View '%s' does not exist", name);
            }
            return immediateFuture(null);
        }

        accessControl.checkCanDropView(session.toSecurityContext(), name);

        metadata.dropView(session, name);

        return immediateFuture(null);
    }