SnapshotAPI.js 1.17 KB
Newer Older
YazhouChen's avatar
YazhouChen committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
import Axios from 'axios'
import {
  SNAPSHOT_CMD,
  SNAPSHOT_ADMQ,
  SNAPSHOT_QUERY,
  SNAPSHOT_CREATE,
  SNAPSHOT_RECOVER,
  CABINET_ADMQ,
  CABINET_UPLOAD,
  CABINET_DOWNLOAD,
  REQUEST_CONFIG,
  FIRMWARE_QUERY,
} from "../../utils/RequestUrls";

var staticMethods = {

  // 获取快照
  getSnapshotCollection: function () {
    return Axios.get(SNAPSHOT_CMD)
  },

  // 删除快照
  deleteDeleteSnapshot: function (snapshotKey) {
    return Axios.delete(SNAPSHOT_ADMQ, {
      data: snapshotKey,
      REQUEST_CONFIG
    })
  },

  // 条件查询快照
  putConditionQuerySnapshot: function (conditionSet) {
    return Axios.put(SNAPSHOT_QUERY, conditionSet, REQUEST_CONFIG);
  },
  // 创建快照
  postAddSnapshot: function (snapshot, options) {
    return Axios.post(SNAPSHOT_CREATE + options, snapshot)
  },

  // 回退快照
  getRecoverSnapshot: function (snapshotKey) {
    return Axios.get(SNAPSHOT_RECOVER + snapshotKey)
  }
}

function CabinetAPI (websocketService = null) {

  return Object.freeze(Object.assign(
    {
      // object methods comes here
    },
    staticMethods
  ))
}
// inject static methods
Object.assign(CabinetAPI, staticMethods);
export default CabinetAPI