You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@falcon.apache.org by aj...@apache.org on 2015/09/08 17:38:23 UTC
falcon git commit: FALCON-1414 Add all fields in filterBy to the
entity list output. Contributed by Narayan Periwal.
Repository: falcon
Updated Branches:
refs/heads/master 222cbbee8 -> 2624fe8ef
FALCON-1414 Add all fields in filterBy to the entity list output. Contributed by Narayan Periwal.
Project: http://git-wip-us.apache.org/repos/asf/falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/falcon/commit/2624fe8e
Tree: http://git-wip-us.apache.org/repos/asf/falcon/tree/2624fe8e
Diff: http://git-wip-us.apache.org/repos/asf/falcon/diff/2624fe8e
Branch: refs/heads/master
Commit: 2624fe8ef15faa21e5a811e2fa0fb27c0cb96994
Parents: 222cbbe
Author: Ajay Yadava <aj...@apache.org>
Authored: Tue Sep 8 20:17:37 2015 +0530
Committer: Ajay Yadava <aj...@apache.org>
Committed: Tue Sep 8 20:17:37 2015 +0530
----------------------------------------------------------------------
CHANGES.txt | 2 ++
.../falcon/resource/AbstractEntityManager.java | 5 ++++
.../falcon/resource/EntityManagerTest.java | 28 ++++++++++++++++++++
3 files changed, 35 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/falcon/blob/2624fe8e/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 67999aa..aaced5f 100755
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -7,6 +7,8 @@ Trunk (Unreleased)
NEW FEATURES
IMPROVEMENTS
+ FALCON-1414 Add all fields in filterBy to the entity list output.(Narayan Periwal via Ajay Yadava)
+
FALCON-1430 Exclude designer from source tarball(Ajay Yadava)
FALCON-1250 Throw error when keys in startup.properties do not start with "*." or domain+"."(Narayan Periwal via Ajay Yadava)
http://git-wip-us.apache.org/repos/asf/falcon/blob/2624fe8e/prism/src/main/java/org/apache/falcon/resource/AbstractEntityManager.java
----------------------------------------------------------------------
diff --git a/prism/src/main/java/org/apache/falcon/resource/AbstractEntityManager.java b/prism/src/main/java/org/apache/falcon/resource/AbstractEntityManager.java
index f8f36b2..06ab4d9 100644
--- a/prism/src/main/java/org/apache/falcon/resource/AbstractEntityManager.java
+++ b/prism/src/main/java/org/apache/falcon/resource/AbstractEntityManager.java
@@ -599,6 +599,11 @@ public abstract class AbstractEntityManager {
HashSet<String> fields = new HashSet<String>(Arrays.asList(fieldStr.toUpperCase().split(",")));
Map<String, List<String>> filterByFieldsValues = getFilterByFieldsValues(filterBy);
+ for (String key : filterByFieldsValues.keySet()) {
+ if (!key.toUpperCase().equals("NAME") && !key.toUpperCase().equals("CLUSTER")) {
+ fields.add(key.toUpperCase());
+ }
+ }
validateEntityFilterByClause(filterByFieldsValues);
if (StringUtils.isNotEmpty(filterTags)) {
filterByFieldsValues.put(EntityList.EntityFilterByFields.TAGS.name(), Arrays.asList(filterTags));
http://git-wip-us.apache.org/repos/asf/falcon/blob/2624fe8e/prism/src/test/java/org/apache/falcon/resource/EntityManagerTest.java
----------------------------------------------------------------------
diff --git a/prism/src/test/java/org/apache/falcon/resource/EntityManagerTest.java b/prism/src/test/java/org/apache/falcon/resource/EntityManagerTest.java
index cce8737..ea2c40f 100644
--- a/prism/src/test/java/org/apache/falcon/resource/EntityManagerTest.java
+++ b/prism/src/test/java/org/apache/falcon/resource/EntityManagerTest.java
@@ -167,6 +167,34 @@ public class EntityManagerTest extends AbstractEntityManager {
}
@Test
+ public void testGetEntityListFilterBy() throws Exception {
+
+ Entity process2 = buildProcess("processAuthUserFilterBy", System.getProperty("user.name"), "", "USER-DATA");
+ configStore.publish(EntityType.PROCESS, process2);
+
+ EntityList entityList = this.getEntityList("", "", "", "process", "", "PIPELINES:USER-DATA", "", "asc", 0, 10);
+ Assert.assertNotNull(entityList.getElements());
+ Assert.assertEquals(entityList.getElements().length, 1);
+ Assert.assertNotNull(entityList.getElements()[0].pipeline);
+ Assert.assertEquals(entityList.getElements()[0].pipeline.get(0), "USER-DATA");
+
+ /*
+ * Both entities should be returned when the user is SuperUser.
+ */
+ StartupProperties.get().setProperty("falcon.security.authorization.enabled", "true");
+ CurrentUser.authenticate(System.getProperty("user.name"));
+ entityList = this.getEntityList("", "", "", "process", "", "PIPELINES:USER-DATA", "", "desc", 0, 10);
+ Assert.assertNotNull(entityList.getElements());
+ Assert.assertEquals(entityList.getElements().length, 1);
+ Assert.assertNotNull(entityList.getElements()[0].pipeline);
+ Assert.assertEquals(entityList.getElements()[0].pipeline.get(0), "USER-DATA");
+
+ // reset values
+ StartupProperties.get().setProperty("falcon.security.authorization.enabled", "false");
+ CurrentUser.authenticate(System.getProperty("user.name"));
+ }
+
+ @Test
public void testNumberOfResults() {
Assert.assertEquals(getRequiredNumberOfResults(10000, 0, 10000), 10000);
Assert.assertEquals(getRequiredNumberOfResults(10000, 0, 4000), 4000);