All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.eclipse.osgi.service.environment.EnvironmentInfo Maven / Gradle / Ivy

Go to download

AspectJ tools most notably contains the AspectJ compiler (AJC). AJC applies aspects to Java classes during compilation, fully replacing Javac for plain Java classes and also compiling native AspectJ or annotation-based @AspectJ syntax. Furthermore, AJC can weave aspects into existing class files in a post-compile binary weaving step. This library is a superset of AspectJ weaver and hence also of AspectJ runtime.

There is a newer version: 1.9.22.1
Show newest version
/*******************************************************************************
 * Copyright (c) 2003, 2008 IBM Corporation and others.
 *
 * This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License 2.0
 * which accompanies this distribution, and is available at
 * https://www.eclipse.org/legal/epl-2.0/
 *
 * SPDX-License-Identifier: EPL-2.0
 *
 * Contributors:
 *     IBM Corporation - initial API and implementation
 *******************************************************************************/
package org.eclipse.osgi.service.environment;

/**
 * A Framework service which gives access to the command line used to start
 * this running framework as well as information about the environment
 * such as the current operating system, machine architecture, locale and
 * windowing system.
 * 

* This interface is not intended to be implemented by clients. *

* * @since 3.0 * @noimplement This interface is not intended to be implemented by clients. */ // TODO Need to add a method that gets the real application args. //We might also want to explain how the command line is organized: fwk / non fwk. Non-fwk is rt args and app args. public interface EnvironmentInfo { /** * Returns all command line arguments specified when the running framework was started. * * @return the array of command line arguments. */ public String[] getCommandLineArgs(); /** * Returns the arguments consumed by the framework implementation itself. Which * arguments are consumed is implementation specific. * * @return the array of command line arguments consumed by the framework. */ public String[] getFrameworkArgs(); /** * Returns the arguments not consumed by the framework implementation itself. Which * arguments are consumed is implementation specific. * * @return the array of command line arguments not consumed by the framework. */ public String[] getNonFrameworkArgs(); /** * Returns the string name of the current system architecture. * The value is a user-defined string if the architecture is * specified on the command line, otherwise it is the value * returned by java.lang.System.getProperty("os.arch"). * * @return the string name of the current system architecture */ public String getOSArch(); /** * Returns the string name of the current locale for use in finding files * whose path starts with $nl$. * * @return the string name of the current locale */ public String getNL(); /** * Returns the string name of the current operating system for use in finding * files whose path starts with $os$. Return {@link Constants#OS_UNKNOWN} * if the operating system cannot be determined. *

* The value may indicate one of the operating systems known to the platform * (as specified in org.eclipse.core.runtime.Platform#knownOSValues) * or a user-defined string if the operating system name is specified on the command line. *

* * @return the string name of the current operating system */ public String getOS(); /** * Returns the string name of the current window system for use in finding files * whose path starts with $ws$. Return null * if the window system cannot be determined. * * @return the string name of the current window system or null */ public String getWS(); /** * Returns true if the framework is in debug mode and * false otherwise. * * @return whether or not the framework is in debug mode */ public boolean inDebugMode(); /** * Returns true if the framework is in development mode * and false otherwise. * * @return whether or not the framework is in development mode */ public boolean inDevelopmentMode(); /** * Returns the value for the specified property. Environment Properties are * backed by the Java system properties. When the option * osgi.framework.useSystemProperties is used then * the environment properties are specific for each instance of the framework. *

* This method should be used instead of the System.getProperty(String) * method to avoid the global nature of system properties. *

* @param key the property key * @return the value of the property, or null * @since 3.4 */ public String getProperty(String key); /** * Sets the value for the specified property. Environment Properties are * backed by the Java system properties. When the option * osgi.framework.useSystemProperties is used then * the environment properties are specific for each instance of the framework. *

* This method should be used instead of the System.setProperty(String, String) * method to avoid the global nature of system properties. *

* @param key the property key * @param value the value of the property * @return the old value of the property, or null * @since 3.4 */ public String setProperty(String key, String value); }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy