GW2FileSessionStatus
ฟังก์ชัน GW2FileSessionStatus จะให้สตริงที่อธิบายโดยสรุประดับสูงเกี่ยวกับการประมวลผลที่ดำเนินการกับไฟล์ล่าสุดที่ถูกประมวลผลใน session ที่ระบุ
- C++
- C#
- Java
- Python
- JavaScript
#include "glasswall.core2.api.h"
int GW2FileSessionStatus(
Session session,
int *glasswallSessionStatus,
char **statusMsgBuffer,
size_t *statusBufferLength);
พารามิเตอร์
session ID ของ session ตามที่ส่งกลับโดย GW2OpenSession
glasswallSessionStatus พารามิเตอร์เอาต์พุตชนิดจำนวนเต็มที่อธิบายสถานะการส่งกลับของ session ที่เกี่ยวข้องกับไฟล์ล่าสุดที่ถูกประมวลผล ดูตาราง Return Types สำหรับคำอธิบายของ glasswallSessionStatus.
statusMsgBuffer พารามิเตอร์เอาต์พุตแบบตัวชี้สตริง ซึ่งจะถูกเติมด้วยคำอธิบายโดยสรุประดับสูงของการประมวลผลที่ดำเนินการกับไฟล์ล่าสุดที่ถูกประมวลผลโดย session เช่น "Sanitisation Applied, Remedies Applied" หน่วยความจำที่ใช้โดยตัวชี้นี้ ไม่ จำเป็นต้องถูก free โดยผู้ใช้
statusBufferLength พารามิเตอร์เอาต์พุตซึ่งจะถูกเติมด้วยขนาดเป็นไบต์ของหน่วยความจำที่ statusMsgBuffer ชี้ไปยัง
ส่งกลับ
ส่งกลับจำนวนเต็มที่ระบุว่าการเรียกใช้ฟังก์ชันสำเร็จหรือไม่ ตัวเลขติดลบหมายถึงความล้มเหลว ดูตาราง Return Types สำหรับคำอธิบายของรหัสส่งกลับ หาก session ไม่ถูกต้อง glasswallSessionStatus, statusMsgBuffer และ statusBufferLength จะไม่มีการกำหนดค่า
สรุป
/// <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)
ส่งกลับ
หาก session ไม่ถูกต้อง ระบบจะส่งกลับ -1 หาก session ถูกต้อง ฟังก์ชันจะส่งกลับ 0 และ gwSessionStatus, outputBuffer และ bufferLength จะถูกเติมค่า
สรุป
import com.glasswall.core2javabridge.*;
public FileSessionStatus GW2FileSessionStatusResult(int session) throws GlasswallException
หมายเหตุ
ก่อนหน้านี้ฟังก์ชันการทำงานนี้ต้องใช้การเรียกฟังก์ชันแยกกันสามครั้งเพื่อดึงข้อมูล ID ขณะนี้ได้ปรับให้เรียบง่ายขึ้นโดยส่งกลับการตั้งค่าเป็นอ็อบเจ็กต์ FileSessionStatus แล้ว ฟังก์ชันดั้งเดิมทั้งสามรายการถูก deprecated แล้ว
ส่งกลับ
ฟังก์ชัน GW2FileSessionStatusResult จะส่งกลับอ็อบเจ็กต์ FileSessionStatus ที่มีสถานะสรุปของ session และคำอธิบายสรุปของ session
อ็อบเจ็กต์ FileSessionStatus มีตัวแปรสองตัวที่อธิบายสถานะของ session ณ เวลาที่มีการเรียกใช้ฟังก์ชัน ได้แก่:
| ตัวแปร | คำอธิบาย |
|---|---|
int summaryStatus | สถานะที่ระบุภาพรวมของงานที่ดำเนินการ |
String summaryDescription | คำอธิบายของภาพรวมงานที่ดำเนินการ |
ระบบจะโยนข้อยกเว้น GlasswallException หาก session ไม่ถูกต้อง หรือหากไม่สามารถดึงข้อมูลสถานะของเซสชันได้
สรุป - ฟังก์ชันที่เลิกใช้แล้ว
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
คำอธิบาย
ฟังก์ชัน GW2FileSessionStatus จะส่งคืนสถานะที่ระบุว่าสามารถดึงข้อมูลสถานะของเซสชันสำหรับเซสชันที่ระบุโดย session ได้หรือไม่
ดึงสถานะสรุปของเซสชันโดยใช้ฟังก์ชัน GetFileSessionStatusInt
ดึงข้อมูลสถานะสรุปของเซสชันโดยใช้ฟังก์ชัน GetStatusBuffer
ค่าที่ส่งกลับ - ฟังก์ชันที่เลิกใช้แล้ว
ฟังก์ชัน GW2FileSessionStatus จะส่งคืนค่า enumeration GW2_RetStatus ที่แปลงเป็น int ค่าเป็นลบหมายความว่าเกิดข้อผิดพลาด 0 หมายถึงสำเร็จ โปรดดูรายละเอียดใน API Overview/Return types
ฟังก์ชัน GetStatusBuffer จะส่งคืนบัฟเฟอร์อาร์เรย์ไบต์ที่มีคำอธิบายสรุปเกี่ยวกับเซสชันที่กำหนด ค่านี้จะเป็น null หากยังไม่ได้เรียก GW2FileSessionStatus
ฟังก์ชัน GetFileSessionStatusInt จะส่งคืนสถานะที่ระบุภาพรวมของงานที่ดำเนินการ
ระบบจะโยนข้อยกเว้น GlasswallException หาก session ไม่ถูกต้อง หรือหากไม่สามารถดึงข้อมูลสถานะของ session ได้
สรุป
ดึงข้อความสถานะเซสชันของ Glasswall โดยให้ข้อมูลบ่งชี้ระดับสูงเกี่ยวกับการประมวลผลที่ได้ดำเนินการ
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.
"""
ส่งกลับ
ข้อความสถานะของ file session ในรูปแบบสตริง
สรุป
/**
* 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)
ส่งกลับ
หาก session ไม่ถูกต้อง ระบบจะส่งกลับ -1 และ glasswallSessionStatus, statusMsgBuffer และ statusBufferLength จะไม่มีการกำหนดค่าไว้ หาก session ถูกต้อง ฟังก์ชันจะส่งกลับ 0 และ glasswallSessionStatus, statusMsgBuffer และ statusBufferLength จะถูกเติมข้อมูล
ตัวอย่าง
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;
}