Package org.eclipse.equinox.p2.engine
Interface IProfile
- All Superinterfaces:
IQueryable<IInstallableUnit>
Represents the state of a profile in a profile registry at a given moment in time.
Note this object contains only a snapshot of a particular profile state, and will
never be updated if subsequent changes are made to this profile. A client should
never retain an
IProfile
instance, but rather retain the profile id and obtain
the current state of the profile from the profile registry only when required.- Since:
- 2.0
- Restriction:
- This interface is not intended to be implemented by clients.
- Restriction:
- This interface is not intended to be extended by clients.
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
Constant used to indicate that an installable unit is not locked in anyway.static final int
Constant used to indicate that an installable unit is locked so that it may not be uninstalled.static final int
Constant used to indicate that an installable unit is locked so that it may not be updated.static final String
Profile property constant indicating the bundle pool cache location.static final String
Profile property constant indicating the configuration folder for the profile.static final String
Profile property constant for a string property indicating a user visible short textual description of this profile.static final String
Profile property constant indicating the list of environments (e.g., OS, WS, ...) in which a profile can operate.static final String
Profile property constant for a boolean property indicating if update features should be installed in this profilestatic final String
Profile property constant indicating the install folder for the profile.static final String
Profile property constant indicating the location of the launcher configuration file for the profile.static final String
Profile property constant for a string property indicating a user visible name of this profile.static final String
Profile property constant indicating the installed language(s) for the profile.static final String
A property key (value"org.eclipse.equinox.p2.type.lock"
) for an integer property indicating how an installable unit is locked in its profile.static final String
A property key (value"org.eclipse.equinox.p2.type.root"
) for a boolean property indicating whether an installable unit should be considered a root of the install.static final String
Profile property constant for a boolean property indicating if the profiling is roaming.static final String
Profile property constant indicating a shared read-only bundle pool cache location.static final String
Profile property constant for additional parameters of the downloading stats(e.g., package=jee&os=linux).static final String
Profile state meta property key.static final String
Profile state metadata property key used to represent the state of the user profile when running in shared install.static final String
Profile state metadata property key used to associate with a profile state a user readable name.static final String
Value to represent a user profile before it is being flushed because the base had changed.static final String
Value to represent a user profile the first time it is created.static final String
Value to represent the new user profile created once the base profile has been flushed. -
Method Summary
Modifier and TypeMethodDescriptionavailable
(IQuery<IInstallableUnit> query, IProgressMonitor monitor) Returns the installable units in this profile that match the given query.Returns an unmodifiable map of all profile properties associated with the given installable unit in this profile.Returns the profile property associated with the given installable unit.Returns the id of this profile, unique within a given profile registryReturns an unmodifiable map of all profile properties.getProperty
(String key) Returns the profile property associated with the given key, ornull
if this property is not presentReturns the provisioning agent that manages this profilelong
Returns a timestamp describing when this profile snapshot was created.Methods inherited from interface org.eclipse.equinox.p2.query.IQueryable
contains, query
-
Field Details
-
LOCK_NONE
static final int LOCK_NONEConstant used to indicate that an installable unit is not locked in anyway.- See Also:
-
LOCK_UNINSTALL
static final int LOCK_UNINSTALLConstant used to indicate that an installable unit is locked so that it may not be uninstalled.- See Also:
-
LOCK_UPDATE
static final int LOCK_UPDATEConstant used to indicate that an installable unit is locked so that it may not be updated.- See Also:
-
PROP_PROFILE_LOCKED_IU
A property key (value"org.eclipse.equinox.p2.type.lock"
) for an integer property indicating how an installable unit is locked in its profile. The integer is a bit-mask indicating the different locks defined on the installable unit. The property should be obtained from a profile using IProfile#getInstallableUnitProperty(IInstallableUnit, String). -
PROP_PROFILE_ROOT_IU
A property key (value"org.eclipse.equinox.p2.type.root"
) for a boolean property indicating whether an installable unit should be considered a root of the install. Typically this means the unit will appear to the end user as a top-level installed item. The property should be obtained from a profile using IProfile#getInstallableUnitProperty(IInstallableUnit, String). -
PROP_INSTALL_FOLDER
Profile property constant indicating the install folder for the profile.- See Also:
-
PROP_CONFIGURATION_FOLDER
Profile property constant indicating the configuration folder for the profile.- See Also:
-
PROP_LAUNCHER_CONFIGURATION
Profile property constant indicating the location of the launcher configuration file for the profile.- See Also:
-
PROP_NL
Profile property constant indicating the installed language(s) for the profile.- See Also:
-
PROP_DESCRIPTION
Profile property constant for a string property indicating a user visible short textual description of this profile. May be empty ornull
, and generally will be for non-top level install contexts.- See Also:
-
PROP_NAME
Profile property constant for a string property indicating a user visible name of this profile. May be empty ornull
, and generally will be for non-top level install contexts.- See Also:
-
PROP_ENVIRONMENTS
Profile property constant indicating the list of environments (e.g., OS, WS, ...) in which a profile can operate. The value of the property is a comma-delimited string of key/value pairs.- See Also:
-
PROP_ROAMING
Profile property constant for a boolean property indicating if the profiling is roaming. A roaming profile is one whose physical install location varies and is updated whenever it runs.- See Also:
-
PROP_CACHE
Profile property constant indicating the bundle pool cache location.- See Also:
-
PROP_SHARED_CACHE
Profile property constant indicating a shared read-only bundle pool cache location.- See Also:
-
PROP_INSTALL_FEATURES
Profile property constant for a boolean property indicating if update features should be installed in this profile- See Also:
-
STATE_PROP_HIDDEN
Profile state meta property key. Can be used to mark a profile state that should be hidden. The value of the property is not relevant as the property's existence is enough. Althoughtrue
would be a typical value.- Since:
- 2.1
- See Also:
-
STATE_PROP_TAG
Profile state metadata property key used to associate with a profile state a user readable name.- Since:
- 2.1
- See Also:
-
STATE_PROP_SHARED_INSTALL
Profile state metadata property key used to represent the state of the user profile when running in shared install. The value for this property could be:STATE_SHARED_INSTALL_VALUE_INITIAL
,STATE_SHARED_INSTALL_VALUE_BEFOREFLUSH
orSTATE_SHARED_INSTALL_VALUE_NEW
- Since:
- 2.3
- See Also:
-
STATE_SHARED_INSTALL_VALUE_INITIAL
Value to represent a user profile the first time it is created.- Since:
- 2.3
- See Also:
-
STATE_SHARED_INSTALL_VALUE_BEFOREFLUSH
Value to represent a user profile before it is being flushed because the base had changed.- Since:
- 2.3
- See Also:
-
STATE_SHARED_INSTALL_VALUE_NEW
Value to represent the new user profile created once the base profile has been flushed.- Since:
- 2.3
- See Also:
-
PROP_STATS_PARAMETERS
Profile property constant for additional parameters of the downloading stats(e.g., package=jee&os=linux).- Since:
- 2.2
- See Also:
-
-
Method Details
-
getProvisioningAgent
IProvisioningAgent getProvisioningAgent()Returns the provisioning agent that manages this profile- Returns:
- A provisioning agent.
-
getProfileId
String getProfileId()Returns the id of this profile, unique within a given profile registry- Returns:
- the profile id
-
getProperty
Returns the profile property associated with the given key, ornull
if this property is not present- Parameters:
key
- The property kid- Returns:
- the property value, or
null
-
getInstallableUnitProperty
Returns the profile property associated with the given installable unit.- Parameters:
iu
- the installable unit to return the property forkey
- the property key- Returns:
- the property value, or
null
if no such property is defined
-
getProperties
Returns an unmodifiable map of all profile properties.- Returns:
- a map of all profile properties.
-
getInstallableUnitProperties
Returns an unmodifiable map of all profile properties associated with the given installable unit in this profile.- Parameters:
iu
- the installable unit to return profile properties for- Returns:
- an unmodifiable map of installable unit profile properties
-
getTimestamp
long getTimestamp()Returns a timestamp describing when this profile snapshot was created.- Returns:
- A profile timestamp
-
available
Returns the installable units in this profile that match the given query. In a shared install, this will include both the installable units in the shared base location, and in the current user's private install area.- Parameters:
query
- The query to use for matching.monitor
- a progress monitor, ornull
if progress reporting is not desired- Returns:
- The installable units that match the given query
-