You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@brooklyn.apache.org by he...@apache.org on 2014/07/01 00:24:40 UTC
[2/5] git commit: filter the applicationresource children according
to the entitlements
filter the applicationresource children according to the entitlements
Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/82136c7a
Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/82136c7a
Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/82136c7a
Branch: refs/heads/master
Commit: 82136c7a951617be81fc57263dbe1cd35945ec0e
Parents: 8958fc1
Author: Andrea Turli <an...@gmail.com>
Authored: Mon Jun 30 18:58:32 2014 +0200
Committer: Andrea Turli <an...@gmail.com>
Committed: Mon Jun 30 18:58:32 2014 +0200
----------------------------------------------------------------------
.../management/entitlement/Entitlements.java | 10 ++++----
.../rest/resources/ApplicationResource.java | 26 +++++++++++++-------
2 files changed, 22 insertions(+), 14 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/82136c7a/core/src/main/java/brooklyn/management/entitlement/Entitlements.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/brooklyn/management/entitlement/Entitlements.java b/core/src/main/java/brooklyn/management/entitlement/Entitlements.java
index 6e3fe71..667bb3b 100644
--- a/core/src/main/java/brooklyn/management/entitlement/Entitlements.java
+++ b/core/src/main/java/brooklyn/management/entitlement/Entitlements.java
@@ -18,6 +18,11 @@ package brooklyn.management.entitlement;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import com.google.common.base.Objects;
+import com.google.common.base.Predicate;
+import com.google.common.base.Predicates;
+import com.google.common.reflect.TypeToken;
+
import brooklyn.config.BrooklynProperties;
import brooklyn.config.ConfigKey;
import brooklyn.entity.Entity;
@@ -27,11 +32,6 @@ import brooklyn.util.ResourceUtils;
import brooklyn.util.exceptions.Exceptions;
import brooklyn.util.text.Strings;
-import com.google.common.base.Objects;
-import com.google.common.base.Predicate;
-import com.google.common.base.Predicates;
-import com.google.common.reflect.TypeToken;
-
public class Entitlements {
private static final Logger log = LoggerFactory.getLogger(Entitlements.class);
http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/82136c7a/usage/rest-server/src/main/java/brooklyn/rest/resources/ApplicationResource.java
----------------------------------------------------------------------
diff --git a/usage/rest-server/src/main/java/brooklyn/rest/resources/ApplicationResource.java b/usage/rest-server/src/main/java/brooklyn/rest/resources/ApplicationResource.java
index 95eefb8..68e8bcd 100644
--- a/usage/rest-server/src/main/java/brooklyn/rest/resources/ApplicationResource.java
+++ b/usage/rest-server/src/main/java/brooklyn/rest/resources/ApplicationResource.java
@@ -140,26 +140,32 @@ public class ApplicationResource extends AbstractBrooklynRestResource implements
private ArrayNode childEntitiesRecursiveAsArray(Entity entity) {
ArrayNode node = mapper().createArrayNode();
for (Entity e : entity.getChildren()) {
- node.add(recursiveTreeFromEntity(e));
+ if (Entitlements.isEntitled(mgmt().getEntitlementManager(), Entitlements.SEE_ENTITY, entity)) {
+ node.add(recursiveTreeFromEntity(e));
+ }
}
return node;
}
private ArrayNode entitiesIdAndNameAsArray(Collection<? extends Entity> entities) {
ArrayNode node = mapper().createArrayNode();
- for (Entity e : entities) {
- ObjectNode holder = mapper().createObjectNode();
- holder.put("id", e.getId());
- holder.put("name", e.getDisplayName());
- node.add(holder);
+ for (Entity entity : entities) {
+ if (Entitlements.isEntitled(mgmt().getEntitlementManager(), Entitlements.SEE_ENTITY, entity)) {
+ ObjectNode holder = mapper().createObjectNode();
+ holder.put("id", entity.getId());
+ holder.put("name", entity.getDisplayName());
+ node.add(holder);
+ }
}
return node;
}
private ArrayNode entitiesIdAsArray(Collection<? extends Entity> entities) {
ArrayNode node = mapper().createArrayNode();
- for (Entity e : entities) {
- node.add(e.getId());
+ for (Entity entity : entities) {
+ if (Entitlements.isEntitled(mgmt().getEntitlementManager(), Entitlements.SEE_ENTITY, entity)) {
+ node.add(entity.getId());
+ }
}
return node;
}
@@ -173,7 +179,9 @@ public class ApplicationResource extends AbstractBrooklynRestResource implements
for (String entityId: entityIds.split(",")) {
Entity entity = mgmt().getEntityManager().getEntity(entityId.trim());
while (entity != null && entity.getParent() != null) {
- jsonEntitiesById.put(entity.getId(), fromEntity(entity));
+ if (Entitlements.isEntitled(mgmt().getEntitlementManager(), Entitlements.SEE_ENTITY, entity)) {
+ jsonEntitiesById.put(entity.getId(), fromEntity(entity));
+ }
entity = entity.getParent();
}
}