org.jvnet.hk2.osgiadapter
Class OSGiObrBasedRepository

java.lang.Object
  extended by org.jvnet.hk2.osgiadapter.OSGiObrBasedRepository
All Implemented Interfaces:
Repository

public class OSGiObrBasedRepository
extends Object
implements Repository

Author:
Sanjeeb.Sahoo@Sun.COM

Constructor Summary
OSGiObrBasedRepository(org.apache.felix.bundlerepository.Repository obr)
           
 
Method Summary
 boolean addListener(RepositoryChangeListener listener)
          Add a listener to changes happening to this repository.
 ModuleDefinition find(String name, String version)
          Finds and returns a DefaultModuleDefinition instance for a module given the name and version constraints.
 List<ModuleDefinition> findAll()
          Returns a list of all modules available in this repository
 List<ModuleDefinition> findAll(String name)
          Finds and returns a list of all the available versions of a module given its name.
 List<URI> getJarLocations()
          Returns the plain jar files installed in this repository.
 URI getLocation()
          Returns the repository location
 String getName()
          Returns the repository name
 void initialize()
          Initialize the repository for use.
 boolean removeListener(RepositoryChangeListener listener)
          Removes a previously registered listener
 void shutdown()
          Shutdown the repository.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

OSGiObrBasedRepository

public OSGiObrBasedRepository(org.apache.felix.bundlerepository.Repository obr)
Method Detail

getName

public String getName()
Description copied from interface: Repository
Returns the repository name

Specified by:
getName in interface Repository
Returns:
repository name

getLocation

public URI getLocation()
Description copied from interface: Repository
Returns the repository location

Specified by:
getLocation in interface Repository
Returns:
the URI for the repository location

find

public ModuleDefinition find(String name,
                             String version)
Description copied from interface: Repository
Finds and returns a DefaultModuleDefinition instance for a module given the name and version constraints.

Specified by:
find in interface Repository
Parameters:
name - the requested module name
version - the module version. Can be null if the caller doesn't care about the version.
Returns:
a DefaultModuleDefinition or null if not found in this repository.

findAll

public List<ModuleDefinition> findAll()
Description copied from interface: Repository
Returns a list of all modules available in this repository

Specified by:
findAll in interface Repository
Returns:
a list of available modules

findAll

public List<ModuleDefinition> findAll(String name)
Description copied from interface: Repository
Finds and returns a list of all the available versions of a module given its name.

Specified by:
findAll in interface Repository
Parameters:
name - the requested module name

initialize

public void initialize()
                throws IOException
Description copied from interface: Repository
Initialize the repository for use. This need to be called at least once before any find methods is invoked.

Specified by:
initialize in interface Repository
Throws:
IOException - if an error occur accessing the repository

shutdown

public void shutdown()
              throws IOException
Description copied from interface: Repository
Shutdown the repository. After this call return, the find methods cannot be used until initialize() is called again.

Specified by:
shutdown in interface Repository
Throws:
IOException - if an error occur accessing the repository

getJarLocations

public List<URI> getJarLocations()
Description copied from interface: Repository
Returns the plain jar files installed in this repository. Plain jar files are not modules, they do not have the module's metadata and can only be used when referenced from a module dependency list or when added to a class loader directly

Specified by:
getJarLocations in interface Repository
Returns:
jar files location stored in this repository.

addListener

public boolean addListener(RepositoryChangeListener listener)
Description copied from interface: Repository
Add a listener to changes happening to this repository. Repository can change during the lifetime of an execution (files added/removed/changed)

Specified by:
addListener in interface Repository
Parameters:
listener - implementation listening to this repository changes
Returns:
true if the listener was added successfully

removeListener

public boolean removeListener(RepositoryChangeListener listener)
Description copied from interface: Repository
Removes a previously registered listener

Specified by:
removeListener in interface Repository
Parameters:
listener - the previously registered listener
Returns:
true if the listener was successfully unregistered


Copyright © 2013 Oracle Corporation. All Rights Reserved.