fix baseline build (old cairo) - 'cairo_rectangle_int_t' does not name a type
[LibreOffice.git] / jvmfwk / source / fwkbase.hxx
bloba8efc2a119ea475bc21185125ec4cbba7e277836
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
19 #ifndef INCLUDED_JVMFWK_SOURCE_FWKBASE_HXX
20 #define INCLUDED_JVMFWK_SOURCE_FWKBASE_HXX
22 #include "rtl/ustring.hxx"
23 #include "libxmlutil.hxx"
25 namespace jfw
28 class VendorSettings
30 OUString m_xmlDocVendorSettingsFileUrl;
31 CXmlDocPtr m_xmlDocVendorSettings;
32 CXPathContextPtr m_xmlPathContextVendorSettings;
34 public:
35 VendorSettings();
37 VersionInfo getVersionInformation(const OUString & sVendor);
39 ::std::vector< OUString> getSupportedVendors();
42 /* The class offers functions to retrieve verified bootstrap parameters.
44 namespace BootParams
47 /* Gets the file URL to the JRE which has been determined by the
48 bootstrap parameter UNO_JAVA_JFW_JREHOME or UNO_JAVA_JFW_ENV_JREHOME.
50 In direct mode either of them must be set. If not an exception is thrown.
52 OUString getJREHome();
54 ::std::vector< OString> getVMParameters();
56 OUString getUserData();
58 OUString getSharedData();
60 /* returns the file URL to the vendor settings xml file.
62 OUString getVendorSettings();
64 /* User the parameter UNO_JAVA_JFW_CLASSPATH and UNO_JAVA_JFW_ENV_CLASSPATH
65 to compose a classpath
67 OString getClasspath();
69 OUString getClasspathUrls();
71 } //end namespace
75 enum JFW_MODE
77 JFW_MODE_APPLICATION,
79 JFW_MODE_DIRECT
82 JFW_MODE getMode();
84 /** creates the -Djava.class.path option with the complete classpath, including
85 the paths which are set by UNO_JAVA_JFW_CLASSPATH_URLS.
87 OString makeClassPathOption(OUString const & sUserClassPath);
89 OString getSettingsPath( const OUString & sURL);
91 /** Get the system path to the javasettings.xml
92 Converts the URL returned from getUserSettingsURL to a
93 Systempath. An empty string is returned if the file
94 does not exist.
95 @throws FrameworkException
97 OString getUserSettingsPath();
99 /** Returns the system path of the share settings file.
100 Returns a valid string or throws an exception.
101 @throws FrameworkException
103 OString getSharedSettingsPath();
105 /* returns a valid string or throws an exception.
106 @throws FrameworkException
108 OString getVendorSettingsPath();
110 /** Called from writeJavaInfoData. It sets the process identifier. When
111 java is to be started, then the current id is compared to the one set by
112 this function. If they are identical then the Java was selected in the
113 same process. If that Java needs a prepared environment, such as a
114 LD_LIBRARY_PATH, then it must not be started in this process.
116 void setJavaSelected();
118 /** Determines if the currently selected Java was set in this process.
120 @see setProcessId()
122 bool wasJavaSelectedInSameProcess();
123 /* Only for application mode.
125 OUString getApplicationClassPath();
128 #endif
130 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */