GW2GetAllIdInfo
Bawat isyung natukoy at iniulat ng Glasswall engine ay may kaugnay na natatanging issue ID. Nagbibigay ang API na ito ng buod ng lahat ng posibleng issue ID number at ng katumbas na mataas na antas na paglalarawan.
Para sa isang session, inilalagay ng function na GW2GetAllIdInfo ang XML data na pinunan ng mga paglalarawan ng Glasswall Issue ID at mga saklaw ng halaga sa isang output buffer.
- C++
- C#
- Java
- Python
- JavaScript
Buod
Para sa session na session, inilalagay ng function na GW2GetAllIdInfo sa object na tinutukoy ng outputBuffer ang isang pointer sa XML data na pinunan ng mga paglalarawan ng Glasswall Issue ID at mga saklaw ng halaga. Ang haba, sa bytes, ng napunang output buffer ay inilalagay sa object na size_t na tinutukoy ng bufferLength.
#include "glasswall.core2.api.h"
int GW2GetAllIdInfo(
Session session,
size_t *bufferLength,
char **outputBuffer);
Ibinabalik
Nagbabalik ng integer na GW2_RetStatus enum value. Ang mga negatibong numero ay nagpapahiwatig ng pagkabigo. Kung matagumpay, ang output buffer ay naglalaman ng XML file.
Halimbawa
#include "glasswall.core2.api.h"
...
char *outbuf = NULL;
size_t buflen = 0;
if (GW2OpenSession())
/* error opening session*/
else
{
int status = GW2GetAllIdInfo(session, &buflen, &outbuf);
/* Buffer contains the XML file.
* Either process the data pointed to, or copy the data and process it
* after the session is closed
*/
if (GW2CloseSession())
/* error closing session */
}
Buod
public int GetAllIdInfo(
int session,
ref UIntPtr bufferLength,
out IntPtr outputBuffer)
Ibinabalik
Nagbabalik ng integer na GW2_RetStatus enum value. Ang mga negatibong numero ay nagpapahiwatig ng pagkabigo. Kung matagumpay, ang output buffer ay naglalaman ng XML file.
Halimbawa
...
UIntPtr bufferLength = UIntPtr.Zero;
IntPtr buffer = new IntPtr();
int session = glasswall.OpenSession();
int returnStatus = glasswall.GetAllIdInfo(session, ref bufferLength, out buffer);
using (StreamWriter writer = new StreamWriter(fileStream))
{
writer.WriteLine($"GW2GetAllIdInfo completed with status code {returnStatus}");
if ((int)bufferLength != 0)
{
WriteBytesToFile(Path.Combine(di.FullName, $"22 - GW2GetAllIdInfo.xml"),
glasswall.CreateArrayFromBuffer(buffer, bufferLength)
);
}
}
import com.glasswall.core2javabridge.*;
public String GW2GetAllIdInfoString(int session) throws GlasswallException
Tandaan
Ang functionality na ito ay dati nang nangangailangan ng dalawang magkahiwalay na function call upang makuha ang ID data. Na-streamline na ito ngayon upang ibalik ang mga setting bilang isang String. Ang dalawang orihinal na function ay deprecated na.
Ibinabalik
Ang function na GW2GetAllIdInfoString ay nagbabalik ng isang String na naglalaman ng paglalarawan ng lahat ng Glasswall IDs.
Isang exception na GlasswallException ang ita-throw kung hindi valid ang session, o kung hindi makuha ang lahat ng ID information.
Buod - Mga Hindi na Inirerekomendang Function
import com.glasswall.core2javabridge.*;
(Deprecated)
public int GW2GetAllIdInfo(int session) throws GlasswallException
public byte[] GetAllIDBuffer(int session) throws GlasswallException
Paglalarawan - Mga Deprecated na Function
Ang function na GW2GetAllIdInfo ay naglalabas ng paglalarawan ng lahat ng Glasswall IDs para sa session na tinukoy ng session papunta sa internal All ID Buffer. Kunin ang data na ito sa pamamagitan ng paggamit ng function na GetAllIDBuffer.
Mga Return - Mga Hindi na Inirerekomendang Function
Ang function na GW2GetAllIdInfo ay nagbabalik ng isang enumeration na GW2_RetStatus na kino-convert sa int. Magiging negative ang value kung may naganap na error. Ang 0 ay nagpapahiwatig ng tagumpay. Sumangguni sa API Overview/Return types para sa mga detalye.
Ang GetAllIDBuffer ay nagbabalik ng isang byte array na naglalaman ng mga paglalarawan ng Glasswall ID. Magiging null ito kung hindi pa natawag ang GW2GetAllIdInfo.
Isang exception na GlasswallException ang ita-throw kung hindi valid ang session, o kung hindi makuha ang lahat ng ID information.
Buod
Kinukuha ang XML na naglalaman ng lahat ng Issue ID ranges kasama ang kanilang mga group description.
def get_all_id_info(self, output_file: Optional[str] = None, raise_unsupported: bool = True) -> str:
""" Retrieves the XML containing all the Issue ID ranges with their group descriptions
Args:
output_file (Optional[str], optional): The output file path where the analysis file will be written.
raise_unsupported (bool, optional): Default True. Raise exceptions when Glasswall encounters an error. Fail silently if False.
Returns:
all_id_info (str): A string XML analysis report containing all id info.
"""
Ibinabalik
Isang string na XML analysis report na naglalaman ng lahat ng impormasyon ng id.
Buod
/**
* This function places a pointer in a specified location to XML data populated with
* Glasswall Issue ID descriptions and value ranges, for a specified session.
*
* @param {number} session The ID of the session.
* @param {number} bufferLength The length of the buffer.
* @param {string} outputBuffer The location of the output buffer.
*/
GW2GetAllIdInfo(
session,
bufferLength,
outputBuffer)
Ibinabalik
Nagbabalik ng integer na GW2_RetStatus enum value. Ang mga negatibong numero ay nagpapahiwatig ng pagkabigo.
Halimbawa
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 "";
}
}
...
let output_file_buffer = ref.alloc(ref.refType(ref.types.CString));
let output_buffer_size = ref.alloc(ref.types.size_t, 0);
let return_status = gw.GW2GetAllIdInfo(session_id, output_buffer_size, output_file_buffer);
let xml_string = buffer_to_string(output_file_buffer, output_buffer_size);
...