浏览代码

AMBARI-11183 - Views : cannot load permission error when accessing the ambari view (tbeerbower)

tbeerbower 10 年之前
父节点
当前提交
fcbde32437

+ 26 - 0
ambari-server/src/main/java/org/apache/ambari/server/orm/entities/ResourceEntity.java

@@ -19,6 +19,8 @@
 package org.apache.ambari.server.orm.entities;
 
 import javax.persistence.*;
+import java.util.Collection;
+import java.util.HashSet;
 
 /**
  * Represents a resource.
@@ -51,6 +53,12 @@ public class ResourceEntity {
   })
   private ResourceTypeEntity resourceType;
 
+  /**
+   * The list of privileges.
+   */
+  @OneToMany(cascade = CascadeType.ALL, mappedBy = "resource")
+  private Collection<PrivilegeEntity> privileges = new HashSet<PrivilegeEntity>();
+
 
   // ----- ResourceEntity ---------------------------------------------------
 
@@ -90,6 +98,24 @@ public class ResourceEntity {
     this.resourceType = resourceType;
   }
 
+  /**
+   * Get the associated privileges.
+   *
+   * @return the privileges
+   */
+  public Collection<PrivilegeEntity> getPrivileges() {
+    return privileges;
+  }
+
+  /**
+   * Set the associated privileges.
+   *
+   * @param privileges the privileges
+   */
+  public void setPrivileges(Collection<PrivilegeEntity> privileges) {
+    this.privileges = privileges;
+  }
+
 
   // ----- Object overrides --------------------------------------------------
 

+ 15 - 0
ambari-server/src/test/java/org/apache/ambari/server/orm/entities/ResourceEntityTest.java

@@ -21,6 +21,9 @@ package org.apache.ambari.server.orm.entities;
 import org.junit.Assert;
 import org.junit.Test;
 
+import java.util.Collection;
+import java.util.Collections;
+
 /**
  * ResourceEntity tests.
  */
@@ -44,4 +47,16 @@ public class ResourceEntityTest {
     entity.setResourceType(typeEntity);
     Assert.assertEquals(typeEntity, entity.getResourceType());
   }
+
+  @Test
+  public void testSetGetPrivileges() throws Exception {
+    ResourceEntity entity = new ResourceEntity();
+    PrivilegeEntity privilegeEntity = new PrivilegeEntity();
+    Collection<PrivilegeEntity> privileges = Collections.singleton(privilegeEntity);
+
+    Assert.assertNull(entity.getResourceType());
+
+    entity.setPrivileges(privileges);
+    Assert.assertEquals(privileges, entity.getPrivileges());
+  }
 }