Repository: kudu Updated Branches: refs/heads/master 36d09f187 -> 082bbfe20
sentry module: introduce using declarations for generated types This cleans up the .cc files in the sentry module with 'using' declarations, as suggested by Adar. Change-Id: I51f61eedc1069d362fa1ce26ce0449cce8f0846b Reviewed-on: http://gerrit.cloudera.org:8080/11712 Reviewed-by: Adar Dembo <a...@cloudera.com> Reviewed-by: Hao Hao <hao....@cloudera.com> Tested-by: Kudu Jenkins Project: http://git-wip-us.apache.org/repos/asf/kudu/repo Commit: http://git-wip-us.apache.org/repos/asf/kudu/commit/7607e235 Tree: http://git-wip-us.apache.org/repos/asf/kudu/tree/7607e235 Diff: http://git-wip-us.apache.org/repos/asf/kudu/diff/7607e235 Branch: refs/heads/master Commit: 7607e2354bf61957e4d3168d75d4990169dc2472 Parents: 36d09f1 Author: Dan Burkert <danburk...@apache.org> Authored: Wed Oct 17 12:46:03 2018 -0700 Committer: Dan Burkert <danburk...@apache.org> Committed: Wed Oct 17 23:02:24 2018 +0000 ---------------------------------------------------------------------- src/kudu/sentry/sentry_client-test.cc | 55 ++++++++++++++++----------- src/kudu/sentry/sentry_client.cc | 55 ++++++++++++++++----------- src/kudu/sentry/thrift_operators-test.cc | 34 +++++++---------- 3 files changed, 79 insertions(+), 65 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/kudu/blob/7607e235/src/kudu/sentry/sentry_client-test.cc ---------------------------------------------------------------------- diff --git a/src/kudu/sentry/sentry_client-test.cc b/src/kudu/sentry/sentry_client-test.cc index d8c845d..10a4134 100644 --- a/src/kudu/sentry/sentry_client-test.cc +++ b/src/kudu/sentry/sentry_client-test.cc @@ -35,6 +35,17 @@ #include "kudu/util/test_macros.h" #include "kudu/util/test_util.h" +using sentry::TAlterSentryRoleAddGroupsRequest; +using sentry::TAlterSentryRoleAddGroupsResponse; +using sentry::TAlterSentryRoleGrantPrivilegeRequest; +using sentry::TAlterSentryRoleGrantPrivilegeResponse; +using sentry::TCreateSentryRoleRequest; +using sentry::TDropSentryRoleRequest; +using sentry::TListSentryPrivilegesRequest; +using sentry::TListSentryPrivilegesResponse; +using sentry::TSentryAuthorizable; +using sentry::TSentryGroup; +using sentry::TSentryPrivilege; using std::set; using std::string; using std::unique_ptr; @@ -106,12 +117,12 @@ TEST_P(SentryClientTest, TestMiniSentryLifecycle) { sentry_client_opts)); auto smoketest = [&]() -> Status { return client.Execute([](SentryClient* client) -> Status { - ::sentry::TCreateSentryRoleRequest create_req; + TCreateSentryRoleRequest create_req; create_req.requestorUserName = "test-admin"; create_req.roleName = "test-role"; RETURN_NOT_OK(client->CreateRole(create_req)); - ::sentry::TDropSentryRoleRequest drop_req; + TDropSentryRoleRequest drop_req; drop_req.requestorUserName = "test-admin"; drop_req.roleName = "test-role"; RETURN_NOT_OK(client->DropRole(drop_req)); @@ -137,7 +148,7 @@ TEST_P(SentryClientTest, TestMiniSentryLifecycle) { TEST_P(SentryClientTest, TestCreateDropRole) { { // Create a role - ::sentry::TCreateSentryRoleRequest req; + TCreateSentryRoleRequest req; req.requestorUserName = "test-admin"; req.roleName = "viewer"; ASSERT_OK(sentry_client_->CreateRole(req)); @@ -148,7 +159,7 @@ TEST_P(SentryClientTest, TestCreateDropRole) { } { // Attempt to create a role as a non-admin user. - ::sentry::TCreateSentryRoleRequest req; + TCreateSentryRoleRequest req; req.requestorUserName = "joe-interloper"; req.roleName = "fuzz"; Status s = sentry_client_->CreateRole(req); @@ -156,7 +167,7 @@ TEST_P(SentryClientTest, TestCreateDropRole) { } { // Attempt to drop the role as a non-admin user. - ::sentry::TDropSentryRoleRequest req; + TDropSentryRoleRequest req; req.requestorUserName = "joe-interloper"; req.roleName = "viewer"; Status s = sentry_client_->DropRole(req); @@ -164,7 +175,7 @@ TEST_P(SentryClientTest, TestCreateDropRole) { } { // Drop the role - ::sentry::TDropSentryRoleRequest req; + TDropSentryRoleRequest req; req.requestorUserName = "test-admin"; req.roleName = "viewer"; ASSERT_OK(sentry_client_->DropRole(req)); @@ -180,15 +191,15 @@ TEST_P(SentryClientTest, TestCreateDropRole) { // instances. TEST_P(SentryClientTest, TestListPrivilege) { // Attempt to access Sentry privileges by a non admin user. - ::sentry::TSentryAuthorizable authorizable; + TSentryAuthorizable authorizable; authorizable.server = "server"; authorizable.db = "db"; authorizable.table = "table"; - ::sentry::TListSentryPrivilegesRequest request; + TListSentryPrivilegesRequest request; request.requestorUserName = "joe-interloper"; request.authorizableHierarchy = authorizable; request.__set_principalName("viewer"); - ::sentry::TListSentryPrivilegesResponse response; + TListSentryPrivilegesResponse response; Status s = sentry_client_->ListPrivilegesByUser(request, &response); ASSERT_TRUE(s.IsNotAuthorized()) << s.ToString(); @@ -214,13 +225,13 @@ TEST_P(SentryClientTest, TestListPrivilege) { TEST_P(SentryClientTest, TestGrantRole) { // Attempt to alter role by a non admin user. - ::sentry::TSentryGroup group; + TSentryGroup group; group.groupName = "user"; - set<::sentry::TSentryGroup> groups; + set<TSentryGroup> groups; groups.insert(group); - ::sentry::TAlterSentryRoleAddGroupsRequest group_request; - ::sentry::TAlterSentryRoleAddGroupsResponse group_response; + TAlterSentryRoleAddGroupsRequest group_request; + TAlterSentryRoleAddGroupsResponse group_response; group_request.requestorUserName = "joe-interloper"; group_request.roleName = "viewer"; group_request.groups = groups; @@ -234,7 +245,7 @@ TEST_P(SentryClientTest, TestGrantRole) { ASSERT_TRUE(s.IsNotFound()) << s.ToString(); // Alter role 'viewer' to add group 'user'. - ::sentry::TCreateSentryRoleRequest role_request; + TCreateSentryRoleRequest role_request; role_request.requestorUserName = "test-admin"; role_request.roleName = "viewer"; ASSERT_OK(sentry_client_->CreateRole(role_request)); @@ -247,29 +258,29 @@ TEST_P(SentryClientTest, TestGrantRole) { TEST_P(SentryClientTest, TestGrantPrivilege) { // Alter role 'viewer' to add group 'user'. - ::sentry::TSentryGroup group; + TSentryGroup group; group.groupName = "user"; - set<::sentry::TSentryGroup> groups; + set<TSentryGroup> groups; groups.insert(group); - ::sentry::TAlterSentryRoleAddGroupsRequest group_request; - ::sentry::TAlterSentryRoleAddGroupsResponse group_response; + TAlterSentryRoleAddGroupsRequest group_request; + TAlterSentryRoleAddGroupsResponse group_response; group_request.requestorUserName = "test-admin"; group_request.roleName = "viewer"; group_request.groups = groups; - ::sentry::TCreateSentryRoleRequest role_request; + TCreateSentryRoleRequest role_request; role_request.requestorUserName = "test-admin"; role_request.roleName = "viewer"; ASSERT_OK(sentry_client_->CreateRole(role_request)); ASSERT_OK(sentry_client_->AlterRoleAddGroups(group_request, &group_response)); // Attempt to alter role by a non admin user. - ::sentry::TAlterSentryRoleGrantPrivilegeRequest privilege_request; - ::sentry::TAlterSentryRoleGrantPrivilegeResponse privilege_response; + TAlterSentryRoleGrantPrivilegeRequest privilege_request; + TAlterSentryRoleGrantPrivilegeResponse privilege_response; privilege_request.requestorUserName = "joe-interloper"; privilege_request.roleName = "viewer"; - ::sentry::TSentryPrivilege privilege; + TSentryPrivilege privilege; privilege.serverName = "server"; privilege.dbName = "db"; privilege.tableName = "table"; http://git-wip-us.apache.org/repos/asf/kudu/blob/7607e235/src/kudu/sentry/sentry_client.cc ---------------------------------------------------------------------- diff --git a/src/kudu/sentry/sentry_client.cc b/src/kudu/sentry/sentry_client.cc index ff29e23..919fb07 100644 --- a/src/kudu/sentry/sentry_client.cc +++ b/src/kudu/sentry/sentry_client.cc @@ -43,6 +43,19 @@ using apache::thrift::protocol::TMultiplexedProtocol; using apache::thrift::transport::TTransportException; using kudu::thrift::CreateClientProtocol; using kudu::thrift::SaslException; +using sentry::SentryPolicyServiceClient; +using sentry::TAlterSentryRoleAddGroupsRequest; +using sentry::TAlterSentryRoleAddGroupsResponse; +using sentry::TAlterSentryRoleGrantPrivilegeRequest; +using sentry::TAlterSentryRoleGrantPrivilegeResponse; +using sentry::TCreateSentryRoleRequest; +using sentry::TCreateSentryRoleResponse; +using sentry::TDropSentryRoleRequest; +using sentry::TDropSentryRoleResponse; +using sentry::TListSentryPrivilegesRequest; +using sentry::TListSentryPrivilegesResponse; +using sentry::TSentryResponseStatus; +using sentry::g_sentry_common_service_constants; using std::make_shared; using strings::Substitute; @@ -56,28 +69,27 @@ const char* const SentryClient::kServiceName = "Sentry"; const int kSlowExecutionWarningThresholdMs = 1000; namespace { -Status ConvertStatus(const ::sentry::TSentryResponseStatus& status) { - const auto& constants = ::sentry::g_sentry_common_service_constants; +Status ConvertStatus(const TSentryResponseStatus& status) { // A switch isn't possible because these values aren't generated as real constants. - if (status.value == constants.TSENTRY_STATUS_OK) { + if (status.value == g_sentry_common_service_constants.TSENTRY_STATUS_OK) { return Status::OK(); } - if (status.value == constants.TSENTRY_STATUS_ALREADY_EXISTS) { + if (status.value == g_sentry_common_service_constants.TSENTRY_STATUS_ALREADY_EXISTS) { return Status::AlreadyPresent(status.message, status.stack); } - if (status.value == constants.TSENTRY_STATUS_NO_SUCH_OBJECT) { + if (status.value == g_sentry_common_service_constants.TSENTRY_STATUS_NO_SUCH_OBJECT) { return Status::NotFound(status.message, status.stack); } - if (status.value == constants.TSENTRY_STATUS_RUNTIME_ERROR) { + if (status.value == g_sentry_common_service_constants.TSENTRY_STATUS_RUNTIME_ERROR) { return Status::RuntimeError(status.message, status.stack); } - if (status.value == constants.TSENTRY_STATUS_INVALID_INPUT) { + if (status.value == g_sentry_common_service_constants.TSENTRY_STATUS_INVALID_INPUT) { return Status::InvalidArgument(status.message, status.stack); } - if (status.value == constants.TSENTRY_STATUS_ACCESS_DENIED) { + if (status.value == g_sentry_common_service_constants.TSENTRY_STATUS_ACCESS_DENIED) { return Status::NotAuthorized(status.message, status.stack); } - if (status.value == constants.TSENTRY_STATUS_THRIFT_VERSION_MISMATCH) { + if (status.value == g_sentry_common_service_constants.TSENTRY_STATUS_THRIFT_VERSION_MISMATCH) { return Status::NotSupported(status.message, status.stack); } LOG(WARNING) << "Unknown error code in Sentry status: " << status; @@ -109,7 +121,7 @@ Status ConvertStatus(const ::sentry::TSentryResponseStatus& status) { } SentryClient::SentryClient(const HostPort& address, const thrift::ClientOptions& options) - : client_(::sentry::SentryPolicyServiceClient( + : client_(SentryPolicyServiceClient( make_shared<TMultiplexedProtocol>(CreateClientProtocol(address, options), "SentryPolicyService"))) { } @@ -136,25 +148,24 @@ bool SentryClient::IsConnected() { return client_.getInputProtocol()->getTransport()->isOpen(); } -Status SentryClient::CreateRole(const ::sentry::TCreateSentryRoleRequest& request) { +Status SentryClient::CreateRole(const TCreateSentryRoleRequest& request) { SCOPED_LOG_SLOW_EXECUTION(WARNING, kSlowExecutionWarningThresholdMs, "create Sentry role"); - ::sentry::TCreateSentryRoleResponse response; + TCreateSentryRoleResponse response; SENTRY_RET_NOT_OK(client_.create_sentry_role(response, request), response.status, "failed to create Sentry role"); return Status::OK(); } -Status SentryClient::DropRole(const ::sentry::TDropSentryRoleRequest& request) { +Status SentryClient::DropRole(const TDropSentryRoleRequest& request) { SCOPED_LOG_SLOW_EXECUTION(WARNING, kSlowExecutionWarningThresholdMs, "drop Sentry role"); - ::sentry::TDropSentryRoleResponse response; + TDropSentryRoleResponse response; SENTRY_RET_NOT_OK(client_.drop_sentry_role(response, request), response.status, "failed to drop Sentry role"); return Status::OK(); } -Status SentryClient::ListPrivilegesByUser( - const ::sentry::TListSentryPrivilegesRequest& request, - ::sentry::TListSentryPrivilegesResponse* response) { +Status SentryClient::ListPrivilegesByUser(const TListSentryPrivilegesRequest& request, + TListSentryPrivilegesResponse* response) { SCOPED_LOG_SLOW_EXECUTION(WARNING, kSlowExecutionWarningThresholdMs, "list Sentry privilege by user"); SENTRY_RET_NOT_OK(client_.list_sentry_privileges_by_user_and_itsgroups(*response, request), @@ -162,9 +173,8 @@ Status SentryClient::ListPrivilegesByUser( return Status::OK(); } -Status SentryClient::AlterRoleAddGroups( - const ::sentry::TAlterSentryRoleAddGroupsRequest& request, - ::sentry::TAlterSentryRoleAddGroupsResponse* response) { +Status SentryClient::AlterRoleAddGroups(const TAlterSentryRoleAddGroupsRequest& request, + TAlterSentryRoleAddGroupsResponse* response) { SCOPED_LOG_SLOW_EXECUTION(WARNING, kSlowExecutionWarningThresholdMs, "alter Sentry role add groups"); SENTRY_RET_NOT_OK(client_.alter_sentry_role_add_groups(*response, request), @@ -172,9 +182,8 @@ Status SentryClient::AlterRoleAddGroups( return Status::OK(); } -Status SentryClient::AlterRoleGrantPrivilege( - const ::sentry::TAlterSentryRoleGrantPrivilegeRequest& request, - ::sentry::TAlterSentryRoleGrantPrivilegeResponse* response) { +Status SentryClient::AlterRoleGrantPrivilege(const TAlterSentryRoleGrantPrivilegeRequest& request, + TAlterSentryRoleGrantPrivilegeResponse* response) { SCOPED_LOG_SLOW_EXECUTION(WARNING, kSlowExecutionWarningThresholdMs, "alter Sentry role grant privileges"); SENTRY_RET_NOT_OK(client_.alter_sentry_role_grant_privilege(*response, request), http://git-wip-us.apache.org/repos/asf/kudu/blob/7607e235/src/kudu/sentry/thrift_operators-test.cc ---------------------------------------------------------------------- diff --git a/src/kudu/sentry/thrift_operators-test.cc b/src/kudu/sentry/thrift_operators-test.cc index 46bd6c8..4ef3873 100644 --- a/src/kudu/sentry/thrift_operators-test.cc +++ b/src/kudu/sentry/thrift_operators-test.cc @@ -23,17 +23,12 @@ #include "kudu/sentry/sentry_policy_service_types.h" #include "kudu/util/test_macros.h" -#include "kudu/util/test_util.h" -using std::string; using std::set; +using std::string; -namespace kudu { namespace sentry { -class ThriftOperatorsTest : public KuduTest { -}; - template<typename T> void AssertCompareRequirements(const T& a, const T& b) { // Values must not be less than themselves. @@ -46,57 +41,56 @@ void AssertCompareRequirements(const T& a, const T& b) { } } -TEST_F(ThriftOperatorsTest, TestOperatorLt) { +TEST(ThriftOperatorsTest, TestOperatorLt) { // TSentryRole::operator< - ::sentry::TSentryRole role_a; + TSentryRole role_a; role_a.__set_roleName("a"); - ::sentry::TSentryRole role_b; + TSentryRole role_b; role_b.__set_roleName("b"); NO_FATALS(AssertCompareRequirements(role_a, role_b)); - set<::sentry::TSentryRole> roles { role_a, role_b }; + set<TSentryRole> roles { role_a, role_b }; ASSERT_EQ(2, roles.size()) << roles; // TSentryGroup::operator< - ::sentry::TSentryGroup group_a; + TSentryGroup group_a; group_a.__set_groupName("a"); - ::sentry::TSentryGroup group_b; + TSentryGroup group_b; group_b.__set_groupName("b"); NO_FATALS(AssertCompareRequirements(group_a, group_b)); - set<::sentry::TSentryGroup> groups { group_a, group_b }; + set<TSentryGroup> groups { group_a, group_b }; ASSERT_EQ(2, groups.size()) << groups; // TSentryPrivilege::operator< - ::sentry::TSentryPrivilege db_priv; + TSentryPrivilege db_priv; db_priv.__set_serverName("server1"); db_priv.__set_dbName("db1"); - ::sentry::TSentryPrivilege tbl_priv; + TSentryPrivilege tbl_priv; tbl_priv.__set_serverName("server1"); tbl_priv.__set_dbName("db1"); tbl_priv.__set_tableName("tbl1"); NO_FATALS(AssertCompareRequirements(db_priv, tbl_priv)); - set<::sentry::TSentryPrivilege> privileges { db_priv, tbl_priv }; + set<TSentryPrivilege> privileges { db_priv, tbl_priv }; ASSERT_EQ(2, privileges.size()) << privileges; // TSentryAuthorizable::operator< - ::sentry::TSentryAuthorizable db_authorizable; + TSentryAuthorizable db_authorizable; db_authorizable.__set_server("server1"); db_authorizable.__set_db("db1"); - ::sentry::TSentryAuthorizable tbl_authorizable; + TSentryAuthorizable tbl_authorizable; tbl_authorizable.__set_server("server1"); tbl_authorizable.__set_db("db1"); tbl_authorizable.__set_table("tbl1"); NO_FATALS(AssertCompareRequirements(db_authorizable, tbl_authorizable)); - set<::sentry::TSentryAuthorizable> authorizables { db_authorizable, tbl_authorizable }; + set<TSentryAuthorizable> authorizables { db_authorizable, tbl_authorizable }; ASSERT_EQ(2, authorizables.size()) << authorizables; } } // namespace sentry -} // namespace kudu