类名 common/service/igs/RootServer.js
import BaseServer from '../BaseServer'
import { Zondy } from '../../base'

/**
 * 根目录服务
 * @class RootServer
 * @moduleEx ServiceModule
 * @extends BaseServer
 * @param {Object} options 构造参数
 * @param {String} [options.url = 无] 服务基地址
 * @example
 * // ES5引入方式
 * const { RootServer } = Zondy.Service
 * // ES6引入方式
 * import { RootServer } from "@mapgis/webclient-common"
 * //初始化RootServer服务对象
 *     const rootServer = new RootServer({
 *       //服务基地址
 *       url: 'http://192.168.82.89:8089/igs/rest/services'
 *     })
 */
class RootServer extends BaseServer {
  constructor(options) {
    super(options)
  }

  /**
   * @function RootServer.prototype.queryRootServiceList
   * @description 查询根文件夹下的服务列表,后端接口为/igs/rest/services
   * @param options 查询参数
   * @param {Function} [options.success = 无] 查询成功回调函数,若使用Promise方式则不必填写
   * @param {Function} [options.failure = 无] 查询失败回调函数,若使用Promise方式则不必填写
   * @param {String} [options.name = 无] 服务名关键字
   * @param {String} [options.protocols = 无] 服务类型
   * @return {Promise<Object>}
   * @example
   * //回调方式
   *  rootServer.queryRootServiceList({
   *   //成功回调函数
   *   success: function (result) {
   *     console.log('请求成功:', result);
   *   }
   * });
   * //promise方式
   * rootServer.queryRootServiceList({
   * }).then(function (result) {
   *   console.log('请求成功:', result);
   * }).catch(function (result) {
   *   console.log('请求失败:', result);
   * });
   */
  queryRootServiceList(options) {
    // 设置PATH PARAMETERS校验
    const checkPathOpts = {}

    // 设置QUERY PARRAMETERS校验
    const checkQueryOpts = {
      name: {
        type: 'String'
      },
      protocols: {
        type: 'String'
      }
    }

    // 调用基类的查询信息方法
    return this._queryByParameters(
      options,
      checkPathOpts,
      checkQueryOpts,
      // 拼装返回基地址
      function (url) {
        return `${url}?f=json`
      }
    )
  }

  /**
   * @function RootServer.prototype.queryFolderServiceList
   * @description 获取指定文件夹下的服务列表
   * @param options 查询参数
   * @param {Function} [options.success = 无] 查询成功回调函数,若使用Promise方式则不必填写
   * @param {Function} [options.failure = 无] 查询失败回调函数,若使用Promise方式则不必填写
   * @param {String} [options.folder = 无] 文件夹名称,必填
   * @param {String} [options.name = 无] 服务名关键字
   * @param {String} [options.protocols = 无] 服务类型
   * @return {Promise<Object>}
   * @example
   * //回调方式
   *  rootServer.queryFolderServiceList({
   *   //设置folder文件夹名称
   *   floder:'Map'
   *   //成功回调函数
   *   success: function (result) {
   *     console.log('请求成功:', result);
   *   }
   * });
   * //promise方式
   * rootServer.queryFolderServiceList({
   *   //设置folder文件夹名称
   *   floder:'Map'
   * }).then(function (result) {
   *   console.log('请求成功:', result);
   * }).catch(function (result) {
   *   console.log('请求失败:', result);
   * });
   */
  queryFolderServiceList(options) {
    // 设置PATH PARAMETERS校验
    const checkPathOpts = {
      folder: 'String'
    }

    // 设置QUERY PARRAMETERS校验
    const checkQueryOpts = {
      name: {
        type: 'String'
      },
      protocols: {
        type: 'String'
      }
    }

    // 调用基类的查询信息方法
    return this._queryByParameters(
      options,
      checkPathOpts,
      checkQueryOpts,
      // 拼装返回基地址
      function (url) {
        return `${url}/${options.folder}?f=json`
      }
    )
  }
}

Zondy.Service.RootServer = RootServer
export default RootServer
构造函数
成员变量
方法
事件