Previous | Next
WireHose Developers Guide

Multiple affiliates

WireHose has special support for creating and deploying large numbers of re-branded portals sharing some common resources, as for example in an application service provider environment, community publishing, or higher education.

WireHose provides built-in support for handling multiple sites from a single set of databases via subentities. Most WireHose base entities, such as WHTag, WHTagFetcherFactory, WHUser, etc., have an affiliate property, which is used to identify to which affiliate a particular object belongs. The current affiliate name is controlled by the WHDefaultAffiliate property

For large deployments, WireHose can make extensive use of entity inheritance, taking advantage of the fact if an entity is not visible at runtime, any database rows described that entity are simply unavailable to the application. This is a simple but effective way to partition objects between separate application instances which share identical codebases and differ only in configuration files or launch arguments.

For example, if you are deploying multiple news portals, users connecting to the Seattle portal should only see Seattle-area traffic cams, and Portland users should only see Portland-area traffic cams, but both should have access to national newsfeeds. WHEnterpriseObject provides several methods for dynamically creating subentities at runtime, so you don't have to manually model many common types of inheritance in EOModeler.

Refer to these sections

Previous | Next