Repository: ranger Updated Branches: refs/heads/master f1fb6315f -> 52a303218
RANGER-1934:Optimize the init method in BaseAuditHandler class to avoid ArrayIndexOutOfBoundsException Signed-off-by: zhangqiang2 <[email protected]> Project: http://git-wip-us.apache.org/repos/asf/ranger/repo Commit: http://git-wip-us.apache.org/repos/asf/ranger/commit/52a30321 Tree: http://git-wip-us.apache.org/repos/asf/ranger/tree/52a30321 Diff: http://git-wip-us.apache.org/repos/asf/ranger/diff/52a30321 Branch: refs/heads/master Commit: 52a303218224610d4b7b34f745bacfadaea1420c Parents: f1fb631 Author: peng.jianhua <[email protected]> Authored: Wed Dec 20 13:48:29 2017 +0800 Committer: zhangqiang2 <[email protected]> Committed: Wed Dec 20 20:23:19 2017 -0500 ---------------------------------------------------------------------- .../ranger/audit/provider/BaseAuditHandler.java | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ranger/blob/52a30321/agents-audit/src/main/java/org/apache/ranger/audit/provider/BaseAuditHandler.java ---------------------------------------------------------------------- diff --git a/agents-audit/src/main/java/org/apache/ranger/audit/provider/BaseAuditHandler.java b/agents-audit/src/main/java/org/apache/ranger/audit/provider/BaseAuditHandler.java index b095000..dac5c94 100644 --- a/agents-audit/src/main/java/org/apache/ranger/audit/provider/BaseAuditHandler.java +++ b/agents-audit/src/main/java/org/apache/ranger/audit/provider/BaseAuditHandler.java @@ -88,19 +88,21 @@ public abstract class BaseAuditHandler implements AuditHandler { propPrefix = basePropertyName; } LOG.info("propPrefix=" + propPrefix); - // Get final token - List<String> tokens = MiscUtil.toArray(propPrefix, "."); - String finalToken = tokens.get(tokens.size() - 1); String name = MiscUtil.getStringProperty(props, basePropertyName + "." + PROP_NAME); if (name != null && !name.isEmpty()) { setName(name); } + // Get final token if (providerName == null) { - setName(finalToken); - LOG.info("Using providerName from property prefix. providerName=" - + getName()); + List<String> tokens = MiscUtil.toArray(propPrefix, "."); + if (!tokens.isEmpty()) { + String finalToken = tokens.get(tokens.size() - 1); + setName(finalToken); + LOG.info("Using providerName from property prefix. providerName=" + + getName()); + } } LOG.info("providerName=" + getName());
