1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | 1 <?xml version="1.0" encoding="UTF-8"?> 2 <privacy-policy-config> 3 4 <data-policy-suite> 5 <data-policy-name>1</data-policy-name> 6 <public-display-role>1,2,3,4</public-display-role> 7 <private-display-role>2,3</private-display-role> 8 </data-policy-suite> 9 10 <data-policy-suite> 11 <data-policy-name>2</data-policy-name> 12 <public-display-role>1,2,3</public-display-role> 13 <private-display-role>1,2,3</private-display-role> 14 </data-policy-suite> 15 16 <privacy-policy-suite> 17 <country-list>Germany, France, UK</country-list> 18 <data-policy-name>1</data-policy-name> 19 </privacy-policy-suite> 20 21 <privacy-policy-suite> 22 < country-list >China, US, </ country-list > 23 <data-policy-name>2</data-policy-name> 24 </privacy-policy-suite> 25 26 </privacy-policy-config> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | 1 /** Filter the friendList by display policies 2 * @param friendList the friendList needs to be filtered 3 * @return a friendList that fulfills privacy policies 4 */ 5 public static List<String> filterByPP(List<String> friendList, String dataType){ 6 List<String> retList = new ArrayList<String>(); 7 for(String email: friendList){ 8 String country = null; 9 try{ 10 country = FBUtils.getCountry(email); 11 }catch (IOException e){ 12 e.printStackTrace(); 13 } 14 Set<Integer> displayRoleSet = new HashSet<Integer>(); 15 displayRoleSet = FBUtils.getDisplayRoleSet(country, dataType); 16 if(0 == displayRoleSet.size()){ 17 System.err.println("no display role"); 18 continue; //no information should be displayed 19 } 20 int userRole = 0; 21 try{ 22 userRole = FBUtils.getRole(email); 23 24 }catch(IOException e){ 25 e.printStackTrace(); 26 } 27 if(displayRoleSet.contains(userRole)){ 28 retList.add(email); 29 } 30 } 31 return retList; 32 } |
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) | Powered by Discuz! 7.0.0 |