|
32 | 32 | import java.util.Map; |
33 | 33 |
|
34 | 34 | public class RangerServiceTrino |
35 | | - extends RangerBaseService |
36 | | -{ |
| 35 | + extends RangerBaseService { |
37 | 36 | private static final Logger LOG = LoggerFactory.getLogger(RangerServiceTrino.class); |
| 37 | + |
38 | 38 | public static final String ACCESS_TYPE_SELECT = "select"; |
39 | 39 |
|
40 | 40 | @Override |
41 | | - public List<RangerPolicy> getDefaultRangerPolicies() |
42 | | - throws Exception |
43 | | - { |
44 | | - if (LOG.isDebugEnabled()) { |
45 | | - LOG.debug("==> RangerServiceTrino.getDefaultRangerPolicies()"); |
46 | | - } |
47 | | - |
48 | | - List<RangerPolicy> ret = super.getDefaultRangerPolicies(); |
49 | | - for (RangerPolicy defaultPolicy : ret) { |
50 | | - if (defaultPolicy.getName().contains("all") && StringUtils.isNotBlank(lookUpUser)) { |
51 | | - List<RangerPolicyItemAccess> accessListForLookupUser = new ArrayList<RangerPolicyItemAccess>(); |
52 | | - RangerPolicyItem policyItemForLookupUser = new RangerPolicyItem(); |
53 | | - |
54 | | - accessListForLookupUser.add(new RangerPolicyItemAccess(ACCESS_TYPE_SELECT)); |
55 | | - policyItemForLookupUser.setUsers(Collections.singletonList(lookUpUser)); |
56 | | - policyItemForLookupUser.setAccesses(accessListForLookupUser); |
57 | | - policyItemForLookupUser.setDelegateAdmin(false); |
| 41 | + public Map<String, Object> validateConfig() { |
| 42 | + Map<String, Object> ret = new HashMap<>(); |
| 43 | + String serviceName = getServiceName(); |
58 | 44 |
|
59 | | - List<RangerPolicyItem> policyItems = defaultPolicy.getPolicyItems(); |
| 45 | + LOG.debug("RangerServiceTrino.validateConfig(): Service: {}", serviceName); |
60 | 46 |
|
61 | | - if (policyItems == null || policyItems.isEmpty()) { |
62 | | - policyItems = new ArrayList<>(); |
| 47 | + if (configs != null) { |
| 48 | + try { |
| 49 | + if (!configs.containsKey(HadoopConfigHolder.RANGER_LOGIN_PASSWORD)) { |
| 50 | + configs.put(HadoopConfigHolder.RANGER_LOGIN_PASSWORD, null); |
63 | 51 | } |
64 | 52 |
|
65 | | - policyItems.add(policyItemForLookupUser); |
| 53 | + ret = TrinoResourceManager.connectionTest(serviceName, configs); |
| 54 | + } catch (HadoopException he) { |
| 55 | + LOG.error("<== RangerServiceTrino.validateConfig() Error:{}", String.valueOf(he)); |
66 | 56 |
|
67 | | - defaultPolicy.setPolicyItems(policyItems); |
| 57 | + throw he; |
68 | 58 | } |
69 | 59 | } |
70 | 60 |
|
71 | | - if (LOG.isDebugEnabled()) { |
72 | | - LOG.debug("<== RangerServiceTrino.getDefaultRangerPolicies()"); |
73 | | - } |
| 61 | + LOG.debug("RangerServiceTrino.validateConfig(): Response: {}", ret); |
74 | 62 |
|
75 | 63 | return ret; |
76 | 64 | } |
77 | 65 |
|
78 | 66 | @Override |
79 | | - public Map<String, Object> validateConfig() |
80 | | - throws Exception |
81 | | - { |
82 | | - Map<String, Object> ret = new HashMap<String, Object>(); |
83 | | - String serviceName = getServiceName(); |
84 | | - |
85 | | - if (LOG.isDebugEnabled()) { |
86 | | - LOG.debug("RangerServiceTrino.validateConfig(): Service: " + serviceName); |
87 | | - } |
| 67 | + public List<String> lookupResource(ResourceLookupContext context) |
| 68 | + throws Exception { |
| 69 | + List<String> ret = new ArrayList<>(); |
| 70 | + String serviceName = getServiceName(); |
| 71 | + String serviceType = getServiceType(); |
| 72 | + Map<String, String> configs = getConfigs(); |
88 | 73 |
|
89 | | - if (configs != null) { |
| 74 | + LOG.debug("==> RangerServiceTrino.lookupResource() Context: ({})", context); |
| 75 | + |
| 76 | + if (context != null) { |
90 | 77 | try { |
91 | 78 | if (!configs.containsKey(HadoopConfigHolder.RANGER_LOGIN_PASSWORD)) { |
92 | 79 | configs.put(HadoopConfigHolder.RANGER_LOGIN_PASSWORD, null); |
93 | 80 | } |
94 | 81 |
|
95 | | - ret = TrinoResourceManager.connectionTest(serviceName, configs); |
96 | | - } |
97 | | - catch (HadoopException he) { |
98 | | - LOG.error("<== RangerServiceTrino.validateConfig() Error:" + he); |
| 82 | + ret = TrinoResourceManager.getTrinoResources(serviceName, serviceType, configs, context); |
| 83 | + } catch (Exception e) { |
| 84 | + LOG.error("<==RangerServiceTrino.lookupResource() Error : {}", String.valueOf(e)); |
99 | 85 |
|
100 | | - throw he; |
| 86 | + throw e; |
101 | 87 | } |
102 | 88 | } |
103 | 89 |
|
104 | | - if (LOG.isDebugEnabled()) { |
105 | | - LOG.debug("RangerServiceTrino.validateConfig(): Response: " + ret); |
106 | | - } |
| 90 | + LOG.debug("<== RangerServiceTrino.lookupResource() Response: ({})", ret); |
107 | 91 |
|
108 | 92 | return ret; |
109 | 93 | } |
110 | 94 |
|
111 | 95 | @Override |
112 | | - public List<String> lookupResource(ResourceLookupContext context) |
113 | | - throws Exception |
114 | | - { |
115 | | - List<String> ret = new ArrayList<String>(); |
116 | | - String serviceName = getServiceName(); |
117 | | - String serviceType = getServiceType(); |
118 | | - Map<String, String> configs = getConfigs(); |
119 | | - |
120 | | - if (LOG.isDebugEnabled()) { |
121 | | - LOG.debug("==> RangerServiceTrino.lookupResource() Context: (" + context + ")"); |
122 | | - } |
| 96 | + public List<RangerPolicy> getDefaultRangerPolicies() |
| 97 | + throws Exception { |
| 98 | + LOG.debug("==> RangerServiceTrino.getDefaultRangerPolicies()"); |
123 | 99 |
|
124 | | - if (context != null) { |
125 | | - try { |
126 | | - if (!configs.containsKey(HadoopConfigHolder.RANGER_LOGIN_PASSWORD)) { |
127 | | - configs.put(HadoopConfigHolder.RANGER_LOGIN_PASSWORD, null); |
| 100 | + List<RangerPolicy> ret = super.getDefaultRangerPolicies(); |
| 101 | + |
| 102 | + for (RangerPolicy defaultPolicy : ret) { |
| 103 | + if (defaultPolicy.getName().contains("all") && StringUtils.isNotBlank(lookUpUser)) { |
| 104 | + List<RangerPolicyItemAccess> accessListForLookupUser = new ArrayList<>(); |
| 105 | + RangerPolicyItem policyItemForLookupUser = new RangerPolicyItem(); |
| 106 | + |
| 107 | + accessListForLookupUser.add(new RangerPolicyItemAccess(ACCESS_TYPE_SELECT)); |
| 108 | + |
| 109 | + policyItemForLookupUser.setUsers(Collections.singletonList(lookUpUser)); |
| 110 | + policyItemForLookupUser.setAccesses(accessListForLookupUser); |
| 111 | + policyItemForLookupUser.setDelegateAdmin(false); |
| 112 | + |
| 113 | + List<RangerPolicyItem> policyItems = defaultPolicy.getPolicyItems(); |
| 114 | + |
| 115 | + if (policyItems == null || policyItems.isEmpty()) { |
| 116 | + policyItems = new ArrayList<>(); |
128 | 117 | } |
129 | 118 |
|
130 | | - ret = TrinoResourceManager.getTrinoResources(serviceName, serviceType, configs, context); |
131 | | - } |
132 | | - catch (Exception e) { |
133 | | - LOG.error("<==RangerServiceTrino.lookupResource() Error : " + e); |
| 119 | + policyItems.add(policyItemForLookupUser); |
134 | 120 |
|
135 | | - throw e; |
| 121 | + defaultPolicy.setPolicyItems(policyItems); |
136 | 122 | } |
137 | 123 | } |
138 | 124 |
|
139 | | - if (LOG.isDebugEnabled()) { |
140 | | - LOG.debug("<== RangerServiceTrino.lookupResource() Response: (" + ret + ")"); |
141 | | - } |
| 125 | + LOG.debug("<== RangerServiceTrino.getDefaultRangerPolicies()"); |
142 | 126 |
|
143 | 127 | return ret; |
144 | 128 | } |
|
0 commit comments