Liferay get Organization by using User or get All Organizations in liferay database
2012-11-14 06:40
459 查看
This blog is just used to record methods I wrote, but they're useless for my project now. In case I need to use them in the future, I record them in the blog.
//In our MVCPortlet, we can get RenderRequest, when we get RenderRequest, we can get user and get user's organization hierarchy.
public static List<String> getTwitterScreenNames(RenderRequest renderRequest) {
List<String> twitterScreenNames = new ArrayList<String>();
ThemeDisplay themeDisplay = (ThemeDisplay) renderRequest
.getAttribute(WebKeys.THEME_DISPLAY);
long userId = themeDisplay.getUserId();
try {
List<Organization> orgs = OrganizationLocalServiceUtil
.getUserOrganizations(userId);
for (Organization org : orgs) {
ExpandoBridge bridge = org.getExpandoBridge();
String screenName = (String) ExpandoValueLocalServiceUtil
.getData(bridge.getClassName(),
ExpandoTableConstants.DEFAULT_TABLE_NAME,
"twitter", org.getPrimaryKey());
twitterScreenNames.add(screenName);
while (org.getParentOrganizationId() != 0) {
org = org.getParentOrganization();
bridge = org.getExpandoBridge();
screenName = (String) ExpandoValueLocalServiceUtil.getData(
bridge.getClassName(),
ExpandoTableConstants.DEFAULT_TABLE_NAME,
"twitter", org.getPrimaryKey());
twitterScreenNames.add(screenName);
}
}
} catch (PortalException e) {
e.printStackTrace();
} catch (SystemException e) {
e.printStackTrace();
}
return twitterScreenNames;
}
//This method is to get all organization in liferay database.
public static List<String> getAllTwitterScreenNames()
throws SystemException, PortalException {
List<String> twitterScreenNames = new ArrayList<String>();
List<Organization> orgs = OrganizationLocalServiceUtil
.getOrganizations(QueryUtil.ALL_POS, QueryUtil.ALL_POS);
for (Organization org : orgs) {
ExpandoBridge bridge = org.getExpandoBridge();
if (bridge.hasAttribute("twitter")) {
String screenName = (String) ExpandoValueLocalServiceUtil
.getData(bridge.getClassName(),
ExpandoTableConstants.DEFAULT_TABLE_NAME,
"twitter", org.getPrimaryKey());
twitterScreenNames.add(screenName);
while (org.getParentOrganizationId() != 0) {
org = org.getParentOrganization();
bridge = org.getExpandoBridge();
screenName = (String) ExpandoValueLocalServiceUtil.getData(
bridge.getClassName(),
ExpandoTableConstants.DEFAULT_TABLE_NAME,
"twitter", org.getPrimaryKey());
twitterScreenNames.add(screenName);
}
}
}
return twitterScreenNames;
}
//In our MVCPortlet, we can get RenderRequest, when we get RenderRequest, we can get user and get user's organization hierarchy.
public static List<String> getTwitterScreenNames(RenderRequest renderRequest) {
List<String> twitterScreenNames = new ArrayList<String>();
ThemeDisplay themeDisplay = (ThemeDisplay) renderRequest
.getAttribute(WebKeys.THEME_DISPLAY);
long userId = themeDisplay.getUserId();
try {
List<Organization> orgs = OrganizationLocalServiceUtil
.getUserOrganizations(userId);
for (Organization org : orgs) {
ExpandoBridge bridge = org.getExpandoBridge();
String screenName = (String) ExpandoValueLocalServiceUtil
.getData(bridge.getClassName(),
ExpandoTableConstants.DEFAULT_TABLE_NAME,
"twitter", org.getPrimaryKey());
twitterScreenNames.add(screenName);
while (org.getParentOrganizationId() != 0) {
org = org.getParentOrganization();
bridge = org.getExpandoBridge();
screenName = (String) ExpandoValueLocalServiceUtil.getData(
bridge.getClassName(),
ExpandoTableConstants.DEFAULT_TABLE_NAME,
"twitter", org.getPrimaryKey());
twitterScreenNames.add(screenName);
}
}
} catch (PortalException e) {
e.printStackTrace();
} catch (SystemException e) {
e.printStackTrace();
}
return twitterScreenNames;
}
//This method is to get all organization in liferay database.
public static List<String> getAllTwitterScreenNames()
throws SystemException, PortalException {
List<String> twitterScreenNames = new ArrayList<String>();
List<Organization> orgs = OrganizationLocalServiceUtil
.getOrganizations(QueryUtil.ALL_POS, QueryUtil.ALL_POS);
for (Organization org : orgs) {
ExpandoBridge bridge = org.getExpandoBridge();
if (bridge.hasAttribute("twitter")) {
String screenName = (String) ExpandoValueLocalServiceUtil
.getData(bridge.getClassName(),
ExpandoTableConstants.DEFAULT_TABLE_NAME,
"twitter", org.getPrimaryKey());
twitterScreenNames.add(screenName);
while (org.getParentOrganizationId() != 0) {
org = org.getParentOrganization();
bridge = org.getExpandoBridge();
screenName = (String) ExpandoValueLocalServiceUtil.getData(
bridge.getClassName(),
ExpandoTableConstants.DEFAULT_TABLE_NAME,
"twitter", org.getPrimaryKey());
twitterScreenNames.add(screenName);
}
}
}
return twitterScreenNames;
}
相关文章推荐
- Autogrow of file '******' in database '******' was cancelled by user or timed out after ****** milli
- Get tasks assigned to user or to current user groups in SharePoint using CAML query
- How to determine who is logged on to a database by using Microsoft Jet UserRoster in Access 2000
- get all rows count of all tables in a mysql database.
- SQL: How to get a series of dates in sql using connect by
- How to identify all the Corrupted Objects in the Database reported by RMAN
- How to use insert or retrieve data by using Core Data in iOS
- Oracle by Example - Oracle Database 10g Release 2 on a Single Database Instance (All In One CHM)
- Dive to Liferay Organization Custom Field and logo stored in Database
- Django: Filter ModelChoiceField by user(or other args in view)
- Get size of all tables in database
- A read-only user or a user in a read-only database is not permitted to disable
- Using Timer to get history values from EDNA database, an error is prompted in the page : "Sys.WebForms.PageRequestManagerTimeout
- HIVE A read-only user or a user in a read-only database is not permitted to disable read-only mode
- How to write an application that supports the Fast User Switching feature by using Visual Basic .NET or Visual Basic
- 解决SQL Server数据库的"User, group, or role already exists in the current database"问题
- Get files automatically by using FTP in Linux environment.
- kill all user in a database, very useful
- Database.Search 和 View.GetAllDocumentByKey
- user,group,or role 'test' already exists in the current database,error 15023