getOSDetails

getOSDetails(jdo: JadeDynamicObject input);

The getOSDetails method of the Node class populates a JadeDynamicObject object with information about the operating system and architecture of the receiver node.

This method enables you to determine the various usages of Jade for a specific environment; for example, the type of binaries required for thin client downloads (for example, x64‑msoft‑win64‑ansi).

The properties that are returned in the dynamic object specified in the jdo parameter are listed in the following table.

Property Type Description
version String Specific version of the operating system.
architecture Integer

Internal byte ordering and alignment information relevant to Jade release. It is used by the setByteOrderLocal and setByteOrderRemote methods of the Character, Date, Decimal, Integer, Integer64, Real, Time, and TimeStamp primitive types.

The architecture can be one of the following values.

  • Architecture_32Big_Endian

  • Architecture_32Little_Endian

  • Architecture_64Big_Endian

  • Architecture_64Little_Endian

  • Architecture_Gui

For more details, see the Node Class Constants table.

platformId Integer

Operating system of the server node of the receiver object. The operating system returned by this method can be one of the following values.

  • OSWindowsEnterprise

  • OSWindowsHome

  • OSWindowsMobile

For more details, see the Node Class Constants table.

buildArchitecture String Details about the platform and build type for which the binaries were built (for example, x64‑msoft‑win64‑ansi). This can be used to determine the type of binaries required for thin client downloads.
currentBuildArchitectureList String Complete list of current buildArchitecture strings, separated by semicolons.
fullBuildArchitectureList String Complete list of past and current buildArchitecture strings, separated by semicolons.
isBigEndian Boolean Indicates if CPU for the node is running big‑endian (PowerPC can switch from big‑endian to little‑endian, and the reverse).
characterSize Integer 1 for ANSI, 2 for Unicode.
addressWidth Integer 32 indicates 32‑bit executing binaries, 64 indicates 64‑bit executing binaries.
osAddressWidth Integer 32 indicates a 32‑bit operating system, 64 indicates a 64‑bit operating system.
osVersionEnum Integer Internal unique number representing the operating system and hardware combination.
osVersionString String Description of the operating system in a readable format.

The first three properties (version, architecture, and platformId) are the same as the values returned by the getOSPlatform method.

The calling process is responsible for creating and deleting the JadeDynamicObject instance. The following example shows the use of the getOSDetails method.

vars
    jdo : JadeDynamicObject;
begin
    create jdo transient;
    node.getOSDetails(jdo);
    write jdo.display;
epilog
    delete jdo;
end;

The output from the getOSDetails method shown in the previous example is as follows.

--GetOSDetails(300)---children = JadeDynamicObjectArray/4194888.1.4194886.2.1 : 0
name = "GetOSDetails"
parent = *** <null> object reference ***
type = 300
version = 10.0
architecture = 3
platformId = 17
buildArchitecture = x64-msoft-win64-ansi
fullBuildArchitectureList = i686-msoft-win32-ansi;ppc-ibm-aix433-ansi;i686-suse-sles9-ansi;i686-redhat-rh9-ansi;i686-redhat-rhel3-ansi;i686-msoft-win32-unicode;i686-redhat-rhel3-unicode;i686-suse-sles9-unicode;armv4-msoft-wince42-unicode;i686-msoft-win32_6x-unicode;armv4-msoft-wince42_6x-unicode;armv4i-msoft-wince50_6x-unicode;armv4i-msoft-wince50-unicode;i686-msoft-x86emu-unicode;i686-suse-sles10-ansi;i686-suse-sles10-unicode;i686-redhat-rhel5-ansi;i686-redhat-rhel5-unicode;x64-msoft-win64-ansi;x64-msoft-win64-unicode;x86_64-suse-sles10-ansi;x86_64-suse-sles10-unicode;x86_64-redhat-rhel5-ansi;x86_64-redhat-rhel5-unicode;armv4i-msoft-wm60-unicode;i686-msoft-win32_VS2005-ansi;i686-msoft-win32_VS2005-unicode
currentBuildArchitectureList = i686-msoft-win32-ansi;i686-msoft-win32-unicode;x64-msoft-win64-ansi;x64-msoft-win64-unicode
isBigEndian = false
characterSize = 1
addressWidth = 64
osAddressWidth = 64
osVersionEnum = 80
osVersionString = Windows 10 Enterprise, 64-bit Edition