chore(mypy): Fixing can_access_database types (#10119)

Co-authored-by: John Bodley <john.bodley@airbnb.com>
This commit is contained in:
John Bodley 2020-06-20 21:17:33 -07:00 committed by GitHub
parent 69100536de
commit e570263577
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 5 additions and 1 deletions

View File

@ -50,6 +50,7 @@ from superset.utils.core import DatasourceName
if TYPE_CHECKING:
from superset.common.query_context import QueryContext
from superset.connectors.base.models import BaseDatasource
from superset.connectors.druid.models import DruidCluster
from superset.models.core import Database
from superset.sql_parse import Table
from superset.viz import BaseViz
@ -230,13 +231,16 @@ class SupersetSecurityManager(SecurityManager):
return self.can_access("all_database_access", "all_database_access")
def can_access_database(self, database: "Database") -> bool:
def can_access_database(self, database: Union["Database", "DruidCluster"]) -> bool:
"""
Return True if the user can access the Superset database, False otherwise.
Note for Druid the database is akin to the Druid cluster.
:param database: The Superset database
:returns: Whether the user can access the Superset database
"""
return (
self.can_access_all_datasources()
or self.can_access_all_databases()