GW2FileSessionStatus
Fungsi GW2FileSessionStatus menyediakan rentetan yang menerangkan, pada tahap tinggi, pemprosesan yang dijalankan pada fail terakhir yang diproses dalam sesi yang dibekalkan.
- C++
- C#
- Java
- Python
- JavaScript
#include "glasswall.core2.api.h"
int GW2FileSessionStatus(
Session session,
int *glasswallSessionStatus,
char **statusMsgBuffer,
size_t *statusBufferLength);
Parameter
session ID sesi seperti yang dikembalikan oleh GW2OpenSession
glasswallSessionStatus Parameter output integer yang menerangkan status pulangan sesi berkaitan dengan fail terakhir yang telah diproses. Lihat jadual Return Types untuk penjelasan tentang glasswallSessionStatus.
statusMsgBuffer Parameter output penuding rentetan yang diisikan dengan penerangan tahap tinggi tentang pemprosesan yang dijalankan pada fail terakhir yang diproses oleh sesi. Contohnya "Sanitisation Applied, Remedies Applied". Memori yang digunakan oleh penuding ini tidak perlu dibebaskan oleh pengguna.
statusBufferLength Parameter output yang diisikan dengan saiz dalam bait bagi memori yang ditunjukkan oleh statusMsgBuffer.
Pulangan
Mengembalikan integer yang menunjukkan sama ada panggilan fungsi berjaya. Nombor negatif menunjukkan kegagalan. Lihat jadual Return Types untuk penjelasan tentang kod pulangan. Jika session tidak sah, glasswallSessionStatus, statusMsgBuffer dan statusBufferLength akan tidak ditakrifkan.
Sinopsis
/// <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)
Pulangan
Jika session tidak sah, ia akan mengembalikan -1. Jika session sah, fungsi mengembalikan 0 dan gwSessionStatus, outputBuffer dan bufferLength akan diisikan.
Sinopsis
import com.glasswall.core2javabridge.*;
public FileSessionStatus GW2FileSessionStatusResult(int session) throws GlasswallException
Nota
Fungsi ini sebelum ini memerlukan tiga panggilan fungsi berasingan untuk mendapatkan data ID. Kini ia telah dipermudahkan untuk mengembalikan tetapan sebagai objek FileSessionStatus. Tiga fungsi asal telah ditamatkan penggunaan.
Pulangan
Fungsi GW2FileSessionStatusResult mengembalikan objek FileSessionStatus yang mengandungi status ringkasan session, dan penerangan ringkasan session.
Objek FileSessionStatus mengandungi dua pemboleh ubah yang menerangkan status session pada masa fungsi dipanggil. Ini ialah:
| Pemboleh ubah | Penerangan |
|---|---|
int summaryStatus | Status yang menunjukkan keseluruhan kerja yang dijalankan |
String summaryDescription | Penerangan tentang keseluruhan kerja yang dijalankan |
Pengecualian GlasswallException akan dilemparkan jika session tidak sah, atau jika maklumat status sesi tidak dapat diperoleh.
Sinopsis - Fungsi Ditamatkan
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
Penerangan
Fungsi GW2FileSessionStatus mengembalikan status yang menunjukkan sama ada maklumat status sesi dapat diperoleh bagi sesi yang ditentukan oleh session.
Dapatkan status ringkasan sesi melalui penggunaan fungsi GetFileSessionStatusInt.
Dapatkan data status ringkasan sesi melalui penggunaan fungsi GetStatusBuffer.
Pulangan - Fungsi Ditamatkan
Fungsi GW2FileSessionStatus mengembalikan enumerasi GW2_RetStatus yang ditukarkan kepada int. Nilainya akan negatif jika ralat berlaku. 0 menunjukkan kejayaan. Rujuk API Overview/Return types untuk butiran.
Fungsi GetStatusBuffer mengembalikan penimbal tatasusunan bait yang mengandungi penerangan ringkasan tentang sesi yang diberikan. Ini akan menjadi null jika GW2FileSessionStatus belum dipanggil.
Fungsi GetFileSessionStatusInt mengembalikan status yang menunjukkan keseluruhan kerja yang dijalankan.
Pengecualian GlasswallException akan dilemparkan jika session tidak sah, atau jika maklumat status session tidak dapat diperoleh.
Sinopsis
Mendapatkan mesej status sesi Glasswall. Memberikan petunjuk peringkat tinggi tentang pemprosesan yang telah dijalankan.
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.
"""
Pulangan
Mesej status sesi fail sebagai rentetan.
Sinopsis
/**
* 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)
Pulangan
Jika session tidak sah, ia akan mengembalikan -1 dan glasswallSessionStatus, statusMsgBuffer serta statusBufferLength akan tidak ditakrifkan. Jika session sah, fungsi ini mengembalikan 0 dan glasswallSessionStatus, statusMsgBuffer serta statusBufferLength akan diisikan.
Contoh
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;
}