public boolean needsMaskingOrFiltering(HivePrivilegeObject privObject) throws SemanticException { String filter = privObject.getRowFilterExpression(); if (filter != null) { return true; } List<String> exprs = privObject.getCellValueTransformers(); if (exprs != null) { if (exprs.size() != privObject.getColumns().size()) { throw new SemanticException("Expect " + privObject.getColumns().size() + " columns in " + privObject.getObjectName() + ", but only find " + exprs.size()); } for (int index = 0; index < exprs.size(); index++) { String expr = exprs.get(index); if (expr == null) { throw new SemanticException("Expect string type CellValueTransformer in " + privObject.getObjectName() + ", but only find null"); } String colName = privObject.getColumns().get(index); if (!expr.equals(colName)) { return true; } } } return false; }
firstOne = false; String colName = privObject.getColumns().get(index); if (!expr.equals(colName)) {
List<String> exprs = privObject.getCellValueTransformers(); if (exprs != null) { if (exprs.size() != privObject.getColumns().size()) { throw new SemanticException("Expect " + privObject.getColumns().size() + " columns in " + privObject.getObjectName() + ", but only find " + exprs.size()); firstOne = false; String colName = privObject.getColumns().get(index); if (!expr.equals(colName)) {
name, type, dbObj.getName(), null, null, null)); } else { List<String> columns = privObj.getColumns(); if (columns != null && !columns.isEmpty()) {
name, type, dbObj.getName(), null, null, null)); } else { List<String> columns = privObj.getColumns(); if (columns != null && !columns.isEmpty()) {
appendNonNull(builder, resource.getObjectName()); appendNonNull(builder, resource.getPartKeys()); appendNonNull(builder, resource.getColumns()); appendNonNull(builder, principal.getName()); appendNonNull(builder, principal.getType());
appendNonNull(builder, resource.getObjectName()); appendNonNull(builder, resource.getPartKeys()); appendNonNull(builder, resource.getColumns()); appendNonNull(builder, principal.getName()); appendNonNull(builder, principal.getType());
name, type, dbObj.getName(), null, null, null)); } else { List<String> columns = privObj.getColumns(); if (columns != null && !columns.isEmpty()) {
appendNonNull(builder, resource.getObjectName()); appendNonNull(builder, resource.getPartKeys()); appendNonNull(builder, resource.getColumns()); appendNonNull(builder, principal.getName()); appendNonNull(builder, principal.getType());