0N/A/*
3261N/A * Copyright (c) 1998, 2010, Oracle and/or its affiliates. All rights reserved.
0N/A * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
0N/A *
0N/A * This code is free software; you can redistribute it and/or modify it
0N/A * under the terms of the GNU General Public License version 2 only, as
2362N/A * published by the Free Software Foundation. Oracle designates this
0N/A * particular file as subject to the "Classpath" exception as provided
2362N/A * by Oracle in the LICENSE file that accompanied this code.
0N/A *
0N/A * This code is distributed in the hope that it will be useful, but WITHOUT
0N/A * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
0N/A * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
0N/A * version 2 for more details (a copy is included in the LICENSE file that
0N/A * accompanied this code).
0N/A *
0N/A * You should have received a copy of the GNU General Public License version
0N/A * 2 along with this work; if not, write to the Free Software Foundation,
0N/A * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
0N/A *
2362N/A * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
2362N/A * or visit www.oracle.com if you need additional information or have any
2362N/A * questions.
0N/A */
0N/A
0N/A#ifndef _JAVA_PROPS_H
0N/A#define _JAVA_PROPS_H
0N/A
0N/A#include <jni_util.h>
0N/A
2247N/A/* The preferred native type for storing text on the current OS */
2247N/A#ifdef WIN32
2247N/A#include <tchar.h>
2247N/Atypedef WCHAR nchar;
2247N/A#else
2247N/Atypedef char nchar;
2247N/A#endif
2247N/A
0N/Atypedef struct {
0N/A char *os_name;
0N/A char *os_version;
0N/A char *os_arch;
0N/A
2247N/A nchar *tmp_dir;
2247N/A nchar *font_dir;
2247N/A nchar *user_dir;
0N/A
0N/A char *file_separator;
0N/A char *path_separator;
0N/A char *line_separator;
0N/A
2247N/A nchar *user_name;
2247N/A nchar *user_home;
0N/A
0N/A char *language;
2700N/A char *format_language;
2700N/A char *display_language;
2976N/A char *script;
2976N/A char *format_script;
2976N/A char *display_script;
0N/A char *country;
2700N/A char *format_country;
2700N/A char *display_country;
0N/A char *variant;
2700N/A char *format_variant;
2700N/A char *display_variant;
0N/A char *encoding;
0N/A char *sun_jnu_encoding;
0N/A char *timezone;
0N/A
0N/A char *printerJob;
0N/A char *graphics_env;
0N/A char *awt_toolkit;
0N/A
0N/A char *unicode_encoding; /* The default endianness of unicode
0N/A i.e. UnicodeBig or UnicodeLittle */
0N/A
0N/A const char *cpu_isalist; /* list of supported instruction sets */
0N/A
0N/A char *cpu_endian; /* endianness of platform */
0N/A
0N/A char *data_model; /* 32 or 64 bit data model */
0N/A
0N/A char *patch_level; /* patches/service packs installed */
0N/A
0N/A char *desktop; /* Desktop name. */
0N/A
4632N/A#ifdef MACOSX
4632N/A // These are for proxy-related information.
4632N/A // Note that if these platform-specific extensions get out of hand we should make a new
4632N/A // structure for them and #include it here.
4632N/A int httpProxyEnabled;
4632N/A char *httpHost;
4632N/A char *httpPort;
4632N/A
4632N/A int httpsProxyEnabled;
4632N/A char *httpsHost;
4632N/A char *httpsPort;
4632N/A
4632N/A int ftpProxyEnabled;
4632N/A char *ftpHost;
4632N/A char *ftpPort;
4632N/A
4632N/A int socksProxyEnabled;
4632N/A char *socksHost;
4632N/A char *socksPort;
4632N/A
4632N/A int gopherProxyEnabled;
4632N/A char *gopherHost;
4632N/A char *gopherPort;
4632N/A
4632N/A char *exceptionList;
4632N/A#endif
4632N/A
0N/A} java_props_t;
0N/A
0N/Ajava_props_t *GetJavaProperties(JNIEnv *env);
2247N/Ajstring GetStringPlatform(JNIEnv *env, nchar* str);
0N/A
0N/A#endif /* _JAVA_PROPS_H */