JBoss.orgCommunity Documentation
ActivityBuilder is one class which is used to get values of ExoSocialActivity to set to UIActivity for displaying. Social provides the BaseUIActivityBuilder class for developers to extend and customize their own activity builder easily and properly.
For example, to write your own UILinkActivityBuilder, you just need to extend BaseUIActivityBuilder and then customize attributes and behaviors of the activity builder as below.
public class UILinkActivityBuilder extends BaseUIActivityBuilder {
private static final Log LOG = ExoLogger.getLogger(UILinkActivityBuilder.class);
@Override
protected void extendUIActivity(BaseUIActivity uiActivity, ExoSocialActivity activity) {
UILinkActivity uiLinkActivity = (UILinkActivity) uiActivity;
Map<String, String> templateParams = activity.getTemplateParams();
uiLinkActivity.setLinkSource(templateParams.get(UILinkActivityComposer.LINK_PARAM));
uiLinkActivity.setLinkTitle(templateParams.get(UILinkActivityComposer.TITLE_PARAM));
uiLinkActivity.setLinkImage(templateParams.get(UILinkActivityComposer.IMAGE_PARAM));
uiLinkActivity.setLinkDescription(templateParams.get(UILinkActivityComposer.DESCRIPTION_PARAM));
uiLinkActivity.setLinkComment(templateParams.get(UILinkActivityComposer.COMMENT_PARAM));
}
}
To learn more about ActivityBuilder, refer to the BaseUIActivity class.