...
- Discuss which channels would be important to support and why
- Provide links where the channel source can be found (or uploading it to attachment), and describing basic installations procedures in uPortal2
- Discuss problems and solutions associated with porting individual channels
UBC Webmail
- org.jasig.portal.channels.webmail.security.IOpaqueCredentials is referenced from UBC webmail code. This interface stores password or passphrase information for authentication. We need some replacement for this. Currently(up3-rc1) uP3 does not provide a way to store credentials. This might be an important requirement for multiserver authentication. The related classes in UBC webmail are CachedMultiServerAuthentication, CachedCredentialsAuthentication etc.
- In RUTGERS sepcific case we need to get the location of the user since we have three main campuses located physically far from each other. The PersonImpl is used to get the location of the user that gets populated from the ldap.
- PortalControlStructures is referenced. This object is passed to special channels.
- PortalSessionManager e.g. PortalSessionManager.IDEMPOTENT_URL_TAG
- org.jasig.portal.utils.XML e.g. XML.serializeNode(doc);
Replacements:
Refactor your code to use following replacement
Old package or Service | Replacement | Example usage old | Example usage New | What you need |
---|---|---|---|---|
|
|
|
|
|
org.jasig.portal.groups.IEntityGroup | org.jasig.gap.groups.IEntityGroup |
|
| gap-full.jar |
org.jasig.portal.groups.IGroupMember | org.jasig.gap.groups.IGroupMember |
|
| gap-full.jar |
org.jasig.portal.services.AuthorizationService | org.jasig.gap.permissions.IAuthorizationService; | IGroupMember me = AuthorizationService.instance() | IAuthorizationPrincipal authPrinc = groupsManagerBean.getAuthorizationService().newPrincipal(groupsManagerBean.getUserController().getUser().getUserName(), IUserId.class); |
|
org.jasig.portal.services.GroupService; | org.jasig.gap.groups.ICompositeGroupService; | IEntityGroup admin = GroupService .getDistinguishedGroup(GroupService.PORTAL_ADMINISTRATORS); | IEntityGroup admin = groupsManagerBean.getCompositeGroupService().getDistinguishedGroup(IDistinguishedGroupConstants.PORTAL_ADMINISTRATORS); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Announcements (both versions)
...
Servants (generic, groups, permissions, address book)
Helpdesk channel (http://esup-helpdesk.sourceforge.net
...
)
Bookmarks
Local connection context requirements (CAS)
Cornell Runtime Information channel
WebCT channels
Rutgers channels
We at Rutgers tried to port our channels to uP3 and got into following issues
Compilation Errors because of some missing API
Following is the list of Classes that are required but not there.
- org.jasig.portal.RDBMServices;
- org.jasig.portal.channels.AbstractMultiThreadedCacheable;
- org.jasig.portal.security.IPerson;
- org.jasig.portal.security.provider.PersonImpl;
org.jasig.portal.IBasicEntity:
This interface is refactored to gap project. In uP2 code base this interface is referenced in lot of places such as IEntityCache, ChannelDefinition, EntityIdentifier, Entity types,
Compiliation Errors because of some missing jars
- tidy.jar
- whirlycache-1.0.1.jar