def _init_or_update_registered_service_if_needed(self):
        '''
        similar to _init_or_update_service_if_needed but we get service_registraion from registry,
        so we can update only registered services
        '''
        if (self.is_service_initialized()):
            old_reg = self._read_service_info(self.args.org_id, self.args.service_id)

            # metadataURI will be in old_reg only for service which was initilized from registry (not from metadata)
            # we do nothing for services which were initilized from metadata
            if ("metadataURI" not in old_reg):
                return

            service_registration = self._get_service_registration()
            # if metadataURI hasn't been changed we do nothing
            if (not self.is_metadataURI_has_changed(service_registration)):
                return
        else:
            service_registration = self._get_service_registration()

        service_metadata     = self._get_service_metadata_from_registry()
        self._init_or_update_service_if_needed(service_metadata, service_registration)
similar to _init_or_update_service_if_needed but we get service_registraion from registry,
        so we can update only registered services