| | |
| | | |
| | | // 获取所有实例 |
| | | export async function getAllInstances(): Promise<InstanceListItem[]> { |
| | | const response = await api.get<InstanceListItem[]>('/SimulatorInstances') |
| | | const response = await api.get<InstanceListItem[]>('/SimulatorInstances/GetAll') |
| | | return response.data |
| | | } |
| | | |
| | | // 获取指定实例状态 |
| | | export async function getInstance(id: string): Promise<InstanceState | null> { |
| | | try { |
| | | const response = await api.get<InstanceState>(`/SimulatorInstances/${encodeURIComponent(id)}`) |
| | | const response = await api.get<InstanceState>('/SimulatorInstances/GetInstance', { |
| | | params: { id } |
| | | }) |
| | | return response.data |
| | | } catch (error) { |
| | | if (axios.isAxiosError(error) && error.response?.status === 404) { |
| | |
| | | // 获取实例配置 |
| | | export async function getInstanceConfig(id: string): Promise<InstanceConfig | null> { |
| | | try { |
| | | const response = await api.get<InstanceConfig>(`/SimulatorInstances/${encodeURIComponent(id)}/config`) |
| | | const response = await api.get<InstanceConfig>('/SimulatorInstances/GetInstanceConfig', { |
| | | params: { id } |
| | | }) |
| | | return response.data |
| | | } catch (error) { |
| | | if (axios.isAxiosError(error) && error.response?.status === 404) { |
| | |
| | | // 创建实例 |
| | | export async function createInstance(config: InstanceConfig): Promise<InstanceState | null> { |
| | | try { |
| | | const response = await api.post<InstanceState>('/SimulatorInstances', config) |
| | | const response = await api.post<InstanceState>('/SimulatorInstances/Create', config ) |
| | | return response.data |
| | | } catch (error) { |
| | | console.error('创建实例失败:', error) |
| | |
| | | // 更新实例 |
| | | export async function updateInstance(id: string, config: InstanceConfig): Promise<InstanceState | null> { |
| | | try { |
| | | const response = await api.put<InstanceState>(`/SimulatorInstances/${encodeURIComponent(id)}`, config) |
| | | const response = await api.put<InstanceState>('/SimulatorInstances/Update', config, { |
| | | params: { id } |
| | | }) |
| | | return response.data |
| | | } catch (error) { |
| | | console.error('更新实例失败:', error) |
| | |
| | | // 删除实例 |
| | | export async function deleteInstance(id: string, deleteConfig: boolean = true): Promise<boolean> { |
| | | try { |
| | | await api.delete(`/SimulatorInstances/${encodeURIComponent(id)}?deleteConfig=${deleteConfig}`) |
| | | await api.delete('/SimulatorInstances/Delete', { |
| | | params: { id, deleteConfig } |
| | | }) |
| | | return true |
| | | } catch (error) { |
| | | console.error('删除实例失败:', error) |
| | |
| | | // 启动实例 |
| | | export async function startInstance(id: string): Promise<InstanceState | null> { |
| | | try { |
| | | const response = await api.post<InstanceState>(`/SimulatorInstances/${encodeURIComponent(id)}/start`) |
| | | const response = await api.post<InstanceState>('/SimulatorInstances/start', null, { |
| | | params: { id } |
| | | }) |
| | | return response.data |
| | | } catch (error) { |
| | | console.error('启动实例失败:', error) |
| | |
| | | // 停止实例 |
| | | export async function stopInstance(id: string): Promise<InstanceState | null> { |
| | | try { |
| | | const response = await api.post<InstanceState>(`/SimulatorInstances/${encodeURIComponent(id)}/stop`) |
| | | const response = await api.post<InstanceState>('/SimulatorInstances/stop', null, { |
| | | params: { id } |
| | | }) |
| | | return response.data |
| | | } catch (error) { |
| | | console.error('停止实例失败:', error) |
| | |
| | | // 重启实例 |
| | | export async function restartInstance(id: string): Promise<InstanceState | null> { |
| | | try { |
| | | const response = await api.post<InstanceState>(`/SimulatorInstances/${encodeURIComponent(id)}/restart`) |
| | | const response = await api.post<InstanceState>('/SimulatorInstances/restart', null, { |
| | | params: { id } |
| | | }) |
| | | return response.data |
| | | } catch (error) { |
| | | console.error('重启实例失败:', error) |