@ProviderType public interface PackageRegistry
PackageManager
and
JcrPackageManager
. It defines storage independent methods to
register (upload), enumerate and remove packages. The installation lifecycle of the packages is provided via
ExecutionPlan
s.Modifier and Type | Method and Description |
---|---|
DependencyReport |
analyzeDependencies(PackageId id,
boolean onlyInstalled)
Creates a dependency report that lists the resolved and unresolved dependencies.
|
boolean |
contains(PackageId id)
Checks if this registry contains the package with the given id.
|
ExecutionPlanBuilder |
createExecutionPlan()
Creates a new execution plan builder.
|
RegisteredPackage |
open(PackageId id)
Opens the package with the given id.
|
Set<PackageId> |
packages()
Returns as set of all packages registered in this registry.
|
PackageId |
register(File file,
boolean replace)
Registers a package provided via a file.
|
PackageId |
register(InputStream in,
boolean replace)
Registers a package provided via an input stream.
|
PackageId |
registerExternal(File file,
boolean replace)
Registers a package provided via an external file.
|
void |
remove(PackageId id)
Removes the package from this registry.
|
PackageId |
resolve(Dependency dependency,
boolean onlyInstalled)
Tries to resolve the given dependency and returns the id of the package that matches the dependency filter best.
|
PackageId[] |
usage(PackageId id)
Returns the package ids of installed packages that depend on the given package.
|
boolean contains(@Nonnull PackageId id) throws IOException
id
- the package id.true
if the package is registered.IOException
- if an I/O error occurrs.@Nonnull Set<PackageId> packages() throws IOException
IOException
- if an I/O error occurrs.@Nullable RegisteredPackage open(@Nonnull PackageId id) throws IOException
id
- the package idnull
if it does not exists.IOException
- if an I/O error occurrs.@Nonnull PackageId register(@Nonnull InputStream in, boolean replace) throws IOException, PackageExistsException
replace
is set to false
. otherwise the existing package is replaced.in
- the input stream to the package datareplace
- true
if existing package should be replaced.IOException
- if an I/O error occurrs.PackageExistsException
- if the package exists and replace
is false
.@Nonnull PackageId register(@Nonnull File file, boolean replace) throws IOException, PackageExistsException
replace
is set to false
; otherwise the existing package is replaced.file
- the file to the package datareplace
- true
if existing package should be replaced.IOException
- if an I/O error occurrs.PackageExistsException
- if the package exists and replace
is false
.@Nonnull PackageId registerExternal(@Nonnull File file, boolean replace) throws IOException, PackageExistsException
replace
is set to false
; otherwise the existing package is replaced.file
- the file to the package data.replace
- true
if existing package should be replaced.IOException
- if an I/O error occurrs.PackageExistsException
- if the package exists and replace
is false
.void remove(@Nonnull PackageId id) throws IOException, NoSuchPackageException
id
- the id of the package to removeIOException
- if an I/O error occurrs.NoSuchPackageException
- if the package does not exist@Nonnull DependencyReport analyzeDependencies(@Nonnull PackageId id, boolean onlyInstalled) throws IOException, NoSuchPackageException
id
- the package id.onlyInstalled
- if true
only installed packages are used for resolutionIOException
- if an error accessing the repository occurrsNoSuchPackageException
- if the package with the given id
does not exist.@Nullable PackageId resolve(@Nonnull Dependency dependency, boolean onlyInstalled) throws IOException
dependency
- the dependency to resolve against.onlyInstalled
- if true
only installed packages are respected.null
IOException
- if an I/O error occurrs.@Nonnull PackageId[] usage(@Nonnull PackageId id) throws IOException
id
- the package id to search forIOException
- if an I/O error occurs.@Nonnull ExecutionPlanBuilder createExecutionPlan()
Copyright © 2010 - 2020 Adobe. All Rights Reserved