ServiceDeploymentContributor contributor = getServiceContributor( service.getRole(), null );
if( contributor != null ) {
try {
contributor.contributeService( context, service );
if (gatewayServices != null) {
ServiceRegistry sr = (ServiceRegistry) gatewayServices.getService(GatewayServices.SERVICE_REGISTRY_SERVICE);
if (sr != null) {
String regCode = sr.getRegistrationCode(topology.getName());
sr.registerService(regCode, topology.getName(), service.getRole(), service.getUrls() );
}
}
} catch( Exception e ) {
// Maybe it makes sense to throw exception
log.failedToContributeService( service.getName(), service.getRole(), e );