GW2GetPolicySettings
Hàm GW2GetPolicySettings cung cấp một chuỗi tương ứng với nội dung của tệp cài đặt policy được liên kết với session được cung cấp.
- C++
- C#
- Java
- Python
- JavaScript
#include "glasswall.core2.api.h"
int GW2GetPolicySettings (
Session session,
char **policiesBuffer,
size_t *policiesLength,
Policy_format format);
Tham số
session ID của phiên như được trả về bởi GW2OpenSession
policiesBuffer Tham số đầu ra con trỏ chuỗi được điền thông tin cài đặt policy. Bộ nhớ được sử dụng bởi con trỏ này không cần được người dùng giải phóng. Trong trường hợp thất bại, tham số này có thể được đặt thành nullptr.
policiesLength Tham số đầu ra được điền kích thước tính bằng byte của vùng nhớ được policiesBuffer trỏ tới
format Định dạng của dữ liệu. Giá trị này phải là PF_XML.
Giá trị trả về
Trả về một số nguyên cho biết liệu lời gọi hàm có thành công hay không. Các số âm biểu thị thất bại. Xem bảng Return Types để biết giải thích về các mã trả về.
Tóm tắt
/// <summary>
/// Retrieves policy settings for the session
/// </summary>
/// <param name="session">Current open Glasswall session</param>
/// <param name="policiesBufferPtr">A pointer to the object containing a pointer pointing to the policy data</param>
/// <param name="policiesLengthPtr">A pointer to a object containing the size in bytes </param>
public int GetPolicySettings(
int session,
out IntPtr policiesBufferPtr,
ref UIntPtr policiesLengthPtr,
int format)
Giá trị trả về
Trả về một giá trị enum GW2_RetStatus dạng số nguyên. Các số âm cho biết thất bại.
Tóm tắt
import com.glasswall.core2javabridge.*;
public String GW2GetPolicySettingsString(int session, int format) throws GlasswallException
Lưu ý
Hàm GW2GetPolicySettingsString xuất ra các cài đặt policy hiện đang được đăng ký cho phiên được chỉ định bởi session.
Tham khảo API Overview/Return types để biết các giá trị liệt kê hợp lệ cho format.
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 cài đặt policy. Hiện nay, chức năng này đã được tinh giản để trả về các cài đặt dưới dạng String. Hai hàm gốc hiện đã bị deprecated.
Giá trị trả về
Hàm GW2GetPolicySettingsString trả về một String chứa các cài đặt policy.
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 các cài đặt policy.
Tóm tắt - Các hàm không còn được dùng
import com.glasswall.core2javabridge.*;
(Deprecated)
public int GW2GetPolicySettings(int session, int format) throws GlasswallException
public byte[] GetPolicyBuffer(int session) throws GlasswallException
Mô tả - Các hàm đã ngừng dùng
Hàm GW2GetPolicySettings xuất các cài đặt policy hiện đang được đăng ký cho phiên được chỉ định bởi session vào bộ đệm policy nội bộ. Truy xuất dữ liệu này bằng cách sử dụng hàm GetPolicyBuffer.
Tham khảo API Overview/Return types để biết các giá trị liệt kê hợp lệ cho format.
Giá trị trả về - Các hàm không còn được dùng
Hàm GW2GetPolicySettings 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.
GetPolicyBuffer trả về một byte[] chứa các cài đặt policy. Giá trị này sẽ là null nếu GW2GetPolicySettings 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 các cài đặt policy.
Tóm tắt
Trả về cấu hình quản lý nội dung cho một phiên nhất định.
def get_content_management_policy(self, session: int):
""" Returns the content management configuration for a given session.
Args:
session (int): The session integer.
Returns:
xml_string (str): The XML string of the current content management configuration.
"""
Giá trị trả về
xml_string (str): Chuỗi XML của cấu hình quản lý nội dung hiện tại
Tóm tắt
/**
* This function returns the policy settings used for the specified session
*
* @param {number} session The ID of the session.
* @param {string} policiesBuffer The pointer to the policy buffer.
* @param {number} policiesLength The size of the data in the policy buffer
* @param {number} format The format of the policy.
*/
GW2GetPolicySettings(
session,
policiesBuffer,
policiesLength,
format)
Giá trị trả về
Trả về một giá trị enum GW2_RetStatus dạng số nguyên. Các số âm cho biết thất bại.
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 "";
}
}
...
let policy_file_buffer = ref.alloc(ref.refType(ref.types.CString));
let policy_buffer_size = ref.alloc(ref.types.size_t, 0);
let return_status = gw.GW2GetPolicySettings(session_id, policy_file_buffer, policy_buffer_size, 0);
let xml_string = buffer_to_string(policy_file_buffer, policy_buffer_size);
...