GW2GetIdInfo
Mỗi vấn đề được Glasswall engine xác định và báo cáo đều có một ID vấn đề duy nhất đi kèm. API này cung cấp mô tả cho một số ID vấn đề nhất định.
- C++
- C#
- Java
- Python
- JavaScript
Tóm tắt
Đối với phiên session , GW2GetIdInfo đặt vào đối tượng được trỏ tới bởi outputBuffer , một con trỏ tới phần mô tả của Glasswall Issue ID issueId. Độ dài của phần mô tả, tính bằng byte, được đặt vào đối tượng size_t được trỏ tới bởi bufferLength.
#include "glasswall.core2.api.h"
int GW2GetIdInfo(
Session session,
size_t issueId,
size_t *bufferLength,
char **outputBuffer);
Giá trị trả về
Trả về một giá trị enum số nguyên GW2_RetStatus. Các số âm biểu thị lỗi. Nếu thành công, bộ đệm đầu ra sẽ được điền bằng Mô tả Issue.
Ví dụ
#include "glasswall.core2.api.h"
char *outbuf = NULL;
size_t buflen = 0;
if (GW2OpenSession() < 0)
/* error opening session */
else
{
int status = GW2GetIdInfo(session, issueId, &buflen, &outbuf);
/* outbuf points to a buffer containing the XML file.
* Either process the data pointed to, or copy the data and process it
* after GW2CloseSession is called
*/
if (GW2CloseSession() < 0)
/* error closing session */
}
Tóm tắt
public int GetIdInfo(
int session,
uint IssueID,
ref UIntPtr bufferLength,
out IntPtr outputBuffer)
Giá trị trả về
Trả về một giá trị enum số nguyên GW2_RetStatus. Các số âm biểu thị lỗi. Nếu thành công, bộ đệm đầu ra được điền bằng Mô tả Issue.
Ví dụ
using glasswall_core2;
...
Glasswall glasswall = new Glasswall(); // Instance of the Glasswall wrapper
int session = glasswall.OpenSession();
int returnStatus = glasswall.GetIdInfo(session, 96, ref bufferLength, out buffer);
if (bufferLength >= 0)
{
byte[] msgArray = glasswall.CreateArrayFromBuffer(buffer, bufferLength);
// Error description for issue ID 96 now stored in a byte array
}
if (glasswall.CloseSession(session))
{
// Error Handling
}
Tóm tắt
import com.glasswall.core2javabridge.*;
public String GW2GetIdInfoString(int session, int issueId) throws GlasswallException
Mô tả
Chức năng này trước đây yêu cầu hai lệnh gọi hàm riêng biệt để truy xuất dữ liệu ID. Hiện nay, quy trình này đã được tinh gọn để trả về các thiết lập dưới dạng String. Hai hàm gốc hiện đã bị ngừng dùng.
Giá trị trả về
Hàm GW2GetIdInfoString trả về một String chứa mô tả của issueId đã cho
Một ngoại lệ GlasswallException sẽ được ném ra nếu session không hợp lệ, hoặc nếu không thể truy xuất mô tả issueId.
Tóm tắt - Các hàm không còn được dùng
import com.glasswall.core2javabridge.*;
(Deprecated)
public int GW2GetIdInfo(int session, int issueId) throws GlasswallException
public byte[] GetIDBuffer(int session) throws GlasswallException
Mô tả - Các hàm đã ngừng dùng
Hàm GW2GetIdInfo xuất mô tả của issueId đã cho cho một session đã cho vào ID Buffer nội bộ. Truy xuất dữ liệu này bằng cách sử dụng hàm GetIDBuffer.
Giá trị trả về - Các hàm không còn được dùng
Hàm GW2GetIdInfo 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.
GetIDBuffer trả về một byte[] chứa mô tả ID. Giá trị này sẽ là null nếu GetIDBuffer chưa được gọi.
Một ngoại lệ GlasswallException sẽ được ném ra nếu session không hợp lệ, hoặc nếu không thể truy xuất mô tả issue.
Tóm tắt
Truy xuất mô tả nhóm cho Issue ID đã cho.
def get_id_info(self, issue_id: int, raise_unsupported: bool = True):
""" Retrieves the group description for the given Issue ID. e.g. issue_id 96 returns "Document Processing Instances"
Args:
issue_id (int): The issue id.
raise_unsupported (bool, optional): Default True. Raise exceptions when Glasswall encounters an error. Fail silently if False.
Returns:
id_info (str): The group description for the given Issue ID.
"""
Giá trị trả về
Một chuỗi, mô tả nhóm cho Issue ID đã cho.
Tóm tắt
Hàm này đặt một con trỏ tới mô tả của IssueID được chỉ định vào một vị trí được chỉ định.
/**
*
* @param {number} session The ID of the session.
* @param {number} issueId The ID of the issue.
* @param {number} bufferLength The length of the buffer.
* @param {string} outputBuffer The location of the output buffer.
*/
GW2GetIdInfo(
session,
issueId,
bufferLength,
outputBuffer)
Giá trị trả về
Trả về một giá trị enum số nguyên GW2_RetStatus. Các số âm biểu thị lỗi. Nếu thành công, bộ đệm đầu ra sẽ được điền bằng Mô tả Issue.
Ví dụ
const ref = require('ref-napi');
...
function buffer_to_string(buffer, buffer_size) {
if (!buffer.isNull() && ref.deref(buffer_size) > 0) {
return Buffer.from(ref.reinterpret(ref.deref(buffer), ref.deref(buffer_size), 0)).toString();
}
else {
return "";
}
}
...
output_file_buffer = ref.alloc(ref.refType(ref.types.CString));
output_buffer_size = ref.alloc(ref.types.size_t, 0);
return_status = gw.GW2GetIdInfo(session_id, 96, output_buffer_size, output_file_buffer);
let error_description = buffer_to_string(output_file_buffer, output_buffer_size);
...