GW2FileSessionStatus
Hàm GW2FileSessionStatus cung cấp một chuỗi mô tả, ở mức tổng quan, quá trình xử lý được thực hiện trên tệp gần nhất đã được xử lý trong phiên được cung cấp.
- C++
- C#
- Java
- Python
- JavaScript
#include "glasswall.core2.api.h"
int GW2FileSessionStatus(
Session session,
int *glasswallSessionStatus,
char **statusMsgBuffer,
size_t *statusBufferLength);
Tham số
session ID của phiên như được trả về bởi GW2OpenSession
glasswallSessionStatus Một tham số đầu ra kiểu số nguyên mô tả trạng thái trả về của phiên liên quan đến tệp gần nhất đã được xử lý. Xem bảng Return Types để biết giải thích về glasswallSessionStatus.
statusMsgBuffer Một tham số đầu ra con trỏ chuỗi được điền bằng mô tả ở mức tổng quan về quá trình xử lý được thực hiện trên tệp gần nhất được phiên xử lý. Ví dụ: "Sanitisation Applied, Remedies Applied". Bộ nhớ được sử dụng bởi con trỏ này không cần được người dùng giải phóng.
statusBufferLength Một tham số đầu ra được điền bằng kích thước tính theo byte của vùng nhớ được statusMsgBuffer trỏ tới.
Giá trị trả về
Trả về một số nguyên cho biết liệu lệnh gọi hàm có thành công hay không. Các số âm cho biết thất bại. Xem bảng Return Types để biết giải thích về các mã trả về. Nếu session không hợp lệ thì glasswallSessionStatus, statusMsgBuffer và statusBufferLength sẽ không xác định.
Tóm tắt
/// <param name="session">Current open Glasswall session</param>
/// <param name="gwSessionStatus">Session status value</param>
/// <param name="outputBuffer">String that describes, at a high level, the processing carried out on the last document </param>
/// <param name="bufferLength">Size of the outputBuffer</param>
public int FileSessionStatus(
int session,
out IntPtr gwSessionStatus,
out IntPtr outputBuffer,
ref UIntPtr bufferLength)
Giá trị trả về
Nếu session không hợp lệ, hàm sẽ trả về -1. Nếu session hợp lệ, hàm trả về 0 và gwSessionStatus, outputBuffer và bufferLength sẽ được điền giá trị.
Tóm tắt
import com.glasswall.core2javabridge.*;
public FileSessionStatus GW2FileSessionStatusResult(int session) throws GlasswallException
Lưu ý
Chức năng này trước đây yêu cầu ba lệnh gọi hàm riêng biệt để truy xuất dữ liệu ID. Hiện nay, chức năng này đã được tinh gọn để trả về các thiết lập dưới dạng một đối tượng FileSessionStatus. Ba hàm ban đầu đã bị deprecated.
Giá trị trả về
Hàm GW2FileSessionStatusResult trả về một đối tượng FileSessionStatus chứa trạng thái tóm tắt của session và mô tả tóm tắt của session.
Đối tượng FileSessionStatus chứa hai biến mô tả trạng thái của session tại thời điểm hàm được gọi. Cụ thể là:
| Biến | Mô tả |
|---|---|
int summaryStatus | Trạng thái cho biết công việc tổng thể đã được thực hiện |
String summaryDescription | Mô tả về công việc tổng thể đã được thực hiện |
Một ngoại lệ GlasswallException sẽ được đưa ra nếu session không hợp lệ, hoặc nếu không thể truy xuất thông tin trạng thái phiên.
Tóm tắt - Các hàm không còn được dùng
import com.glasswall.core2javabridge.*;
(Deprecated)
public int GW2FileSessionStatus(int session) throws GlasswallException
public int GetFileSessionStatusInt(int session) throws GlasswallException
public byte[] GetStatusBuffer(int session) throws GlasswallException
Mô tả
Hàm GW2FileSessionStatus trả về một trạng thái cho biết liệu thông tin trạng thái phiên có thể được truy xuất cho phiên được chỉ định bởi session hay không.
Truy xuất trạng thái tóm tắt của phiên bằng cách sử dụng hàm GetFileSessionStatusInt.
Truy xuất dữ liệu trạng thái tóm tắt của phiên bằng cách sử dụng hàm GetStatusBuffer.
Giá trị trả về - Các hàm không còn được dùng
Hàm GW2FileSessionStatus trả về một giá trị liệt kê GW2_RetStatus được chuyển đổi thành int. Giá trị sẽ là số âm nếu xảy ra lỗi. 0 cho biết thành công. Tham khảo API Overview/Return types để biết chi tiết.
Hàm GetStatusBuffer trả về một bộ đệm mảng byte chứa mô tả tóm tắt về phiên đã cho. Giá trị này sẽ là null nếu GW2FileSessionStatus chưa được gọi.
Hàm GetFileSessionStatusInt trả về một trạng thái cho biết công việc tổng thể đã được thực hiện.
Một ngoại lệ GlasswallException sẽ được đưa ra nếu session không hợp lệ, hoặc nếu không thể truy xuất thông tin trạng thái của session.
Tóm tắt
Truy xuất thông báo trạng thái phiên Glasswall. Cung cấp chỉ báo cấp cao về quá trình xử lý đã được thực hiện.
def file_session_status_message(self, session: int, raise_unsupported: bool = True) -> str:
""" Retrieves the Glasswall session status message. Gives a high level indication of the processing that was carried out.
Args:
session (int): The session integer.
raise_unsupported (bool, optional): Default True. Raise exceptions when Glasswall encounters an error. Fail silently if False.
Returns:
result.message (str):The file session status message.
"""
Giá trị trả về
Thông báo trạng thái phiên tệp dưới dạng chuỗi.
Tóm tắt
/**
* This function retrieves the Glasswall Session Status. This status gives a high level indication of the processing
* that was carried out on the last document processed by the library
*/
GW2FileSessionStatus(session,
glasswallSessionStatus,
statusMsgBuffer,
statusBufferLength)
Giá trị trả về
Nếu session không hợp lệ, hàm sẽ trả về -1 và glasswallSessionStatus, statusMsgBuffer và statusBufferLength sẽ không được xác định. Nếu session hợp lệ, hàm trả về 0 và glasswallSessionStatus, statusMsgBuffer và statusBufferLength sẽ được điền dữ liệu.
Ví dụ
function getFileSessionStatus(session_id, gw) {
/*
Glasswall API signature:
int GW2FileSessionStatus(
Session session,
int *glasswallSessionStatus,
char **statusMsgBuffer,
size_t *statusBufferLength
);
*/
// allocate space to store the session status; use .deref() to extract it
let glasswallSessionStatus = ref.alloc('int');
let CString_ptr = ref.refType(ref.types.CString);
let statusMsgBuffer = ref.alloc(CString_ptr);
// allocate space to store the buffer length; use .deref() to extract it
let statusBufferLength = ref.alloc('size_t');
let rv = gw.GW2FileSessionStatus(session_id, glasswallSessionStatus, statusMsgBuffer, statusBufferLength);
arr_buf = buffer_to_array(statusMsgBuffer, statusBufferLength)
// console.log(arr_buf.toString());
let message = `\n GW2FileSessionStatus:return=${rv}`;
message += "\n glasswallSessionStatus = " + glasswallSessionStatus.deref();
message += "\n statusMsgBuffer = \"" + arr_buf.toString() + '"';
message += "\n statusBufferLength = " + statusBufferLength.deref();
return message;
}