async discover(restart = false) {
        if (this._discovered && restart !== true) {
            return this._discovered;
        }

        this._ensureDiscoverability();

        this._discovered = this._discoverService();
        return this._discovered;
    }
/**
     * Connects to the service and consumes its discovery if possible.
     *
     * The discovery information will be used to define the models on the given dataSource.
     *
     * @return {Promise<ServiceClient>} - the current client
     */
Connects to the service and consumes its discovery if possible.
The discovery information will be used to define the models on the given dataSource.

@return {Promise} - the current client
Connects to the service and consumes its discovery if possible . The discovery information will be used to define the models on the given dataSource . @return { Promise } - the current client
async discover(restart = false) {
        if (this._discovered && restart !== true) {
            return this._discovered;
        }
        this._ensureDiscoverability();
        this._discovered = this._discoverService();
        return this._discovered;
    }
async discover ( restart = false ) { if ( this . _discovered && restart !== true ) { return this . _discovered ; } this . _ensureDiscoverability ( ) ; this . _discovered = this . _discoverService ( ) ; return this . _discovered ; }
Connects to the service and consumes its discovery if possible.
Connects to the service and consumes its discovery if possible .