GW2FileSessionStatus
Fungsi GW2FileSessionStatus menyediakan string yang menjelaskan, pada tingkat tinggi, pemrosesan yang dilakukan pada file terakhir yang diproses dalam sesi yang diberikan.
- 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 menjelaskan status pengembalian sesi terkait file terakhir yang diproses. Lihat tabel Return Types untuk penjelasan tentang glasswallSessionStatus.
statusMsgBuffer Parameter output pointer string yang diisi dengan deskripsi tingkat tinggi tentang pemrosesan yang dilakukan pada file terakhir yang diproses oleh sesi. Misalnya "Sanitisation Applied, Remedies Applied". Memori yang digunakan oleh pointer ini tidak perlu dibebaskan oleh pengguna.
statusBufferLength Parameter output yang diisi dengan ukuran dalam byte dari memori yang ditunjuk oleh statusMsgBuffer.
Hasil pengembalian
Mengembalikan integer yang menunjukkan apakah pemanggilan fungsi berhasil. Angka negatif menunjukkan kegagalan. Lihat tabel Return Types untuk penjelasan kode pengembalian. Jika session tidak valid, glasswallSessionStatus, statusMsgBuffer dan statusBufferLength akan tidak terdefinisi.
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)
Hasil pengembalian
Jika session tidak valid, fungsi akan mengembalikan -1. Jika session valid, fungsi mengembalikan 0 dan gwSessionStatus, outputBuffer serta bufferLength akan diisi.
Sinopsis
import com.glasswall.core2javabridge.*;
public FileSessionStatus GW2FileSessionStatusResult(int session) throws GlasswallException
Catatan
Fungsionalitas ini sebelumnya memerlukan tiga pemanggilan fungsi terpisah untuk mengambil data ID. Kini hal tersebut telah disederhanakan untuk mengembalikan pengaturan sebagai objek FileSessionStatus. Tiga fungsi asli tersebut telah deprecated.
Hasil pengembalian
Fungsi GW2FileSessionStatusResult mengembalikan objek FileSessionStatus yang berisi status ringkasan session dan deskripsi ringkasan session.
Objek FileSessionStatus berisi dua variabel yang menjelaskan status session pada saat fungsi dipanggil. Variabel tersebut adalah:
| Variabel | Deskripsi |
|---|---|
int summaryStatus | Status yang menunjukkan keseluruhan pekerjaan yang dilakukan |
String summaryDescription | Deskripsi keseluruhan pekerjaan yang dilakukan |
Pengecualian GlasswallException akan dilempar jika session tidak valid, atau jika informasi status sesi tidak dapat diambil.
Sinopsis - Fungsi yang Tidak Digunakan Lagi
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
Deskripsi
Fungsi GW2FileSessionStatus mengembalikan status yang menunjukkan apakah informasi status sesi dapat diambil untuk sesi yang ditentukan oleh session.
Ambil status ringkasan sesi melalui penggunaan fungsi GetFileSessionStatusInt.
Ambil data status ringkasan sesi melalui penggunaan fungsi GetStatusBuffer.
Nilai yang Dikembalikan - Fungsi yang Tidak Digunakan Lagi
Fungsi GW2FileSessionStatus mengembalikan enumerasi GW2_RetStatus yang dikonversi menjadi int. Nilainya akan negatif jika terjadi kesalahan. 0 menunjukkan keberhasilan. Lihat API Overview/Return types untuk detailnya.
Fungsi GetStatusBuffer mengembalikan buffer array byte yang berisi deskripsi ringkasan tentang sesi yang diberikan. Nilainya akan null jika GW2FileSessionStatus belum dipanggil.
Fungsi GetFileSessionStatusInt mengembalikan status yang menunjukkan keseluruhan pekerjaan yang dilakukan.
Pengecualian GlasswallException akan dilempar jika session tidak valid, atau jika informasi status session tidak dapat diambil.
Sinopsis
Mengambil pesan status sesi Glasswall. Memberikan indikasi tingkat tinggi tentang pemrosesan yang dilakukan.
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.
"""
Hasil pengembalian
Pesan status sesi file sebagai string.
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)
Hasil pengembalian
Jika session tidak valid, fungsi akan mengembalikan -1 dan glasswallSessionStatus, statusMsgBuffer serta statusBufferLength akan tidak terdefinisi. Jika session valid, fungsi mengembalikan 0 dan glasswallSessionStatus, statusMsgBuffer serta statusBufferLength akan terisi.
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;
}