http://git-wip-us.apache.org/repos/asf/ranger/blob/d424b1a8/security-admin/src/main/java/org/apache/ranger/db/XXPolicyRefConditionDao.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/java/org/apache/ranger/db/XXPolicyRefConditionDao.java
 
b/security-admin/src/main/java/org/apache/ranger/db/XXPolicyRefConditionDao.java
new file mode 100644
index 0000000..2c04ab4
--- /dev/null
+++ 
b/security-admin/src/main/java/org/apache/ranger/db/XXPolicyRefConditionDao.java
@@ -0,0 +1,111 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.ranger.db;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+
+import javax.persistence.NoResultException;
+
+import org.apache.ranger.biz.RangerPolicyRetriever;
+import org.apache.ranger.common.db.BaseDao;
+import org.apache.ranger.entity.XXPolicyRefCondition;
+import org.springframework.stereotype.Service;
+
+@Service
+public class XXPolicyRefConditionDao extends BaseDao<XXPolicyRefCondition>  {
+
+       public XXPolicyRefConditionDao(RangerDaoManagerBase daoManager) {
+               super(daoManager);
+       }
+
+       public List<XXPolicyRefCondition> findByPolicyId(Long polId) {
+               if(polId == null) {
+                       return Collections.EMPTY_LIST;
+               }
+               try {
+                       return getEntityManager()
+                                       
.createNamedQuery("XXPolicyRefCondition.findByPolicyId", tClass)
+                                       .setParameter("policyId", 
polId).getResultList();
+               } catch (NoResultException e) {
+                       return Collections.EMPTY_LIST;
+               }
+       }
+       public List<XXPolicyRefCondition> findByConditionName(String 
conditionName) {
+               if (conditionName == null) {
+                       return Collections.EMPTY_LIST;
+               }
+               try {
+                       return 
getEntityManager().createNamedQuery("XXPolicyRefCondition.findByConditionName", 
tClass)
+                                       .setParameter("conditionName", 
conditionName).getResultList();
+               } catch (NoResultException e) {
+                       return Collections.EMPTY_LIST;
+               }
+       }
+
+       public List<XXPolicyRefCondition> findByConditionDefId(Long 
conditionDefId) {
+               if (conditionDefId == null) {
+                       return Collections.EMPTY_LIST;
+               }
+               try {
+                       return 
getEntityManager().createNamedQuery("XXPolicyRefCondition.findByConditionDefId",
 tClass)
+                                       .setParameter("conditionDefId", 
conditionDefId)
+                                       .getResultList();
+               } catch (NoResultException e) {
+                       return Collections.EMPTY_LIST;
+               }
+       }
+
+       @SuppressWarnings("unchecked")
+    public List<RangerPolicyRetriever.PolicyTextNameMap> 
findUpdatedConditionNamesByPolicy(Long policyId) {
+        List<RangerPolicyRetriever.PolicyTextNameMap> ret = new ArrayList<>();
+        if (policyId != null) {
+            List<Object[]> rows = (List<Object[]>) getEntityManager()
+                    
.createNamedQuery("XXPolicyRefCondition.findUpdatedConditionNamesByPolicy")
+                    .setParameter("policy", policyId)
+                    .getResultList();
+            if (rows != null) {
+                for (Object[] row : rows) {
+                    ret.add(new 
RangerPolicyRetriever.PolicyTextNameMap((Long)row[0], (String)row[1], 
(String)row[2]));
+                }
+            }
+        }
+        return ret;
+    }
+
+       @SuppressWarnings("unchecked")
+       public List<RangerPolicyRetriever.PolicyTextNameMap> 
findUpdatedConditionNamesByService(Long serviceId) {
+        List<RangerPolicyRetriever.PolicyTextNameMap> ret = new ArrayList<>();
+        if (serviceId != null) {
+            List<Object[]> rows = (List<Object[]>) getEntityManager()
+                    
.createNamedQuery("XXPolicyRefCondition.findUpdatedConditionNamesByService")
+                    .setParameter("service", serviceId)
+                    .getResultList();
+            if (rows != null) {
+                for (Object[] row : rows) {
+                    ret.add(new 
RangerPolicyRetriever.PolicyTextNameMap((Long)row[0], (String)row[1], 
(String)row[2]));
+                }
+            }
+        }
+        return ret;
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/ranger/blob/d424b1a8/security-admin/src/main/java/org/apache/ranger/db/XXPolicyRefDataMaskTypeDao.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/java/org/apache/ranger/db/XXPolicyRefDataMaskTypeDao.java
 
b/security-admin/src/main/java/org/apache/ranger/db/XXPolicyRefDataMaskTypeDao.java
new file mode 100644
index 0000000..258e3b0
--- /dev/null
+++ 
b/security-admin/src/main/java/org/apache/ranger/db/XXPolicyRefDataMaskTypeDao.java
@@ -0,0 +1,86 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.ranger.db;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+
+import javax.persistence.NoResultException;
+
+import org.apache.ranger.biz.RangerPolicyRetriever;
+import org.apache.ranger.common.db.BaseDao;
+import org.apache.ranger.entity.XXPolicyRefDataMaskType;
+import org.springframework.stereotype.Service;
+
+@Service
+public class XXPolicyRefDataMaskTypeDao extends 
BaseDao<XXPolicyRefDataMaskType>{
+
+       public XXPolicyRefDataMaskTypeDao(RangerDaoManagerBase daoManager)  {
+               super(daoManager);
+       }
+
+       public List<XXPolicyRefDataMaskType> findByPolicyId(Long policyId) {
+               if(policyId == null) {
+                       return Collections.EMPTY_LIST;
+               }
+               try {
+                       return getEntityManager()
+                                       
.createNamedQuery("XXPolicyRefDataMaskType.findByPolicyId", tClass)
+                                       .setParameter("policyId", 
policyId).getResultList();
+               } catch (NoResultException e) {
+                       return Collections.EMPTY_LIST;
+               }
+       }
+
+       @SuppressWarnings("unchecked")
+    public List<RangerPolicyRetriever.PolicyTextNameMap> 
findUpdatedDataMaskNamesByPolicy(Long policyId) {
+        List<RangerPolicyRetriever.PolicyTextNameMap> ret = new ArrayList<>();
+        if (policyId != null) {
+            List<Object[]> rows = (List<Object[]>) getEntityManager()
+                    
.createNamedQuery("XXPolicyRefDataMaskType.findUpdatedDataMaskNamesByPolicy")
+                    .setParameter("policy", policyId)
+                    .getResultList();
+            if (rows != null) {
+                for (Object[] row : rows) {
+                    ret.add(new 
RangerPolicyRetriever.PolicyTextNameMap((Long)row[0], (String)row[1], 
(String)row[2]));
+                }
+            }
+        }
+        return ret;
+    }
+
+       @SuppressWarnings("unchecked")
+       public List<RangerPolicyRetriever.PolicyTextNameMap> 
findUpdatedDataMaskNamesByService(Long serviceId) {
+        List<RangerPolicyRetriever.PolicyTextNameMap> ret = new ArrayList<>();
+        if (serviceId != null) {
+            List<Object[]> rows = (List<Object[]>) getEntityManager()
+                    
.createNamedQuery("XXPolicyRefDataMaskType.findUpdatedDataMaskNamesByService")
+                    .setParameter("service", serviceId)
+                    .getResultList();
+            if (rows != null) {
+                for (Object[] row : rows) {
+                    ret.add(new 
RangerPolicyRetriever.PolicyTextNameMap((Long)row[0], (String)row[1], 
(String)row[2]));
+                }
+            }
+        }
+        return ret;
+    }
+}

http://git-wip-us.apache.org/repos/asf/ranger/blob/d424b1a8/security-admin/src/main/java/org/apache/ranger/db/XXPolicyRefGroupDao.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/java/org/apache/ranger/db/XXPolicyRefGroupDao.java 
b/security-admin/src/main/java/org/apache/ranger/db/XXPolicyRefGroupDao.java
new file mode 100644
index 0000000..08829d4
--- /dev/null
+++ b/security-admin/src/main/java/org/apache/ranger/db/XXPolicyRefGroupDao.java
@@ -0,0 +1,99 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.ranger.db;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+
+import javax.persistence.NoResultException;
+
+import org.apache.ranger.biz.RangerPolicyRetriever;
+import org.apache.ranger.common.db.BaseDao;
+import org.apache.ranger.entity.XXPolicyRefGroup;
+import org.springframework.stereotype.Service;
+
+@Service
+public class XXPolicyRefGroupDao extends BaseDao<XXPolicyRefGroup>{
+
+
+       public XXPolicyRefGroupDao(RangerDaoManagerBase daoManager)  {
+               super(daoManager);
+       }
+
+       public List<XXPolicyRefGroup> findByPolicyId(Long policyId) {
+               if(policyId == null) {
+                       return Collections.EMPTY_LIST;
+               }
+               try {
+                       return getEntityManager()
+                                       
.createNamedQuery("XXPolicyRefGroup.findByPolicyId", tClass)
+                                       .setParameter("policyId", 
policyId).getResultList();
+               } catch (NoResultException e) {
+                       return Collections.EMPTY_LIST;
+               }
+       }
+       public List<XXPolicyRefGroup> findByGroupName(String groupName) {
+               if (groupName == null) {
+                       return Collections.EMPTY_LIST;
+               }
+               try {
+                       return 
getEntityManager().createNamedQuery("XXPolicyRefGroup.findByGroupName", tClass)
+                                       .setParameter("groupName", 
groupName).getResultList();
+               } catch (NoResultException e) {
+                       return Collections.EMPTY_LIST;
+               }
+       }
+
+    @SuppressWarnings("unchecked")
+    public List<RangerPolicyRetriever.PolicyTextNameMap> 
findUpdatedGroupNamesByPolicy(Long policyId) {
+        List<RangerPolicyRetriever.PolicyTextNameMap> ret = new ArrayList<>();
+        if (policyId != null) {
+            List<Object[]> rows = (List<Object[]>) getEntityManager()
+                    
.createNamedQuery("XXPolicyRefGroup.findUpdatedGroupNamesByPolicy")
+                    .setParameter("policy", policyId)
+                    .getResultList();
+            if (rows != null) {
+                for (Object[] row : rows) {
+                    ret.add(new 
RangerPolicyRetriever.PolicyTextNameMap((Long)row[0], (String)row[1], 
(String)row[2]));
+                }
+            }
+        }
+        return ret;
+    }
+
+       @SuppressWarnings("unchecked")
+       public List<RangerPolicyRetriever.PolicyTextNameMap> 
findUpdatedGroupNamesByService(Long serviceId) {
+        List<RangerPolicyRetriever.PolicyTextNameMap> ret = new ArrayList<>();
+        if (serviceId != null) {
+            List<Object[]> rows = (List<Object[]>) getEntityManager()
+                    
.createNamedQuery("XXPolicyRefGroup.findUpdatedGroupNamesByService")
+                    .setParameter("service", serviceId)
+                    .getResultList();
+            if (rows != null) {
+                for (Object[] row : rows) {
+                    ret.add(new 
RangerPolicyRetriever.PolicyTextNameMap((Long)row[0], (String)row[1], 
(String)row[2]));
+                }
+            }
+        }
+        return ret;
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/ranger/blob/d424b1a8/security-admin/src/main/java/org/apache/ranger/db/XXPolicyRefResourceDao.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/java/org/apache/ranger/db/XXPolicyRefResourceDao.java 
b/security-admin/src/main/java/org/apache/ranger/db/XXPolicyRefResourceDao.java
new file mode 100644
index 0000000..e259ee8
--- /dev/null
+++ 
b/security-admin/src/main/java/org/apache/ranger/db/XXPolicyRefResourceDao.java
@@ -0,0 +1,98 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.ranger.db;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+
+import javax.persistence.NoResultException;
+
+import org.apache.ranger.biz.RangerPolicyRetriever;
+import org.apache.ranger.common.db.BaseDao;
+import org.apache.ranger.entity.XXPolicyRefResource;
+import org.springframework.stereotype.Service;
+
+@Service
+public class XXPolicyRefResourceDao extends BaseDao<XXPolicyRefResource>{
+
+       public XXPolicyRefResourceDao(RangerDaoManagerBase daoManager)  {
+               super(daoManager);
+       }
+
+       public List<XXPolicyRefResource> findByPolicyId(Long policyId) {
+               if(policyId == null) {
+                       return Collections.EMPTY_LIST;
+               }
+               try {
+                       return getEntityManager()
+                                       
.createNamedQuery("XXPolicyRefResource.findByPolicyId", tClass)
+                                       .setParameter("policyId", 
policyId).getResultList();
+               } catch (NoResultException e) {
+                       return Collections.EMPTY_LIST;
+               }
+       }
+
+       public List<XXPolicyRefResource> findByResourceDefID(Long 
resourceDefId) {
+               if (resourceDefId == null) {
+                       return Collections.EMPTY_LIST;
+               }
+               try {
+                       return 
getEntityManager().createNamedQuery("XXPolicyRefResource.findByResourceDefId", 
tClass)
+                                       .setParameter("resourceDefId", 
resourceDefId).getResultList();
+               } catch (NoResultException e) {
+                       return Collections.EMPTY_LIST;
+               }
+       }
+
+        @SuppressWarnings("unchecked")
+           public List<RangerPolicyRetriever.PolicyTextNameMap> 
findUpdatedResourceNamesByPolicy(Long policyId) {
+               List<RangerPolicyRetriever.PolicyTextNameMap> ret = new 
ArrayList<>();
+               if (policyId != null) {
+                   List<Object[]> rows = (List<Object[]>) getEntityManager()
+                           
.createNamedQuery("XXPolicyRefResource.findUpdatedResourceNamesByPolicy")
+                           .setParameter("policy", policyId)
+                           .getResultList();
+                   if (rows != null) {
+                       for (Object[] row : rows) {
+                           ret.add(new 
RangerPolicyRetriever.PolicyTextNameMap((Long)row[0], (String)row[1], 
(String)row[2]));
+                       }
+                   }
+               }
+               return ret;
+           }
+
+               @SuppressWarnings("unchecked")
+               public List<RangerPolicyRetriever.PolicyTextNameMap> 
findUpdatedResourceNamesByService(Long serviceId) {
+               List<RangerPolicyRetriever.PolicyTextNameMap> ret = new 
ArrayList<>();
+               if (serviceId != null) {
+                   List<Object[]> rows = (List<Object[]>) getEntityManager()
+                           
.createNamedQuery("XXPolicyRefResource.findUpdatedResourceNamesByService")
+                           .setParameter("service", serviceId)
+                           .getResultList();
+                   if (rows != null) {
+                       for (Object[] row : rows) {
+                           ret.add(new 
RangerPolicyRetriever.PolicyTextNameMap((Long)row[0], (String)row[1], 
(String)row[2]));
+                       }
+                   }
+               }
+               return ret;
+           }
+}

http://git-wip-us.apache.org/repos/asf/ranger/blob/d424b1a8/security-admin/src/main/java/org/apache/ranger/db/XXPolicyRefUserDao.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/java/org/apache/ranger/db/XXPolicyRefUserDao.java 
b/security-admin/src/main/java/org/apache/ranger/db/XXPolicyRefUserDao.java
new file mode 100644
index 0000000..f7b6131
--- /dev/null
+++ b/security-admin/src/main/java/org/apache/ranger/db/XXPolicyRefUserDao.java
@@ -0,0 +1,111 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.ranger.db;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+
+import javax.persistence.NoResultException;
+
+import org.apache.ranger.biz.RangerPolicyRetriever;
+import org.apache.ranger.common.db.BaseDao;
+import org.apache.ranger.entity.XXPolicyRefUser;
+import org.springframework.stereotype.Service;
+
+@Service
+public class XXPolicyRefUserDao extends BaseDao<XXPolicyRefUser>{
+
+
+       public XXPolicyRefUserDao(RangerDaoManagerBase daoManager)  {
+               super(daoManager);
+       }
+
+       public List<XXPolicyRefUser> findByPolicyId(Long policyId) {
+               if(policyId == null) {
+                       return Collections.EMPTY_LIST;
+               }
+               try {
+                       return getEntityManager()
+                                       
.createNamedQuery("XXPolicyRefUser.findByPolicyId", tClass)
+                                       .setParameter("policyId", 
policyId).getResultList();
+               } catch (NoResultException e) {
+                       return Collections.EMPTY_LIST;
+               }
+       }
+       public List<XXPolicyRefUser> findByUserName(String userName) {
+               if (userName == null) {
+                       return Collections.EMPTY_LIST;
+               }
+               try {
+                       return 
getEntityManager().createNamedQuery("XXPolicyRefUser.findByUserName", tClass)
+                                       .setParameter("userName", 
userName).getResultList();
+               } catch (NoResultException e) {
+                       return Collections.EMPTY_LIST;
+               }
+       }
+
+       public List<XXPolicyRefUser> findByUserId(String userID) {
+               if (userID == null) {
+                       return Collections.EMPTY_LIST;
+               }
+               try {
+                       return 
getEntityManager().createNamedQuery("XXPolicyRefUser.findByUserId", tClass)
+                                       .setParameter("userID", 
userID).getResultList();
+               } catch (NoResultException e) {
+                       return Collections.EMPTY_LIST;
+               }
+       }
+
+       @SuppressWarnings("unchecked")
+    public List<RangerPolicyRetriever.PolicyTextNameMap> 
findUpdatedUserNamesByPolicy(Long policyId) {
+        List<RangerPolicyRetriever.PolicyTextNameMap> ret = new ArrayList<>();
+        if (policyId != null) {
+            List<Object[]> rows = (List<Object[]>) getEntityManager()
+                    
.createNamedQuery("XXPolicyRefUser.findUpdatedUserNamesByPolicy")
+                    .setParameter("policy", policyId)
+                    .getResultList();
+            if (rows != null) {
+                for (Object[] row : rows) {
+                    ret.add(new 
RangerPolicyRetriever.PolicyTextNameMap((Long)row[0], (String)row[1], 
(String)row[2]));
+                }
+            }
+        }
+        return ret;
+    }
+
+       @SuppressWarnings("unchecked")
+       public List<RangerPolicyRetriever.PolicyTextNameMap> 
findUpdatedUserNamesByService(Long serviceId) {
+        List<RangerPolicyRetriever.PolicyTextNameMap> ret = new ArrayList<>();
+        if (serviceId != null) {
+            List<Object[]> rows = (List<Object[]>) getEntityManager()
+                    
.createNamedQuery("XXPolicyRefUser.findUpdatedUserNamesByService")
+                    .setParameter("service", serviceId)
+                    .getResultList();
+            if (rows != null) {
+                for (Object[] row : rows) {
+                    ret.add(new 
RangerPolicyRetriever.PolicyTextNameMap((Long)row[0], (String)row[1], 
(String)row[2]));
+                }
+            }
+        }
+        return ret;
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/ranger/blob/d424b1a8/security-admin/src/main/java/org/apache/ranger/db/XXPolicyResourceDao.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/java/org/apache/ranger/db/XXPolicyResourceDao.java 
b/security-admin/src/main/java/org/apache/ranger/db/XXPolicyResourceDao.java
index a7157de..6670a4e 100644
--- a/security-admin/src/main/java/org/apache/ranger/db/XXPolicyResourceDao.java
+++ b/security-admin/src/main/java/org/apache/ranger/db/XXPolicyResourceDao.java
@@ -32,20 +32,6 @@ public class XXPolicyResourceDao extends 
BaseDao<XXPolicyResource> {
        public XXPolicyResourceDao(RangerDaoManagerBase daoManager) {
                super(daoManager);
        }
-       
-       public XXPolicyResource findByResDefIdAndPolicyId(Long resDefId, Long 
polId) {
-               if(resDefId == null || polId == null) {
-                       return null;
-               }
-               try {
-                       return getEntityManager()
-                                       
.createNamedQuery("XXPolicyResource.findByResDefIdAndPolicyId", tClass)
-                                       .setParameter("resDefId", 
resDefId).setParameter("polId", polId)
-                                       .getSingleResult();
-               } catch (NoResultException e) {
-                       return null;
-               }
-       }
 
        public List<XXPolicyResource> findByPolicyId(Long policyId) {
                if(policyId == null) {

http://git-wip-us.apache.org/repos/asf/ranger/blob/d424b1a8/security-admin/src/main/java/org/apache/ranger/db/XXPolicyResourceMapDao.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/java/org/apache/ranger/db/XXPolicyResourceMapDao.java 
b/security-admin/src/main/java/org/apache/ranger/db/XXPolicyResourceMapDao.java
index 55d8c50..90123f5 100644
--- 
a/security-admin/src/main/java/org/apache/ranger/db/XXPolicyResourceMapDao.java
+++ 
b/security-admin/src/main/java/org/apache/ranger/db/XXPolicyResourceMapDao.java
@@ -32,19 +32,6 @@ public class XXPolicyResourceMapDao extends 
BaseDao<XXPolicyResourceMap> {
        public XXPolicyResourceMapDao(RangerDaoManagerBase daoManager) {
                super(daoManager);
        }
-       
-       public List<XXPolicyResourceMap> findByPolicyResId(Long polResId) {
-               if(polResId == null) {
-                       return new ArrayList<XXPolicyResourceMap>();
-               }
-               try {
-                       return getEntityManager()
-                                       
.createNamedQuery("XXPolicyResourceMap.findByPolicyResId", tClass)
-                                       .setParameter("polResId", 
polResId).getResultList();
-               } catch (NoResultException e) {
-                       return new ArrayList<XXPolicyResourceMap>();
-               }
-       }
 
        public List<XXPolicyResourceMap> findByPolicyId(Long policyId) {
                if(policyId == null) {

http://git-wip-us.apache.org/repos/asf/ranger/blob/d424b1a8/security-admin/src/main/java/org/apache/ranger/db/XXResourceDefDao.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/java/org/apache/ranger/db/XXResourceDefDao.java 
b/security-admin/src/main/java/org/apache/ranger/db/XXResourceDefDao.java
index b2e311f..5613902 100644
--- a/security-admin/src/main/java/org/apache/ranger/db/XXResourceDefDao.java
+++ b/security-admin/src/main/java/org/apache/ranger/db/XXResourceDefDao.java
@@ -99,5 +99,4 @@ public class XXResourceDefDao extends BaseDao<XXResourceDef> {
                        return new ArrayList<XXResourceDef>();
                }
        }
-
 }

http://git-wip-us.apache.org/repos/asf/ranger/blob/d424b1a8/security-admin/src/main/java/org/apache/ranger/db/XXServiceResourceDao.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/java/org/apache/ranger/db/XXServiceResourceDao.java 
b/security-admin/src/main/java/org/apache/ranger/db/XXServiceResourceDao.java
index ee0e400..5c0878c 100644
--- 
a/security-admin/src/main/java/org/apache/ranger/db/XXServiceResourceDao.java
+++ 
b/security-admin/src/main/java/org/apache/ranger/db/XXServiceResourceDao.java
@@ -24,6 +24,7 @@ import java.util.List;
 
 import javax.persistence.NoResultException;
 
+import org.apache.commons.collections.CollectionUtils;
 import org.apache.commons.lang.StringUtils;
 import org.apache.ranger.authorization.utils.StringUtil;
 import org.apache.ranger.common.db.BaseDao;
@@ -75,15 +76,32 @@ public class XXServiceResourceDao extends 
BaseDao<XXServiceResource> {
        }
 
        public List<XXServiceResource> findTaggedResourcesInServiceId(Long 
serviceId) {
-               if (serviceId == null) {
-                       return new ArrayList<XXServiceResource>();
-               }
-               try {
-                       return 
getEntityManager().createNamedQuery("XXServiceResource.findTaggedResourcesInServiceId",
 tClass)
-                                       .setParameter("serviceId", 
serviceId).getResultList();
-               } catch (NoResultException e) {
-                       return new ArrayList<XXServiceResource>();
-               }
+           List<XXServiceResource> ret = new ArrayList<>();
+               if (serviceId != null) {
+            List<Object[]> rows = null;
+            try {
+                rows = 
getEntityManager().createNamedQuery("XXServiceResource.findTaggedResourcesInServiceId",
 Object[].class)
+                        .setParameter("serviceId", serviceId).getResultList();
+            } catch (NoResultException e) {
+                // Nothing
+            }
+            if (CollectionUtils.isNotEmpty(rows)) {
+                for (Object[] row : rows) {
+                    XXServiceResource xxServiceResource = new 
XXServiceResource();
+                    xxServiceResource.setId((Long) row[0]);
+                    xxServiceResource.setGuid((String) row[1]);
+                    xxServiceResource.setVersion((Long) row[2]);
+                    xxServiceResource.setIsEnabled((Boolean) row[3]);
+                    xxServiceResource.setResourceSignature((String) row[4]);
+                    xxServiceResource.setServiceId((Long) row[5]);
+                    xxServiceResource.setServiceResourceElements((String) 
row[6]);
+                    xxServiceResource.setTags((String) row[7]);
+
+                    ret.add(xxServiceResource);
+                }
+            }
+        }
+        return ret;
        }
 
        public long countTaggedResourcesInServiceId(Long serviceId) {

http://git-wip-us.apache.org/repos/asf/ranger/blob/d424b1a8/security-admin/src/main/java/org/apache/ranger/db/XXServiceResourceElementDao.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/java/org/apache/ranger/db/XXServiceResourceElementDao.java
 
b/security-admin/src/main/java/org/apache/ranger/db/XXServiceResourceElementDao.java
index c9a1c21..ece8c2e 100644
--- 
a/security-admin/src/main/java/org/apache/ranger/db/XXServiceResourceElementDao.java
+++ 
b/security-admin/src/main/java/org/apache/ranger/db/XXServiceResourceElementDao.java
@@ -74,16 +74,4 @@ public class XXServiceResourceElementDao extends 
BaseDao<XXServiceResourceElemen
                }
        }
 
-       public List<XXServiceResourceElement> findForServicePlugin(Long 
serviceId) {
-               if (serviceId == null) {
-                       return new ArrayList<XXServiceResourceElement>();
-               }
-               try {
-                       return 
getEntityManager().createNamedQuery("XXServiceResourceElement.findForServicePlugin",
 tClass)
-                                       .setParameter("serviceId", serviceId)
-                                       .getResultList();
-               } catch (NoResultException e) {
-                       return new ArrayList<XXServiceResourceElement>();
-               }
-       }
 }

http://git-wip-us.apache.org/repos/asf/ranger/blob/d424b1a8/security-admin/src/main/java/org/apache/ranger/db/XXServiceResourceElementValueDao.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/java/org/apache/ranger/db/XXServiceResourceElementValueDao.java
 
b/security-admin/src/main/java/org/apache/ranger/db/XXServiceResourceElementValueDao.java
index 364af6d..1d6a1ea 100644
--- 
a/security-admin/src/main/java/org/apache/ranger/db/XXServiceResourceElementValueDao.java
+++ 
b/security-admin/src/main/java/org/apache/ranger/db/XXServiceResourceElementValueDao.java
@@ -87,19 +87,6 @@ public class XXServiceResourceElementValueDao extends 
BaseDao<XXServiceResourceE
        }
 
        @SuppressWarnings("unchecked")
-       public List<XXServiceResourceElementValue> findForServicePlugin(Long 
serviceId) {
-               if (serviceId == null) {
-                       return new ArrayList<XXServiceResourceElementValue>();
-               }
-               try {
-                       return 
getEntityManager().createNamedQuery("XXServiceResourceElementValue.findForServicePlugin")
-                                       .setParameter("serviceId", 
serviceId).getResultList();
-               } catch (NoResultException e) {
-                       return new ArrayList<XXServiceResourceElementValue>();
-               }
-       }
-
-       @SuppressWarnings("unchecked")
        public List<XXServiceResourceElementValue> findByResourceId(Long 
resourceId) {
                if (resourceId == null) {
                        return new ArrayList<XXServiceResourceElementValue>();

http://git-wip-us.apache.org/repos/asf/ranger/blob/d424b1a8/security-admin/src/main/java/org/apache/ranger/db/XXTagAttributeDao.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/java/org/apache/ranger/db/XXTagAttributeDao.java 
b/security-admin/src/main/java/org/apache/ranger/db/XXTagAttributeDao.java
index 40c3a88..474ef28 100644
--- a/security-admin/src/main/java/org/apache/ranger/db/XXTagAttributeDao.java
+++ b/security-admin/src/main/java/org/apache/ranger/db/XXTagAttributeDao.java
@@ -59,18 +59,6 @@ public class XXTagAttributeDao extends 
BaseDao<XXTagAttribute> {
                }
        }
 
-       public List<XXTagAttribute> findForServicePlugin(Long serviceId) {
-               if (serviceId == null) {
-                       return new ArrayList<XXTagAttribute>();
-               }
-               try {
-                       return 
getEntityManager().createNamedQuery("XXTagAttribute.findForServicePlugin", 
tClass)
-                                       .setParameter("serviceId", 
serviceId).getResultList();
-               } catch (NoResultException e) {
-                       return new ArrayList<XXTagAttribute>();
-               }
-       }
-
        public List<XXTagAttribute> findByServiceIdAndOwner(Long serviceId, 
Short owner) {
                if (serviceId == null) {
                        return new ArrayList<XXTagAttribute>();

http://git-wip-us.apache.org/repos/asf/ranger/blob/d424b1a8/security-admin/src/main/java/org/apache/ranger/db/XXTagAttributeDefDao.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/java/org/apache/ranger/db/XXTagAttributeDefDao.java 
b/security-admin/src/main/java/org/apache/ranger/db/XXTagAttributeDefDao.java
index 129f3c1..3a9cf2c 100644
--- 
a/security-admin/src/main/java/org/apache/ranger/db/XXTagAttributeDefDao.java
+++ 
b/security-admin/src/main/java/org/apache/ranger/db/XXTagAttributeDefDao.java
@@ -59,18 +59,6 @@ public class XXTagAttributeDefDao extends 
BaseDao<XXTagAttributeDef> {
                }
        }
 
-       public List<XXTagAttributeDef> findForServicePlugin(Long serviceId) {
-               if (serviceId == null) {
-                       return new ArrayList<XXTagAttributeDef>();
-               }
-               try {
-                       return 
getEntityManager().createNamedQuery("XXTagAttributeDef.findForServicePlugin", 
tClass)
-                                       .setParameter("serviceId", 
serviceId).getResultList();
-               } catch (NoResultException e) {
-                       return new ArrayList<XXTagAttributeDef>();
-               }
-       }
-
        public List<XXTagAttributeDef> findByResourceId(Long resourceId) {
                if (resourceId == null) {
                        return new ArrayList<XXTagAttributeDef>();

http://git-wip-us.apache.org/repos/asf/ranger/blob/d424b1a8/security-admin/src/main/java/org/apache/ranger/db/XXTagDao.java
----------------------------------------------------------------------
diff --git a/security-admin/src/main/java/org/apache/ranger/db/XXTagDao.java 
b/security-admin/src/main/java/org/apache/ranger/db/XXTagDao.java
index e14f836..c3aed9d 100644
--- a/security-admin/src/main/java/org/apache/ranger/db/XXTagDao.java
+++ b/security-admin/src/main/java/org/apache/ranger/db/XXTagDao.java
@@ -126,19 +126,6 @@ public class XXTagDao extends BaseDao<XXTag> {
                }
        }
 
-       public List<XXTag> findForServicePlugin(Long serviceId) {
-               if (serviceId == null) {
-                       return new ArrayList<XXTag>();
-               }
-
-               try {
-                       return 
getEntityManager().createNamedQuery("XXTag.findForServicePlugin", tClass)
-                                       .setParameter("serviceId", 
serviceId).getResultList();
-               } catch (NoResultException e) {
-                       return new ArrayList<XXTag>();
-               }
-       }
-
        public List<XXTag> findByServiceIdAndOwner(Long serviceId, Short owner) 
{
                if (serviceId == null) {
                        return new ArrayList<XXTag>();

http://git-wip-us.apache.org/repos/asf/ranger/blob/d424b1a8/security-admin/src/main/java/org/apache/ranger/db/XXTagDefDao.java
----------------------------------------------------------------------
diff --git a/security-admin/src/main/java/org/apache/ranger/db/XXTagDefDao.java 
b/security-admin/src/main/java/org/apache/ranger/db/XXTagDefDao.java
index c0dd883..f6c0bbf 100644
--- a/security-admin/src/main/java/org/apache/ranger/db/XXTagDefDao.java
+++ b/security-admin/src/main/java/org/apache/ranger/db/XXTagDefDao.java
@@ -24,6 +24,7 @@ import java.util.List;
 
 import javax.persistence.NoResultException;
 
+import org.apache.commons.collections.CollectionUtils;
 import org.apache.commons.lang.StringUtils;
 import org.apache.ranger.common.db.BaseDao;
 import org.apache.ranger.entity.XXTagDef;
@@ -62,31 +63,33 @@ public class XXTagDefDao extends BaseDao<XXTagDef> {
                }
        }
 
-       public List<XXTagDef> findByServiceId(Long serviceId) {
-               if (serviceId == null) {
-                       return new ArrayList<XXTagDef>();
-               }
-
-               try {
-                       return 
getEntityManager().createNamedQuery("XXTagDef.findByServiceId", tClass)
-                                       .setParameter("serviceId", 
serviceId).getResultList();
-               } catch (NoResultException e) {
-                       return new ArrayList<XXTagDef>();
-               }
-       }
-
-       public List<XXTagDef> findForServicePlugin(Long serviceId) {
-               if (serviceId == null) {
-                       return new ArrayList<XXTagDef>();
-               }
-
-               try {
-                       return 
getEntityManager().createNamedQuery("XXTagDef.findForServicePlugin", tClass)
-                                       .setParameter("serviceId", 
serviceId).getResultList();
-               } catch (NoResultException e) {
-                       return new ArrayList<XXTagDef>();
-               }
-       }
+    public List<XXTagDef> findByServiceId(Long serviceId) {
+        List<XXTagDef> ret = new ArrayList<>();
+        if (serviceId != null) {
+            List<Object[]> rows = null;
+            try {
+                rows = 
getEntityManager().createNamedQuery("XXTagDef.findByServiceId", Object[].class)
+                        .setParameter("serviceId", serviceId).getResultList();
+            } catch (NoResultException e) {
+                // Nothing
+            }
+            if (CollectionUtils.isNotEmpty(rows)) {
+                for (Object[] row : rows) {
+                    XXTagDef xxTagDef = new XXTagDef();
+                    xxTagDef.setId((Long) row[0]);
+                    xxTagDef.setGuid((String) row[1]);
+                    xxTagDef.setVersion((Long) row[2]);
+                    xxTagDef.setIsEnabled((Boolean) row[3]);
+                    xxTagDef.setName((String) row[4]);
+                    xxTagDef.setSource((String) row[5]);
+                    xxTagDef.setTagAttrDefs((String) row[6]);
+
+                    ret.add(xxTagDef);
+                }
+            }
+        }
+        return ret;
+    }
 
        public List<String> getAllNames() {
                try {

http://git-wip-us.apache.org/repos/asf/ranger/blob/d424b1a8/security-admin/src/main/java/org/apache/ranger/db/XXTagResourceMapDao.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/java/org/apache/ranger/db/XXTagResourceMapDao.java 
b/security-admin/src/main/java/org/apache/ranger/db/XXTagResourceMapDao.java
index f9e041a..3f8b5b7 100644
--- a/security-admin/src/main/java/org/apache/ranger/db/XXTagResourceMapDao.java
+++ b/security-admin/src/main/java/org/apache/ranger/db/XXTagResourceMapDao.java
@@ -143,15 +143,4 @@ public class XXTagResourceMapDao extends 
BaseDao<XXTagResourceMap> {
                }
        }
 
-       public List<XXTagResourceMap> findForServicePlugin(Long serviceId) {
-               if (serviceId == null) {
-                       return new ArrayList<XXTagResourceMap>();
-               }
-               try {
-                       return 
getEntityManager().createNamedQuery("XXTagResourceMap.findForServicePlugin", 
tClass)
-                                       .setParameter("serviceId", 
serviceId).getResultList();
-               } catch (NoResultException e) {
-                       return new ArrayList<XXTagResourceMap>();
-               }
-       }
 }

http://git-wip-us.apache.org/repos/asf/ranger/blob/d424b1a8/security-admin/src/main/java/org/apache/ranger/db/XXUserDao.java
----------------------------------------------------------------------
diff --git a/security-admin/src/main/java/org/apache/ranger/db/XXUserDao.java 
b/security-admin/src/main/java/org/apache/ranger/db/XXUserDao.java
index 58bf4d8..cea90c1 100644
--- a/security-admin/src/main/java/org/apache/ranger/db/XXUserDao.java
+++ b/security-admin/src/main/java/org/apache/ranger/db/XXUserDao.java
@@ -17,10 +17,7 @@
  * under the License.
  */
 
- package org.apache.ranger.db;
-
-
-import java.util.List;
+package org.apache.ranger.db;
 
 import javax.persistence.NoResultException;
 
@@ -53,20 +50,6 @@ public class XXUserDao extends BaseDao<XXUser> {
                return null;
        }
 
-       @SuppressWarnings("unchecked")
-       public List<String> findByPolicyItemId(Long polItemId) {
-               if (polItemId == null) {
-                       return null;
-               }
-               try {
-                       return getEntityManager()
-                                       
.createNamedQuery("XXUser.findByPolicyItemId")
-                                       .setParameter("polItemId", 
polItemId).getResultList();
-               } catch (NoResultException e) {
-                       return null;
-               }
-       }
-
        public XXUser findByPortalUserId(Long portalUserId) {
                if (portalUserId == null) {
                        return null;
@@ -78,4 +61,5 @@ public class XXUserDao extends BaseDao<XXUser> {
                        return null;
                }
        }
+
 }

http://git-wip-us.apache.org/repos/asf/ranger/blob/d424b1a8/security-admin/src/main/java/org/apache/ranger/entity/XXDBBase.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/java/org/apache/ranger/entity/XXDBBase.java 
b/security-admin/src/main/java/org/apache/ranger/entity/XXDBBase.java
index 8405eb3..4816b02 100644
--- a/security-admin/src/main/java/org/apache/ranger/entity/XXDBBase.java
+++ b/security-admin/src/main/java/org/apache/ranger/entity/XXDBBase.java
@@ -25,6 +25,7 @@
  */
 
 import java.util.Date;
+import java.util.Objects;
 
 import javax.persistence.Column;
 import javax.persistence.EntityListeners;
@@ -205,6 +206,11 @@ public abstract class XXDBBase implements 
java.io.Serializable {
                return str;
        }
 
+       @Override
+       public int hashCode() {
+               return Objects.hash(createTime, updateTime, addedByUserId, 
updatedByUserId);
+       }
+
        /**
         * Checks for all attributes except referenced db objects
         * @return true if all attributes match

http://git-wip-us.apache.org/repos/asf/ranger/blob/d424b1a8/security-admin/src/main/java/org/apache/ranger/entity/XXPolicyBase.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/java/org/apache/ranger/entity/XXPolicyBase.java 
b/security-admin/src/main/java/org/apache/ranger/entity/XXPolicyBase.java
index 584a103..e441ec0 100644
--- a/security-admin/src/main/java/org/apache/ranger/entity/XXPolicyBase.java
+++ b/security-admin/src/main/java/org/apache/ranger/entity/XXPolicyBase.java
@@ -126,6 +126,10 @@ public abstract class XXPolicyBase extends XXDBBase {
      */
     @Column(name = "policy_options")
     protected String options;
+
+       @Column(name = "policy_text")
+       protected String policyText;
+
        /**
         * @return the gUID
         */
@@ -310,7 +314,16 @@ public abstract class XXPolicyBase extends XXDBBase {
         return this.options;
     }
 
-       /*
+
+       public void setPolicyText(String policyText) {
+               this.policyText = policyText;
+       }
+
+       public String getPolicyText() {
+               return this.policyText;
+       }
+
+    /*
         * (non-Javadoc)
         *
         * @see java.lang.Object#equals(java.lang.Object)
@@ -399,6 +412,13 @@ public abstract class XXPolicyBase extends XXDBBase {
                } else if (!options.equals(other.options)) {
                        return false;
                }
+        if (policyText == null) {
+            if (other.policyText != null) {
+                return false;
+            }
+        } else if (!policyText.equals(other.policyText)) {
+            return false;
+        }
 
                return true;
        }

http://git-wip-us.apache.org/repos/asf/ranger/blob/d424b1a8/security-admin/src/main/java/org/apache/ranger/entity/XXPolicyRefAccessType.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/java/org/apache/ranger/entity/XXPolicyRefAccessType.java
 
b/security-admin/src/main/java/org/apache/ranger/entity/XXPolicyRefAccessType.java
new file mode 100644
index 0000000..6af8f99
--- /dev/null
+++ 
b/security-admin/src/main/java/org/apache/ranger/entity/XXPolicyRefAccessType.java
@@ -0,0 +1,191 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.ranger.entity;
+
+import javax.persistence.*;
+import javax.xml.bind.annotation.XmlRootElement;
+import java.util.Objects;
+
+@Entity
+@Cacheable
+@XmlRootElement
+@Table(name = "x_policy_ref_access_type")
+public class XXPolicyRefAccessType extends XXDBBase implements
+               java.io.Serializable {
+       private static final long serialVersionUID = 1L;
+       /**
+        * id of the XXPolicyRefAccessType
+        * <ul>
+        * </ul>
+        *
+        */
+       @Id
+       @SequenceGenerator(name = "x_policy_ref_access_type_SEQ", sequenceName 
= "x_policy_ref_access_type_SEQ", allocationSize = 1)
+       @GeneratedValue(strategy = GenerationType.AUTO, generator = 
"x_policy_ref_access_type_SEQ")
+       @Column(name = "id")
+       protected Long id;
+
+       /**
+        * policyId of the XXPolicyRefAccessType
+        * <ul>
+        * </ul>
+        *
+        */
+       @Column(name = "policy_id")
+       protected Long policyId;
+
+       /**
+        * accessDefId of the XXPolicyRefAccessType
+        * <ul>
+        * </ul>
+        *
+        */
+       @Column(name = "access_def_id")
+       protected Long accessDefId;
+
+       /**
+        * accessTypeName of the XXPolicyRefAccessType
+        * <ul>
+        * </ul>
+        *
+        */
+       @Column(name = "access_type_name")
+       protected String accessTypeName;
+
+       /**
+        * This method sets the value to the member attribute <b> id</b> . You
+        * cannot set null to the attribute.
+        *
+        * @param id
+        *            Value to set member attribute <b> id</b>
+        */
+       public void setId(Long id) {
+               this.id = id;
+       }
+
+       /**
+        * Returns the value for the member attribute <b>id</b>
+        *
+        * @return Date - value of member attribute <b>id</b> .
+        */
+       public Long getId() {
+               return this.id;
+       }
+
+       /**
+        * This method sets the value to the member attribute <b> policyId</b> .
+        * You cannot set null to the attribute.
+        *
+        * @param policyId
+        *            Value to set member attribute <b> policyId</b>
+        */
+       public void setPolicyId(Long policyId) {
+               this.policyId = policyId;
+       }
+
+       /**
+        * Returns the value for the member attribute <b>policyId</b>
+        *
+        * @return Date - value of member attribute <b>policyId</b> .
+        */
+       public Long getPolicyId() {
+               return this.policyId;
+       }
+
+       /**
+        * This method sets the value to the member attribute <b> 
accessDefId</b> .
+        * You cannot set null to the attribute.
+        *
+        * @param accessDefId
+        *            Value to set member attribute <b> accessDefId</b>
+        */
+       public void setAccessDefId(Long accessDefId) {
+               this.accessDefId = accessDefId;
+       }
+
+       /**
+        * Returns the value for the member attribute <b>accessDefId</b>
+        *
+        * @return Date - value of member attribute <b>accessDefId</b> .
+        */
+       public Long getAccessDefId() {
+               return accessDefId;
+       }
+
+       /**
+        * This method sets the value to the member attribute <b> 
accessTypeName</b> .
+        * You cannot set null to the attribute.
+        *
+        * @param accessTypeName
+        *            Value to set member attribute <b> accessTypeName</b>
+        */
+       public void setAccessTypeName(String accessTypeName) {
+               this.accessTypeName = accessTypeName;
+       }
+
+       /**
+        * Returns the value for the member attribute <b>accessTypeName</b>
+        *
+        * @return Date - value of member attribute <b>accessTypeName</b> .
+        */
+       public String getAccessTypeName() {
+               return accessTypeName;
+       }
+
+       @Override
+       public int hashCode() {
+               return Objects.hash(super.hashCode(), id, policyId, 
accessDefId, accessTypeName);
+       }
+
+       /*
+        * (non-Javadoc)
+        *
+        * @see java.lang.Object#equals(java.lang.Object)
+        */
+       @Override
+       public boolean equals(Object obj) {
+               if (this == obj) {
+                       return true;
+               }
+
+               if (getClass() != obj.getClass()) {
+                       return false;
+               }
+
+               XXPolicyRefAccessType other = (XXPolicyRefAccessType) obj;
+
+               return super.equals(obj) &&
+                          Objects.equals(id, other.id) &&
+                          Objects.equals(policyId, other.policyId) &&
+                          Objects.equals(accessDefId, other.accessDefId) &&
+                          Objects.equals(accessTypeName, other.accessTypeName);
+       }
+
+       /* (non-Javadoc)
+        * @see java.lang.Object#toString()
+        */
+       @Override
+       public String toString() {
+               return "XXPolicyRefAccessType [" + super.toString() + " id=" + 
id + ", policyId=" + policyId + ", accessDefId="
+                               + accessDefId + ", accessTypeName=" + 
accessTypeName +  "]";
+       }
+
+
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ranger/blob/d424b1a8/security-admin/src/main/java/org/apache/ranger/entity/XXPolicyRefCondition.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/java/org/apache/ranger/entity/XXPolicyRefCondition.java
 
b/security-admin/src/main/java/org/apache/ranger/entity/XXPolicyRefCondition.java
new file mode 100644
index 0000000..4f4409d
--- /dev/null
+++ 
b/security-admin/src/main/java/org/apache/ranger/entity/XXPolicyRefCondition.java
@@ -0,0 +1,191 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.ranger.entity;
+
+import javax.persistence.*;
+import javax.xml.bind.annotation.XmlRootElement;
+import java.util.Objects;
+
+@Entity
+@Cacheable
+@XmlRootElement
+@Table(name = "x_policy_ref_condition")
+public class XXPolicyRefCondition extends XXDBBase implements
+               java.io.Serializable {
+       private static final long serialVersionUID = 1L;
+       /**
+        * id of the XXPolicyRefCondition
+        * <ul>
+        * </ul>
+        *
+        */
+       @Id
+       @SequenceGenerator(name = "x_policy_ref_condition_SEQ", sequenceName = 
"x_policy_ref_condition_SEQ", allocationSize = 1)
+       @GeneratedValue(strategy = GenerationType.AUTO, generator = 
"x_policy_ref_condition_SEQ")
+       @Column(name = "id")
+       protected Long id;
+
+       /**
+        * policyId of the XXPolicyRefCondition
+        * <ul>
+        * </ul>
+        *
+        */
+       @Column(name = "policy_id")
+       protected Long policyId;
+
+       /**
+        * conditionDefId of the XXPolicyRefCondition
+        * <ul>
+        * </ul>
+        *
+        */
+       @Column(name = "condition_def_id")
+       protected Long conditionDefId;
+
+       /**
+        * conditionName of the XXPolicyRefCondition
+        * <ul>
+        * </ul>
+        *
+        */
+       @Column(name = "condition_name")
+       protected String conditionName;
+
+       /**
+        * This method sets the value to the member attribute <b> id</b> . You
+        * cannot set null to the attribute.
+        *
+        * @param id
+        *            Value to set member attribute <b> id</b>
+        */
+       public void setId(Long id) {
+               this.id = id;
+       }
+
+       /**
+        * Returns the value for the member attribute <b>id</b>
+        *
+        * @return Date - value of member attribute <b>id</b> .
+        */
+       public Long getId() {
+               return this.id;
+       }
+
+       /**
+        * This method sets the value to the member attribute <b> policyId</b> .
+        * You cannot set null to the attribute.
+        *
+        * @param policyId
+        *            Value to set member attribute <b> policyId</b>
+        */
+       public void setPolicyId(Long policyId) {
+               this.policyId = policyId;
+       }
+
+       /**
+        * Returns the value for the member attribute <b>policyId</b>
+        *
+        * @return Date - value of member attribute <b>policyId</b> .
+        */
+       public Long getPolicyId() {
+               return this.policyId;
+       }
+
+       /**
+        * This method sets the value to the member attribute <b> 
conditionDefId</b> .
+        * You cannot set null to the attribute.
+        *
+        * @param conditionDefId
+        *            Value to set member attribute <b> conditionDefId</b>
+        */
+       public void setConditionDefId(Long conditionDefId) {
+               this.conditionDefId = conditionDefId;
+       }
+
+       /**
+        * Returns the value for the member attribute <b>conditionDefId</b>
+        *
+        * @return Date - value of member attribute <b>conditionDefId</b> .
+        */
+       public Long getConditionDefId() {
+               return conditionDefId;
+       }
+
+       /**
+        * This method sets the value to the member attribute <b> 
conditionName</b> .
+        * You cannot set null to the attribute.
+        *
+        * @param conditionName
+        *            Value to set member attribute <b> conditionName</b>
+        */
+       public void setConditionName(String conditionName) {
+               this.conditionName = conditionName;
+       }
+
+       /**
+        * Returns the value for the member attribute <b>conditionName</b>
+        *
+        * @return Date - value of member attribute <b>conditionName</b> .
+        */
+       public String getConditionName() {
+               return conditionName;
+       }
+
+       @Override
+       public int hashCode() {
+               return Objects.hash(super.hashCode(), id, policyId, 
conditionDefId, conditionName);
+       }
+
+       /*
+        * (non-Javadoc)
+        *
+        * @see java.lang.Object#equals(java.lang.Object)
+        */
+       @Override
+       public boolean equals(Object obj) {
+               if (this == obj) {
+                       return true;
+               }
+
+               if (getClass() != obj.getClass()) {
+                       return false;
+               }
+
+               XXPolicyRefCondition other = (XXPolicyRefCondition) obj;
+
+               return super.equals(obj) &&
+                          Objects.equals(id, other.id) &&
+                          Objects.equals(policyId, other.policyId) &&
+                          Objects.equals(conditionDefId, other.conditionDefId) 
&&
+                          Objects.equals(conditionName, other.conditionName);
+       }
+
+       /* (non-Javadoc)
+        * @see java.lang.Object#toString()
+        */
+       @Override
+       public String toString() {
+               return "XXPolicyRefCondition [" + super.toString() + " id=" + 
id + ", policyId=" + policyId + ", conditionDefId="
+                               + conditionDefId + ", conditionName=" + 
conditionName + "]";
+       }
+
+
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ranger/blob/d424b1a8/security-admin/src/main/java/org/apache/ranger/entity/XXPolicyRefDataMaskType.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/java/org/apache/ranger/entity/XXPolicyRefDataMaskType.java
 
b/security-admin/src/main/java/org/apache/ranger/entity/XXPolicyRefDataMaskType.java
new file mode 100644
index 0000000..cb92674
--- /dev/null
+++ 
b/security-admin/src/main/java/org/apache/ranger/entity/XXPolicyRefDataMaskType.java
@@ -0,0 +1,192 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.ranger.entity;
+
+import javax.persistence.*;
+import javax.xml.bind.annotation.XmlRootElement;
+import java.util.Objects;
+
+@Entity
+@Cacheable
+@XmlRootElement
+@Table(name = "x_policy_ref_datamask_type")
+public class XXPolicyRefDataMaskType extends XXDBBase implements
+               java.io.Serializable {
+       private static final long serialVersionUID = 1L;
+       /**
+        * id of the XXPolicyRefDataMaskType
+        * <ul>
+        * </ul>
+        *
+        */
+       @Id
+       @SequenceGenerator(name = "x_policy_ref_datamask_type_SEQ", 
sequenceName = "x_policy_ref_datamask_type_SEQ", allocationSize = 1)
+       @GeneratedValue(strategy = GenerationType.AUTO, generator = 
"x_policy_ref_datamask_type_SEQ")
+       @Column(name = "id")
+       protected Long id;
+
+       /**
+        * policyId of the XXPolicyRefDataMaskType
+        * <ul>
+        * </ul>
+        *
+        */
+       @Column(name = "policy_id")
+       protected Long policyId;
+
+       /**
+        * DatamaskDefId of the XXPolicyRefDataMaskType
+        * <ul>
+        * </ul>
+        *
+        */
+       @Column(name = "datamask_def_id")
+       protected Long dataMaskDefId;
+
+       /**
+        * dataMaskTypeName of the XXPolicyRefDataMaskType
+        * <ul>
+        * </ul>
+        *
+        */
+       @Column(name = "datamask_type_name")
+       protected String dataMaskTypeName;
+
+       /**
+        * This method sets the value to the member attribute <b> id</b> . You
+        * cannot set null to the attribute.
+        *
+        * @param id
+        *            Value to set member attribute <b> id</b>
+        */
+       public void setId(Long id) {
+               this.id = id;
+       }
+
+       /**
+        * Returns the value for the member attribute <b>id</b>
+        *
+        * @return Date - value of member attribute <b>id</b> .
+        */
+       public Long getId() {
+               return this.id;
+       }
+
+
+       /**
+        * This method sets the value to the member attribute <b> policyId</b> .
+        * You cannot set null to the attribute.
+        *
+        * @param policyId
+        *            Value to set member attribute <b> policyId</b>
+        */
+       public void setPolicyId(Long policyId) {
+               this.policyId = policyId;
+       }
+
+       /**
+        * Returns the value for the member attribute <b>policyId</b>
+        *
+        * @return Date - value of member attribute <b>policyId</b> .
+        */
+       public Long getPolicyId() {
+               return this.policyId;
+       }
+
+       /**
+        * This method sets the value to the member attribute <b> 
dataMaskDefId</b> .
+        * You cannot set null to the attribute.
+        *
+        * @param dataMaskDefId
+        *            Value to set member attribute <b> dataMaskDefId</b>
+        */
+       public void setDataMaskDefId(Long dataMaskDefId) {
+               this.dataMaskDefId = dataMaskDefId;
+       }
+
+       /**
+        * Returns the value for the member attribute <b>dataMaskDefId</b>
+        *
+        * @return Date - value of member attribute <b>dataMaskDefId</b> .
+        */
+       public Long getDataMaskDefId() {
+               return dataMaskDefId;
+       }
+
+       /**
+        * This method sets the value to the member attribute <b> 
dataMaskTypeName</b> .
+        * You cannot set null to the attribute.
+        *
+        * @param dataMaskTypeName
+        *            Value to set member attribute <b> dataMaskTypeName</b>
+        */
+       public void setDataMaskTypeName(String dataMaskTypeName) {
+               this.dataMaskTypeName = dataMaskTypeName;
+       }
+
+       /**
+        * Returns the value for the member attribute <b>dataMaskTypeName</b>
+        *
+        * @return Date - value of member attribute <b>dataMaskTypeName</b> .
+        */
+       public String getDataMaskTypeName() {
+               return dataMaskTypeName;
+       }
+
+       @Override
+       public int hashCode() {
+               return Objects.hash(super.hashCode(), id, policyId, 
dataMaskDefId, dataMaskTypeName);
+       }
+
+       /*
+        * (non-Javadoc)
+        *
+        * @see java.lang.Object#equals(java.lang.Object)
+        */
+       @Override
+       public boolean equals(Object obj) {
+               if (this == obj) {
+                       return true;
+               }
+
+               if (getClass() != obj.getClass()) {
+                       return false;
+               }
+
+               XXPolicyRefDataMaskType other = (XXPolicyRefDataMaskType) obj;
+
+               return super.equals(obj) &&
+                          Objects.equals(id, other.id) &&
+                          Objects.equals(policyId, other.policyId) &&
+                          Objects.equals(dataMaskDefId, other.dataMaskDefId) &&
+                          Objects.equals(dataMaskTypeName, 
other.dataMaskTypeName);
+       }
+
+       /* (non-Javadoc)
+        * @see java.lang.Object#toString()
+        */
+       @Override
+       public String toString() {
+               return "XXPolicyRefDataMaskType [" + super.toString() + " id=" 
+ id + ", policyId=" + policyId + ", dataMaskDefId="
+                               + dataMaskDefId + ", dataMaskTypeName=" + 
dataMaskTypeName + "]";
+       }
+
+
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ranger/blob/d424b1a8/security-admin/src/main/java/org/apache/ranger/entity/XXPolicyRefGroup.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/java/org/apache/ranger/entity/XXPolicyRefGroup.java 
b/security-admin/src/main/java/org/apache/ranger/entity/XXPolicyRefGroup.java
new file mode 100644
index 0000000..32a1b9f
--- /dev/null
+++ 
b/security-admin/src/main/java/org/apache/ranger/entity/XXPolicyRefGroup.java
@@ -0,0 +1,206 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.ranger.entity;
+
+import java.io.Serializable;
+import java.util.Objects;
+
+import javax.persistence.Cacheable;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.SequenceGenerator;
+import javax.persistence.Table;
+import javax.xml.bind.annotation.XmlRootElement;
+
+
+/**
+ * The persistent class for the x_policy_ref_group database table.
+ * 
+ */
+@Entity
+@Cacheable
+@XmlRootElement
+@Table(name="x_policy_ref_group")
+public class XXPolicyRefGroup extends XXDBBase implements Serializable {
+
+       private static final long serialVersionUID = 1L;
+       /**
+        * id of the XXPolicyRefGroup
+        * <ul>
+        * </ul>
+        *
+        */
+       @Id
+       @SequenceGenerator(name = "x_policy_ref_group_SEQ", sequenceName = 
"x_policy_ref_group_SEQ", allocationSize = 1)
+       @GeneratedValue(strategy = GenerationType.AUTO, generator = 
"x_policy_ref_group_SEQ")
+       @Column(name = "id")
+       protected Long id;
+
+       /**
+        * policyId of the XXPolicyRefGroup
+        * <ul>
+        * </ul>
+        *
+        */
+       @Column(name = "policy_id")
+       protected Long policyId;
+
+       /**
+        * groupId of the XXPolicyRefGroup
+        * <ul>
+        * </ul>
+        *
+        */
+       @Column(name = "group_id")
+       protected Long groupId;
+
+       /**
+        * groupName of the XXPolicyRefGroup
+        * <ul>
+        * </ul>
+        *
+        */
+       @Column(name = "group_name")
+       protected String groupName;
+
+       /**
+        * This method sets the value to the member attribute <b> id</b> . You
+        * cannot set null to the attribute.
+        *
+        * @param id
+        *            Value to set member attribute <b> id</b>
+        */
+       public void setId(Long id) {
+               this.id = id;
+       }
+
+       /**
+        * Returns the value for the member attribute <b>id</b>
+        *
+        * @return Date - value of member attribute <b>id</b> .
+        */
+       public Long getId() {
+               return this.id;
+       }
+
+       /**
+        * This method sets the value to the member attribute <b> policyId</b> .
+        * You cannot set null to the attribute.
+        *
+        * @param policyId
+        *            Value to set member attribute <b> policyId</b>
+        */
+       public void setPolicyId(Long policyId) {
+               this.policyId = policyId;
+       }
+
+       /**
+        * Returns the value for the member attribute <b>policyId</b>
+        *
+        * @return Date - value of member attribute <b>policyId</b> .
+        */
+       public Long getPolicyId() {
+               return this.policyId;
+       }
+
+       /**
+        * This method sets the value to the member attribute <b> groupId</b> .
+        * You cannot set null to the attribute.
+        *
+        * @param groupId
+        *            Value to set member attribute <b> groupId</b>
+        */
+       public void setGroupId(Long groupId) {
+               this.groupId = groupId;
+       }
+
+       /**
+        * Returns the value for the member attribute <b>groupId</b>
+        *
+        * @return Date - value of member attribute <b>groupId</b> .
+        */
+       public Long getGroupId() {
+               return groupId;
+       }
+
+       /**
+        * This method sets the value to the member attribute <b> groupName</b> 
.
+        * You cannot set null to the attribute.
+        *
+        * @param groupName
+        *            Value to set member attribute <b> groupName</b>
+        */
+       public void setGroupName(String groupName) {
+               this.groupName = groupName;
+       }
+
+       /**
+        * Returns the value for the member attribute <b>groupName</b>
+        *
+        * @return Date - value of member attribute <b>groupName</b> .
+        */
+       public String getGroupName() {
+               return groupName;
+       }
+
+       @Override
+       public int hashCode() {
+               return Objects.hash(super.hashCode(), id, policyId, groupId, 
groupName);
+       }
+
+       /*
+        * (non-Javadoc)
+        *
+        * @see java.lang.Object#equals(java.lang.Object)
+        */
+       @Override
+       public boolean equals(Object obj) {
+               if (this == obj) {
+                       return true;
+               }
+
+               if (getClass() != obj.getClass()) {
+                       return false;
+               }
+
+               XXPolicyRefGroup other = (XXPolicyRefGroup) obj;
+
+               return super.equals(obj) &&
+                          Objects.equals(id, other.id) &&
+                          Objects.equals(policyId, other.policyId) &&
+                          Objects.equals(groupId, other.groupId) &&
+                          Objects.equals(groupName, other.groupName);
+       }
+
+       /*
+        * (non-Javadoc)
+        *
+        * @see java.lang.Object#toString()
+        */
+       @Override
+       public String toString() {
+               return "XXPolicyRefGroup [" + super.toString() + " id=" + id + 
", policyId=" + policyId + ", groupId=" + groupId
+                               + ", groupName=" + groupName + "]";
+       }
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ranger/blob/d424b1a8/security-admin/src/main/java/org/apache/ranger/entity/XXPolicyRefResource.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/java/org/apache/ranger/entity/XXPolicyRefResource.java
 
b/security-admin/src/main/java/org/apache/ranger/entity/XXPolicyRefResource.java
new file mode 100644
index 0000000..1150646
--- /dev/null
+++ 
b/security-admin/src/main/java/org/apache/ranger/entity/XXPolicyRefResource.java
@@ -0,0 +1,191 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.ranger.entity;
+
+import javax.persistence.*;
+import javax.xml.bind.annotation.XmlRootElement;
+import java.util.Objects;
+
+@Entity
+@Cacheable
+@XmlRootElement
+@Table(name = "x_policy_ref_resource")
+public class XXPolicyRefResource extends XXDBBase implements
+               java.io.Serializable {
+       private static final long serialVersionUID = 1L;
+       /**
+        * id of the XXPolicyRefResource
+        * <ul>
+        * </ul>
+        *
+        */
+       @Id
+       @SequenceGenerator(name = "x_policy_ref_resource_SEQ", sequenceName = 
"x_policy_ref_resource_SEQ", allocationSize = 1)
+       @GeneratedValue(strategy = GenerationType.AUTO, generator = 
"x_policy_ref_resource_SEQ")
+       @Column(name = "id")
+       protected Long id;
+
+       /**
+        * policyId of the XXPolicyRefResource
+        * <ul>
+        * </ul>
+        *
+        */
+       @Column(name = "policy_id")
+       protected Long policyId;
+
+       /**
+        * resourceDefId of the XXPolicyRefResource
+        * <ul>
+        * </ul>
+        *
+        */
+       @Column(name = "resource_def_id")
+       protected Long resourceDefId;
+
+       /**
+        * resource_name of the XXPolicyRefResource
+        * <ul>
+        * </ul>
+        *
+        */
+       @Column(name = "resource_name")
+       protected String resourceName;
+
+       /**
+        * This method sets the value to the member attribute <b> id</b> . You
+        * cannot set null to the attribute.
+        *
+        * @param id
+        *            Value to set member attribute <b> id</b>
+        */
+       public void setId(Long id) {
+               this.id = id;
+       }
+
+       /**
+        * Returns the value for the member attribute <b>id</b>
+        *
+        * @return Date - value of member attribute <b>id</b> .
+        */
+       public Long getId() {
+               return this.id;
+       }
+
+       /**
+        * This method sets the value to the member attribute <b> policyId</b> .
+        * You cannot set null to the attribute.
+        *
+        * @param policyId
+        *            Value to set member attribute <b> policyId</b>
+        */
+       public void setPolicyId(Long policyId) {
+               this.policyId = policyId;
+       }
+
+       /**
+        * Returns the value for the member attribute <b>policyId</b>
+        *
+        * @return Date - value of member attribute <b>policyId</b> .
+        */
+       public Long getPolicyId() {
+               return this.policyId;
+       }
+
+       /**
+        * This method sets the value to the member attribute <b> 
resourceDefId</b> .
+        * You cannot set null to the attribute.
+        *
+        * @param resourceDefId
+        *            Value to set member attribute <b> resourceDefId</b>
+        */
+       public void setResourceDefId(Long resourceDefId) {
+               this.resourceDefId = resourceDefId;
+       }
+
+       /**
+        * Returns the value for the member attribute <b>resourceDefId</b>
+        *
+        * @return Date - value of member attribute <b>resourceDefId</b> .
+        */
+       public Long getResourceDefId() {
+               return resourceDefId;
+       }
+
+       /**
+        * This method sets the value to the member attribute <b> 
resource_name</b> .
+        * You cannot set null to the attribute.
+        *
+        * @param resourceName
+        *            Value to set member attribute <b> resource_name</b>
+        */
+       public void setResourceName(String resourceName) {
+               this.resourceName = resourceName;
+       }
+
+       /**
+        * Returns the value for the member attribute <b>resourceName</b>
+        *
+        * @return Date - value of member attribute <b>resourceName</b> .
+        */
+       public String getResourceName() {
+               return resourceName;
+       }
+
+       @Override
+       public int hashCode() {
+               return Objects.hash(super.hashCode(), id, policyId, 
resourceDefId, resourceName);
+       }
+
+       /*
+        * (non-Javadoc)
+        *
+        * @see java.lang.Object#equals(java.lang.Object)
+        */
+       @Override
+       public boolean equals(Object obj) {
+               if (this == obj) {
+                       return true;
+               }
+
+               if (getClass() != obj.getClass()) {
+                       return false;
+               }
+
+               XXPolicyRefResource other = (XXPolicyRefResource) obj;
+
+               return super.equals(obj) &&
+                          Objects.equals(id, other.id) &&
+                          Objects.equals(policyId, other.policyId) &&
+                          Objects.equals(resourceDefId, other.resourceDefId) &&
+                          Objects.equals(resourceName, other.resourceName);
+       }
+
+       /* (non-Javadoc)
+        * @see java.lang.Object#toString()
+        */
+       @Override
+       public String toString() {
+               return "XXPolicyRefResource [" + super.toString() + " id=" + id 
+ ", policyId=" + policyId + ", resourceDefId="
+                               + resourceDefId + ", resource_name=" + 
resourceName + "]";
+       }
+
+
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ranger/blob/d424b1a8/security-admin/src/main/java/org/apache/ranger/entity/XXPolicyRefUser.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/java/org/apache/ranger/entity/XXPolicyRefUser.java 
b/security-admin/src/main/java/org/apache/ranger/entity/XXPolicyRefUser.java
new file mode 100644
index 0000000..8dfb928
--- /dev/null
+++ b/security-admin/src/main/java/org/apache/ranger/entity/XXPolicyRefUser.java
@@ -0,0 +1,191 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.ranger.entity;
+
+import javax.persistence.*;
+import javax.xml.bind.annotation.XmlRootElement;
+import java.util.Objects;
+
+@Entity
+@Cacheable
+@XmlRootElement
+@Table(name = "x_policy_ref_user")
+public class XXPolicyRefUser extends XXDBBase implements
+               java.io.Serializable {
+       private static final long serialVersionUID = 1L;
+       /**
+        * id of the XXPolicyRefUser
+        * <ul>
+        * </ul>
+        *
+        */
+       @Id
+       @SequenceGenerator(name = "x_policy_ref_user_SEQ", sequenceName = 
"x_policy_ref_user_SEQ", allocationSize = 1)
+       @GeneratedValue(strategy = GenerationType.AUTO, generator = 
"x_policy_ref_user_SEQ")
+       @Column(name = "id")
+       protected Long id;
+
+       /**
+        * policyId of the XXPolicyRefUser
+        * <ul>
+        * </ul>
+        *
+        */
+       @Column(name = "policy_id")
+       protected Long policyId;
+
+       /**
+        * userId of the XXPolicyRefUser
+        * <ul>
+        * </ul>
+        *
+        */
+       @Column(name = "user_id")
+       protected Long userId;
+
+       /**
+        * userName of the XXPolicyRefUser
+        * <ul>
+        * </ul>
+        *
+        */
+       @Column(name = "user_name")
+       protected String userName;
+
+       /**
+        * This method sets the value to the member attribute <b> id</b> . You
+        * cannot set null to the attribute.
+        *
+        * @param id
+        *            Value to set member attribute <b> id</b>
+        */
+       public void setId(Long id) {
+               this.id = id;
+       }
+
+       /**
+        * Returns the value for the member attribute <b>id</b>
+        *
+        * @return Date - value of member attribute <b>id</b> .
+        */
+       public Long getId() {
+               return this.id;
+       }
+
+       /**
+        * This method sets the value to the member attribute <b> policyId</b> .
+        * You cannot set null to the attribute.
+        *
+        * @param policyId
+        *            Value to set member attribute <b> policyId</b>
+        */
+       public void setPolicyId(Long policyId) {
+               this.policyId = policyId;
+       }
+
+       /**
+        * Returns the value for the member attribute <b>policyId</b>
+        *
+        * @return Date - value of member attribute <b>policyId</b> .
+        */
+       public Long getPolicyId() {
+               return this.policyId;
+       }
+
+       /**
+        * This method sets the value to the member attribute <b> userId</b> .
+        * You cannot set null to the attribute.
+        *
+        * @param userId
+        *            Value to set member attribute <b> userId</b>
+        */
+       public void setUserId(Long userId) {
+               this.userId = userId;
+       }
+
+       /**
+        * Returns the value for the member attribute <b>userId</b>
+        *
+        * @return Date - value of member attribute <b>userId</b> .
+        */
+       public Long getUserId() {
+               return userId;
+       }
+
+       /**
+        * This method sets the value to the member attribute <b> userName</b> .
+        * You cannot set null to the attribute.
+        *
+        * @param userName
+        *            Value to set member attribute <b> userName</b>
+        */
+       public void setUserName(String userName) {
+               this.userName = userName;
+       }
+
+       /**
+        * Returns the value for the member attribute <b>userName</b>
+        *
+        * @return Date - value of member attribute <b>userName</b> .
+        */
+       public String getUserName() {
+               return userName;
+       }
+
+       @Override
+       public int hashCode() {
+               return Objects.hash(super.hashCode(), id, policyId, userId, 
userName);
+       }
+
+       /*
+        * (non-Javadoc)
+        *
+        * @see java.lang.Object#equals(java.lang.Object)
+        */
+       @Override
+       public boolean equals(Object obj) {
+               if (this == obj) {
+                       return true;
+               }
+
+               if (getClass() != obj.getClass()) {
+                       return false;
+               }
+
+               XXPolicyRefUser other = (XXPolicyRefUser) obj;
+
+               return super.equals(obj) &&
+                          Objects.equals(id, other.id) &&
+                          Objects.equals(policyId, other.policyId) &&
+                          Objects.equals(userId, other.userId) &&
+                          Objects.equals(userName, other.userName);
+       }
+
+       /* (non-Javadoc)
+        * @see java.lang.Object#toString()
+        */
+       @Override
+       public String toString() {
+               return "XXPolicyRefUser [" + super.toString() + " id=" + id + 
", policyId=" + policyId + ", userId="
+                               + userId + ", userName=" + userName +  "]";
+       }
+
+
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ranger/blob/d424b1a8/security-admin/src/main/java/org/apache/ranger/entity/XXServiceResource.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/java/org/apache/ranger/entity/XXServiceResource.java 
b/security-admin/src/main/java/org/apache/ranger/entity/XXServiceResource.java
index 961627a..c784830 100644
--- 
a/security-admin/src/main/java/org/apache/ranger/entity/XXServiceResource.java
+++ 
b/security-admin/src/main/java/org/apache/ranger/entity/XXServiceResource.java
@@ -63,6 +63,12 @@ public class XXServiceResource extends XXDBBase implements 
Serializable {
        @Column(name = "service_id")
        protected Long serviceId;
 
+       @Column(name = "service_resource_elements_text")
+       protected String serviceResourceElements;
+
+       @Column(name = "tags_text")
+       protected String tags;
+
        @Override
        public void setId(Long id) {
                this.id = id;
@@ -148,6 +154,16 @@ public class XXServiceResource extends XXDBBase implements 
Serializable {
                this.isEnabled = isEnabled;
        }
 
+       public String getServiceResourceElements() { return 
serviceResourceElements; }
+
+       public void setServiceResourceElements(String serviceResourceElements) {
+               this.serviceResourceElements = serviceResourceElements;
+       }
+
+       public String getTags() { return tags; }
+
+       public void setTags(String tags) { this.tags = tags; }
+
        @Override
        public int getMyClassType() {
                return AppConstants.CLASS_TYPE_XA_SERVICE_RESOURCE;
@@ -168,6 +184,8 @@ public class XXServiceResource extends XXDBBase implements 
Serializable {
                result = prime * result + ((isEnabled == null) ? 0 : 
isEnabled.hashCode());
                result = prime * result + ((resourceSignature == null) ? 0 : 
resourceSignature.hashCode());
                result = prime * result + ((serviceId == null) ? 0 : 
serviceId.hashCode());
+               result = prime * result + ((serviceResourceElements == null) ? 
0 : serviceResourceElements.hashCode());
+               result = prime * result + ((tags == null) ? 0 : 
tags.hashCode());
                return result;
        }
 
@@ -215,6 +233,16 @@ public class XXServiceResource extends XXDBBase implements 
Serializable {
                                return false;
                } else if (!version.equals(other.version))
                        return false;
+               if (serviceResourceElements == null) {
+                       if (other.serviceResourceElements != null)
+                               return false;
+               } else if 
(!serviceResourceElements.equals(other.serviceResourceElements))
+                       return false;
+               if (tags == null) {
+                       if (other.tags != null)
+                               return false;
+               } else if (!tags.equals(other.tags))
+                       return false;
                return true;
        }
 
@@ -239,6 +267,8 @@ public class XXServiceResource extends XXDBBase implements 
Serializable {
                sb.append("isEnabled={").append(isEnabled).append("} ");
                
sb.append("resourceSignature={").append(resourceSignature).append("} ");
                sb.append("serviceId={").append(serviceId).append("} ");
+               
sb.append("serviceResourceElements={").append(serviceResourceElements).append("}
 ");
+               sb.append("tags={").append(tags).append("} ");
                sb.append(" }");
 
                return sb;

http://git-wip-us.apache.org/repos/asf/ranger/blob/d424b1a8/security-admin/src/main/java/org/apache/ranger/entity/XXTag.java
----------------------------------------------------------------------
diff --git a/security-admin/src/main/java/org/apache/ranger/entity/XXTag.java 
b/security-admin/src/main/java/org/apache/ranger/entity/XXTag.java
index d26a0b0..9d5eb61 100644
--- a/security-admin/src/main/java/org/apache/ranger/entity/XXTag.java
+++ b/security-admin/src/main/java/org/apache/ranger/entity/XXTag.java
@@ -63,6 +63,9 @@ public class XXTag extends XXDBBase implements Serializable {
        @Column(name = "policy_options")
        protected String options;
 
+       @Column(name = "tag_attrs_text")
+       protected String tagAttrs;
+
        @Override
        public void setId(Long id) {
                this.id = id;
@@ -129,6 +132,10 @@ public class XXTag extends XXDBBase implements 
Serializable {
                return this.options;
        }
 
+       public String getTagAttrs() { return tagAttrs; }
+
+       public void setTagAttrs(String tagAttrs) { this.tagAttrs = tagAttrs; }
+
     @Override
        public int getMyClassType() {
                return AppConstants.CLASS_TYPE_XA_TAG;
@@ -149,6 +156,7 @@ public class XXTag extends XXDBBase implements Serializable 
{
                result = prime * result + ((type == null) ? 0 : 
type.hashCode());
                result = prime * result + ((owner == null) ? 0 : 
owner.hashCode());
                result = prime * result + ((options == null) ? 0 : 
options.hashCode());
+               result = prime * result + ((tagAttrs == null) ? 0 : 
tagAttrs.hashCode());
                return result;
        }
 
@@ -195,6 +203,11 @@ public class XXTag extends XXDBBase implements 
Serializable {
                        if (other.options != null)
                                return false;
                } else if (!options.equals(other.options))
+
+               if (tagAttrs == null) {
+                       if (other.tagAttrs != null)
+                               return false;
+               } else if (!tagAttrs.equals(other.tagAttrs))
                        return false;
                return true;
        }
@@ -219,6 +232,7 @@ public class XXTag extends XXDBBase implements Serializable 
{
                sb.append("type={").append(type).append("} ");
                sb.append("owned_by={").append(owner).append("} ");
                sb.append("options={").append(options).append("} ");
+               sb.append("tagAttrs={").append(tagAttrs).append("} ");
                sb.append(" }");
 
                return sb;

http://git-wip-us.apache.org/repos/asf/ranger/blob/d424b1a8/security-admin/src/main/java/org/apache/ranger/entity/XXTagDef.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/java/org/apache/ranger/entity/XXTagDef.java 
b/security-admin/src/main/java/org/apache/ranger/entity/XXTagDef.java
index 818908b..88a7633 100644
--- a/security-admin/src/main/java/org/apache/ranger/entity/XXTagDef.java
+++ b/security-admin/src/main/java/org/apache/ranger/entity/XXTagDef.java
@@ -63,6 +63,9 @@ public class XXTagDef extends XXDBBase implements 
Serializable {
        @Column(name = "source")
        protected String source;
 
+       @Column(name = "tag_attrs_def_text")
+       protected String tagAttrDefs;
+
        /**
         * @return the guid
         */
@@ -138,6 +141,10 @@ public class XXTagDef extends XXDBBase implements 
Serializable {
                this.source = source;
        }
 
+       public String getTagAttrDefs() { return tagAttrDefs; }
+
+       public void setTagAttrDefs(String tagAttrDefs) { this.tagAttrDefs = 
tagAttrDefs; }
+
        @Override
        public void setId(Long id) {
                this.id = id;
@@ -168,6 +175,7 @@ public class XXTagDef extends XXDBBase implements 
Serializable {
                result = prime * result + ((name == null) ? 0 : 
name.hashCode());
                result = prime * result + ((source == null) ? 0 : 
source.hashCode());
                result = prime * result + ((version == null) ? 0 : 
version.hashCode());
+               result = prime * result + ((tagAttrDefs == null) ? 0 : 
tagAttrDefs.hashCode());
                return result;
        }
 
@@ -215,6 +223,11 @@ public class XXTagDef extends XXDBBase implements 
Serializable {
                                return false;
                } else if (!version.equals(other.version))
                        return false;
+               if (tagAttrDefs == null) {
+                       if (other.tagAttrDefs != null)
+                               return false;
+               } else if (!tagAttrDefs.equals(other.tagAttrDefs))
+                       return false;
                return true;
        }
 
@@ -239,6 +252,7 @@ public class XXTagDef extends XXDBBase implements 
Serializable {
                sb.append("isEnabled={").append(isEnabled).append("} ");
                sb.append("source={").append(source).append("} ");
                sb.append("name={").append(name).append("} ");
+               sb.append("tagAttrDefs={").append(tagAttrDefs).append("} ");
                sb.append(" }");
 
                return sb;

Reply via email to