## org.apache.ivy.osgi.repo
Class AbstractOSGiResolver

    java.lang.Object
      org.apache.ivy.plugins.resolver.AbstractResolver
          org.apache.ivy.plugins.resolver.BasicResolver
              org.apache.ivy.osgi.repo.AbstractOSGiResolver

All Implemented Interfaces:
  Validatable, DependencyResolver, HasLatestStrategy

Direct Known Subclasses:
  OBRResolver, UpdateSiteResolver

    public abstract class AbstractOSGiResolver

extends BasicResolver

Nested Class Summary
`static class` `AbstractOSGiResolver.RequirementStrategy`

Field Summary

Fields inherited from class org.apache.ivy.plugins.resolver.BasicResolver
`DATE_FORMAT, DESCRIPTOR_OPTIONAL, DESCRIPTOR_REQUIRED`

Constructor Summary
`AbstractOSGiResolver()`

Method Summary
`protected void` `checkModuleDescriptorRevision(ModuleDescriptor systemMd, ModuleRevisionId systemMrid)`
`protected void` `ensureInit()`
`protected java.util.Collection` `filterNames(java.util.Collection names)` Filters names before returning them in the findXXXNames or findTokenValues method.
`ResolvedResource` `findArtifactRef(Artifact artifact, java.util.Date date)`
`ResolvedResource[]` `findBundle(DependencyDescriptor dd, ResolveData data, java.util.Set mds)`
`ResolvedResource[]` `findCapability(DependencyDescriptor dd, ResolveData data, java.util.Set mds)`
`ResolvedResource` `findIvyFileRef(DependencyDescriptor dd, ResolveData data)` Finds the module descriptor for the specified `DependencyDescriptor`.
`protected java.util.Collection` `findNames(java.util.Map tokenValues, java.lang.String token)`
`ResolvedResource` `findResource(ResolvedResource[] rress, ResourceMDParser rmdparser, ModuleRevisionId mrid, java.util.Date date)` When the resolver has many choices, this function helps choosing one
`protected long` `get(Resource resource, java.io.File dest)`
`URLRepository` `getRepository()`
`protected Resource` `getResource(java.lang.String source)`
`protected abstract void` `init()`
`boolean` `isAllownomd()`
`java.util.Map[]` `listTokenValues(java.lang.String[] tokens, java.util.Map criteria)` Same as `DependencyResolver.listTokenValues(String, Map)` but more generic.
`void` `publish(Artifact artifact, java.io.File src, boolean overwrite)`
`protected void` `setRepoDescriptor(RepoDescriptor repoDescriptor)`
`void` `setRequirementStrategy(AbstractOSGiResolver.RequirementStrategy importPackageStrategy)`
`void` `setRequirementStrategy(java.lang.String strategy)`

Methods inherited from class org.apache.ivy.plugins.resolver.BasicResolver

`acceptLatest, clearArtifactAttempts, clearIvyAttempts, doFindArtifactRef, download, download, exists, findFirstArtifactRef, getAndCheck, getArtifactRef, getChecksumAlgorithms, getDefaultRMDParser, getDependency, getPublicationDate, getRMDParser, getWorkspaceName, isCheckconsistency, isEnvDependent, isForce, listModules, listOrganisations, listRevisions, listTokenValues, locate, logArtifactAttempt, logAttempt, logIvyAttempt, parse, reportFailure, reportFailure, setAllownomd, setCheckconsistency, setChecksums, setDescriptor, setEnvDependent, setForce, setWorkspaceName, shouldReturnResolvedModule, toString`

Methods inherited from class org.apache.ivy.plugins.resolver.AbstractResolver

`abortPublishTransaction, beginPublishTransaction, checkInterrupted, checkLatest, commitPublishTransaction, doValidate, dumpSettings, findModuleInCache, findModuleInCache, fromSystem, fromSystem, getCacheDownloadOptions, getCacheOptions, getChangingMatcherName, getChangingPattern, getDownloadOptions, getEventManager, getLatest, getLatestStrategy, getName, getNamespace, getParserSettings, getRepositoryCacheManager, getSettings, getSystemNode, getTypeName, hidePassword, isAfter, isValidate, saveModuleRevisionIfNeeded, setCache, setChangingMatcher, setChangingPattern, setCheckmodified, setEventManager, setLatest, setLatestStrategy, setName, setNamespace, setRepositoryCacheManager, setSettings, setValidate, toSystem, toSystem, toSystem, toSystem, toSystem, toSystem, validate`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### AbstractOSGiResolver

    public AbstractOSGiResolver()

Method Detail

### setRequirementStrategy

    public void setRequirementStrategy(AbstractOSGiResolver.RequirementStrategy importPackageStrategy)

### setRequirementStrategy

    public void setRequirementStrategy(java.lang.String strategy)

### setRepoDescriptor

    protected void setRepoDescriptor(RepoDescriptor repoDescriptor)

### getRepository

    public URLRepository getRepository()

### ensureInit

    protected void ensureInit()

### init

    protected abstract void init()

### isAllownomd

    public boolean isAllownomd()

  Overrides:
    `isAllownomd` in class `BasicResolver`

### findIvyFileRef

    public ResolvedResource findIvyFileRef(DependencyDescriptor dd,
                                           ResolveData data)

  Description copied from interface: `DependencyResolver`
  Finds the module descriptor for the specified `DependencyDescriptor`. If this resolver can't find the module descriptor, `null` is returned.

  Parameters:
    `dd` - the dependency descriptor
    `data` - the resolve data
  Returns:
    the module descriptor, or `null`

### findBundle

    public ResolvedResource[] findBundle(DependencyDescriptor dd,
                                         ResolveData data,
                                         java.util.Set mds)

### findCapability

    public ResolvedResource[] findCapability(DependencyDescriptor dd,
                                             ResolveData data,
                                             java.util.Set mds)

### findResource

    public ResolvedResource findResource(ResolvedResource[] rress,
                                         ResourceMDParser rmdparser,
                                         ModuleRevisionId mrid,
                                         java.util.Date date)

  Description copied from class: `BasicResolver`
  When the resolver has many choices, this function helps choosing one

  Overrides:
    `findResource` in class `BasicResolver`
  Parameters:
    `rress` - the list of resolved resource which the resolver found to fit the requirement
    `rmdparser` - the parser of module descriptor
    `mrid` - the module being resolved
    `date` - the current date
  Returns:
    the selected resource

### findArtifactRef

    public ResolvedResource findArtifactRef(Artifact artifact,
                                            java.util.Date date)

  Specified by:
    `findArtifactRef` in class `BasicResolver`

### checkModuleDescriptorRevision

    protected void checkModuleDescriptorRevision(ModuleDescriptor systemMd,
                                                 ModuleRevisionId systemMrid)

  Overrides:
    `checkModuleDescriptorRevision` in class `BasicResolver`

### filterNames

    protected java.util.Collection filterNames(java.util.Collection names)

  Description copied from class: `BasicResolver`
  Filters names before returning them in the findXXXNames or findTokenValues method.

  Remember to call the super implementation when overriding this method.

  Overrides:
    `filterNames` in class `BasicResolver`
  Parameters:
    `names` - the list to filter.
  Returns:
    the filtered list

### findNames

    protected java.util.Collection findNames(java.util.Map tokenValues,
                                             java.lang.String token)

  Specified by:
    `findNames` in class `BasicResolver`

### listTokenValues

    public java.util.Map[] listTokenValues(java.lang.String[] tokens,
                                           java.util.Map criteria)

  Description copied from interface: `DependencyResolver`
  Same as `DependencyResolver.listTokenValues(String, Map)` but more generic.

  Specified by:
    `listTokenValues` in interface `DependencyResolver`
  Overrides:
    `listTokenValues` in class `AbstractResolver`
  Parameters:
    `tokens` - the tokens of the query
    `criteria` - the token which have values
  Returns:
    the list of token values (Map<Strin, String>[]), must not be `null`

### get

    protected long get(Resource resource,
                       java.io.File dest)
                throws java.io.IOException

  Specified by:
    `get` in class `BasicResolver`
  Throws:
    `java.io.IOException`

### getResource

    protected Resource getResource(java.lang.String source)
                            throws java.io.IOException

  Specified by:
    `getResource` in class `BasicResolver`
  Throws:
    `java.io.IOException`

### publish

    public void publish(Artifact artifact,
                        java.io.File src,
                        boolean overwrite)
                 throws java.io.IOException

  Throws:
    `java.io.IOException`