switch (abstractService.getType()) {
case CASCADED_PUBLISH_SERVICE:
// publish service is cascaded
CascadedPublishService cascadedPublishService = (CascadedPublishService) abstractService;
CascadedSC cascadedSC = cascadedPublishService.getCascadedSC();
// add server to subscription
tmpCascSCSubscription.setServer(cascadedSC);
ISubscriptionCallback callback = null;
if (cscSubscription == null) {
// cascaded SC not subscribed yet
callback = new SubscribeCommandCallback(request, response, responderCallback, tmpCascSCSubscription);
} else {
// subscribe is made by an active cascaded SC
callback = new CscChangeSubscriptionCallbackForCasc(request, response, responderCallback, cscSubscription,
cscSCMaskString);
}
cascadedSC.cascadedSCSubscribe(cascadedPublishService.getCascClient(), reqMessage, callback, oti);
return;
default:
// code for other types of services is below
break;
}