@Override
    public URI addService(Service service) throws ServiceException {

        URI serviceUri = super.addService(service);
        if (serviceUri != null) {
            // Index service
            this.indexService(service);
        }

        return service.getUri();
    }
@ Override public URI addService ( Service service ) throws ServiceException { URI serviceUri = super . addService ( service ) ; if ( serviceUri != null ) { this . indexService ( service ) ; } return service . getUri ( ) ; }
Creates a Service Description in the system.
Only needs to be fed with an MSM Service description.

After successfully adding a service, implementations of this method should raise a {@code ServiceCreatedEvent}

@param service the input service description in terms of MSM
@return the URI this service description was saved to
@throws ServiceException