18874: Add 'services/workbench2/' from commit 'f6f88d9ca9cdeeeebfadcfe999789bfb9f69e5c6'
[arvados.git] / services / workbench2 / src / services / log-service / static / git-favicon.png
diff --git a/src/services/log-service/log-service.ts b/src/services/log-service/log-service.ts
deleted file mode 100644 (file)
index 03d3c01..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-// Copyright (C) The Arvados Authors. All rights reserved.
-//
-// SPDX-License-Identifier: AGPL-3.0
-
-import { AxiosInstance } from "axios";
-import { LogEventType, LogResource } from 'models/log';
-import { CommonResourceService } from "services/common-service/common-resource-service";
-import { ApiActions } from "services/api/api-actions";
-import { WebDAV } from "common/webdav";
-import { extractFilesData } from "services/collection-service/collection-service-files-response";
-import { CollectionFile } from "models/collection-file";
-
-export type LogFragment = {
-    logType: LogEventType;
-    contents: string[];
-}
-
-export class LogService extends CommonResourceService<LogResource> {
-    constructor(serverApi: AxiosInstance, private apiWebdavClient: WebDAV, actions: ApiActions) {
-        super(serverApi, "logs", actions);
-    }
-
-    async listLogFiles(containerRequestUuid: string) {
-        const request = await this.apiWebdavClient.propfind(`container_requests/${containerRequestUuid}/log`);
-        if (request.responseXML != null) {
-            return extractFilesData(request.responseXML)
-                .filter((file) => (
-                    file.path === `/arvados/v1/container_requests/${containerRequestUuid}/log`
-                ));
-        }
-        return Promise.reject();
-    }
-
-    async getLogFileContents(containerRequestUuid: string, fileRecord: CollectionFile, startByte: number, endByte: number): Promise<LogFragment> {
-        const request = await this.apiWebdavClient.get(
-            `container_requests/${containerRequestUuid}/log/${fileRecord.name}`,
-            {headers: {Range: `bytes=${startByte}-${endByte}`}}
-        );
-        const logFileType = logFileToLogType(fileRecord);
-
-        if (request.responseText && logFileType) {
-            return {
-                logType: logFileType,
-                contents: request.responseText.split(/\r?\n/),
-            };
-        } else {
-            return Promise.reject();
-        }
-    }
-}
-
-export const logFileToLogType = (file: CollectionFile) => (file.name.replace(/\.(txt|json)$/, '') as LogEventType);