org.apache.felix.utils.repository

## Class XmlRepository

- java.lang.Object
- - org.apache.felix.utils.repository.BaseRepository
  - - org.apache.felix.utils.repository.XmlRepository

All Implemented Interfaces:
  org.osgi.service.repository.Repository

    public class XmlRepository
    extends BaseRepository

Repository conforming to the OSGi Repository specification. The content of the URL can be gzipped.

### Nested Class Summary

Nested Classes
`protected static class` `XmlRepository.XmlLoader`

### Field Summary

Fields
`protected long` `expiration`
`protected Map<String,XmlRepository.XmlLoader>` `loaders`
`protected ReadWriteLock` `lock`
`protected String` `url`

### Fields inherited from class org.apache.felix.utils.repository.BaseRepository

`capSets, resources`

### Fields inherited from interface org.osgi.service.repository.Repository

`URL`

### Constructor Summary

Constructors
Constructor and Description
`XmlRepository(String url, long expiration)`

### Method Summary

All Methods Instance Methods Concrete Methods
`protected void` `addResource(org.osgi.resource.Resource resource)`
`protected void` `checkAndLoadCache()`
`Map<org.osgi.resource.Requirement,Collection<org.osgi.resource.Capability>>` `findProviders(Collection<? extends org.osgi.resource.Requirement> requirements)`
`protected Map<String,XmlRepository.XmlLoader>` `getLoaders()`
`List<org.osgi.resource.Resource>` `getResources()`
`String` `getUrl()`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### url

    protected final String url

#### expiration

    protected final long expiration

#### loaders

    protected final Map<String,XmlRepository.XmlLoader> loaders

#### lock

    protected final ReadWriteLock lock

### Constructor Detail

#### XmlRepository

    public XmlRepository(String url,
                         long expiration)

### Method Detail

#### getResources

    public List<org.osgi.resource.Resource> getResources()

Overrides:
  `getResources` in class `BaseRepository`

#### findProviders

    public Map<org.osgi.resource.Requirement,Collection<org.osgi.resource.Capability>> findProviders(Collection<? extends org.osgi.resource.Requirement> requirements)

Specified by:
  `findProviders` in interface `org.osgi.service.repository.Repository`
Overrides:
  `findProviders` in class `BaseRepository`

#### getUrl

    public String getUrl()

#### getLoaders

    protected Map<String,XmlRepository.XmlLoader> getLoaders()

#### addResource

    protected void addResource(org.osgi.resource.Resource resource)

Overrides:
  `addResource` in class `BaseRepository`

#### checkAndLoadCache

    protected void checkAndLoadCache()