org.eclipse.osgi.service.resolver.Resolver Maven / Gradle / Ivy
The newest version!
/*******************************************************************************
* Copyright (c) 2003, 2012 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.osgi.service.resolver;
import java.util.Comparator;
import java.util.Dictionary;
/**
* An implementation of a resolver which resolves the constraints of the bundles
* in a system.
*
* Clients may implement this interface.
*
* @since 3.1
*/
public interface Resolver {
/**
* Resolves the state associated with this resolver and returns an array of
* bundle deltas describing the changes.. The state and version bindings
* for the various bundles and packages in this state are updated and a
* array containing bundle deltas describing the changes returned.
*
* This method is intended to be called only by State objects in response
* to a user invocation of State.resolve(). States will typically refuse to
* update their constituents (see State.resolveBundle() and
* State.resolveConstraint()) if their resolve method is not currently
* being invoked.
*
*
* Note the given state is destructively modified to reflect the results of
* resolution.
*
* @param discard the list of bundles to discard the resolve status and
* reresolve. A null value indicates that all currently unresolved
* bundles in the state should be resolved.
* @param platformProperties the platform properties used to match platform filters
* against. A null value indicates that the system properties should
* be used to match against
*/
public void resolve(BundleDescription[] discard, Dictionary
© 2015 - 2024 Weber Informatics LLC | Privacy Policy