]> git.argeo.org Git - lgpl/argeo-commons.git/blob - org.argeo.osgi.boot/src/org/argeo/osgi/a2/ProvisioningSource.java
Merge remote-tracking branch 'origin/master' into v2.x
[lgpl/argeo-commons.git] / org.argeo.osgi.boot / src / org / argeo / osgi / a2 / ProvisioningSource.java
1 package org.argeo.osgi.a2;
2
3 import org.osgi.framework.Bundle;
4 import org.osgi.framework.BundleContext;
5 import org.osgi.framework.Version;
6
7 /** Where components are retrieved from. */
8 public interface ProvisioningSource {
9 /** List all contributions of this source. */
10 Iterable<A2Contribution> listContributions(Object filter);
11
12 /** Install a module in the OSGi runtime. */
13 Bundle install(BundleContext bc, A2Module module);
14
15 /** Update a module in the OSGi runtime. */
16 void update(Bundle bundle, A2Module module);
17
18 /** Finds the {@link A2Branch} related to this component and version. */
19 A2Branch findBranch(String componentId, Version version);
20
21 }