Class STSHomeViewBeanModelImpl

  • All Implemented Interfaces:
    AMAdminConstants, AMModel, STSHomeViewBeanModel

    public class STSHomeViewBeanModelImpl
    extends AMModelBase
    implements STSHomeViewBeanModel
    This class is a bit of a 'tricky move': the STSHomeViewBean needs a single model, but needs to represent state from two services - the rest and soap sts. So the STSInstanceModel interface provides functionality to satisfy the STSHomeViewBean, and the rest and soap create and add view beans. Ultimately, both the RestSTSInstanceModel and the SoapSTSInstanceModel will get the bulk of their functionality from the STSInstanceModelBase, which extends the AMServiceProfileModelImpl class, thereby providing the functionality to harvest property-sheet state, and turn it into the Map<String, Set<String>> format which can be POSTed or PUT to sts-publish/rest or sts-publish/soap to create/update rest/soap instances. However, the page in the STS pane which displays the table of both rest and soap sts instances, which is handled by the STSHomeViewBean, also needs a AMModel implementation, one which can satisfy referencing two services. This class satisfies this need, but delegates the work to either the restSTSInstanceModel or the soapSTSInstanceModel. Note also that the Rest- and Soap- specific edit and add ViewBean classes do not return an instance of this class from getModelInternal, but rather an instance of the RestSTSInstanceModel or the SoapSTSInstanceModel, as these extend the AMServiceProfileModelImpl class, which is necessary to represent a service instance.