Class ListCompositeArtifactRepository

  • All Implemented Interfaces:
    org.eclipse.core.runtime.IAdaptable, org.eclipse.equinox.p2.query.IQueryable<org.eclipse.equinox.p2.metadata.IArtifactKey>, org.eclipse.equinox.p2.repository.artifact.IArtifactRepository, org.eclipse.equinox.p2.repository.artifact.IFileArtifactRepository, org.eclipse.equinox.p2.repository.ICompositeRepository<org.eclipse.equinox.p2.metadata.IArtifactKey>, org.eclipse.equinox.p2.repository.IRepository<org.eclipse.equinox.p2.metadata.IArtifactKey>

    public class ListCompositeArtifactRepository
    extends org.eclipse.equinox.p2.repository.artifact.spi.AbstractArtifactRepository
    implements org.eclipse.equinox.p2.repository.ICompositeRepository<org.eclipse.equinox.p2.metadata.IArtifactKey>, org.eclipse.equinox.p2.repository.artifact.IArtifactRepository, org.eclipse.equinox.p2.repository.artifact.IFileArtifactRepository
    A ICompositeRepository/ IArtifactRepository that is backed by a simple list, in contrast to the default P2 this does not require any access to the repository manager and simply aggregates all data, besides this, it also implements IFileArtifactRepository on top
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.util.List<? extends org.eclipse.equinox.p2.repository.artifact.IArtifactRepository> artifactRepositories  
      • Fields inherited from interface org.eclipse.equinox.p2.repository.artifact.IArtifactRepository

        CODE_RETRY, PROP_RUNNABLE
      • Fields inherited from interface org.eclipse.equinox.p2.repository.IRepository

        ENABLED, NONE, PREFERENCE_NODE, PROP_COMPRESSED, PROP_DESCRIPTION, PROP_MIRRORS_BASE_URL, PROP_MIRRORS_URL, PROP_NAME, PROP_NICKNAME, PROP_PASSWORD, PROP_SYSTEM, PROP_TIMESTAMP, PROP_USERNAME, TYPE_ARTIFACT, TYPE_METADATA
    • Constructor Summary

      Constructors 
      Constructor Description
      ListCompositeArtifactRepository​(org.eclipse.equinox.p2.core.IProvisioningAgent agent, java.util.List<? extends org.eclipse.equinox.p2.repository.artifact.IArtifactRepository> artifactRepositories)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addChild​(java.net.URI child)  
      boolean contains​(org.eclipse.equinox.p2.metadata.IArtifactKey key)  
      boolean contains​(org.eclipse.equinox.p2.repository.artifact.IArtifactDescriptor descriptor)  
      org.eclipse.equinox.p2.query.IQueryable<org.eclipse.equinox.p2.repository.artifact.IArtifactDescriptor> descriptorQueryable()  
      org.eclipse.core.runtime.IStatus getArtifact​(org.eclipse.equinox.p2.repository.artifact.IArtifactDescriptor descriptor, java.io.OutputStream destination, org.eclipse.core.runtime.IProgressMonitor monitor)  
      org.eclipse.equinox.p2.repository.artifact.IArtifactDescriptor[] getArtifactDescriptors​(org.eclipse.equinox.p2.metadata.IArtifactKey key)  
      java.io.File getArtifactFile​(org.eclipse.equinox.p2.metadata.IArtifactKey key)  
      java.io.File getArtifactFile​(org.eclipse.equinox.p2.repository.artifact.IArtifactDescriptor descriptor)  
      org.eclipse.core.runtime.IStatus getArtifacts​(org.eclipse.equinox.p2.repository.artifact.IArtifactRequest[] requests, org.eclipse.core.runtime.IProgressMonitor monitor)  
      java.util.List<java.net.URI> getChildren()  
      private <X> java.io.File getFileFromRepositories​(X id, java.util.function.BiPredicate<org.eclipse.equinox.p2.repository.artifact.IFileArtifactRepository,​X> when, java.util.function.BiFunction<org.eclipse.equinox.p2.repository.artifact.IFileArtifactRepository,​X,​java.io.File> function)  
      java.io.OutputStream getOutputStream​(org.eclipse.equinox.p2.repository.artifact.IArtifactDescriptor descriptor)  
      org.eclipse.core.runtime.IStatus getRawArtifact​(org.eclipse.equinox.p2.repository.artifact.IArtifactDescriptor descriptor, java.io.OutputStream destination, org.eclipse.core.runtime.IProgressMonitor monitor)  
      org.eclipse.equinox.p2.query.IQueryResult<org.eclipse.equinox.p2.metadata.IArtifactKey> query​(org.eclipse.equinox.p2.query.IQuery<org.eclipse.equinox.p2.metadata.IArtifactKey> query, org.eclipse.core.runtime.IProgressMonitor monitor)  
      void removeAllChildren()  
      void removeChild​(java.net.URI child)  
      • Methods inherited from class org.eclipse.equinox.p2.repository.artifact.spi.AbstractArtifactRepository

        addDescriptor, addDescriptor, addDescriptors, addDescriptors, createArtifactDescriptor, createArtifactKey, equals, executeBatch, hashCode, removeAll, removeAll, removeDescriptor, removeDescriptor, removeDescriptor, removeDescriptor, removeDescriptors, removeDescriptors, removeDescriptors, removeDescriptors
      • Methods inherited from class org.eclipse.equinox.p2.repository.spi.AbstractRepository

        assertModifiable, getDescription, getLocation, getName, getProperties, getProperty, getProvider, getProvisioningAgent, getType, getVersion, isModifiable, setDescription, setLocation, setName, setProperties, setProperty, setProperty, setProvider, setType, setVersion
      • Methods inherited from class org.eclipse.core.runtime.PlatformObject

        getAdapter
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface org.eclipse.core.runtime.IAdaptable

        getAdapter
      • Methods inherited from interface org.eclipse.equinox.p2.repository.artifact.IArtifactRepository

        addDescriptor, addDescriptor, addDescriptors, addDescriptors, createArtifactDescriptor, createArtifactKey, executeBatch, removeAll, removeAll, removeDescriptor, removeDescriptor, removeDescriptor, removeDescriptor, removeDescriptors, removeDescriptors, removeDescriptors, removeDescriptors
      • Methods inherited from interface org.eclipse.equinox.p2.repository.IRepository

        getDescription, getLocation, getName, getProperties, getProperty, getProvider, getProvisioningAgent, getType, getVersion, isModifiable, setProperty, setProperty
    • Field Detail

      • artifactRepositories

        private java.util.List<? extends org.eclipse.equinox.p2.repository.artifact.IArtifactRepository> artifactRepositories
    • Constructor Detail

      • ListCompositeArtifactRepository

        public ListCompositeArtifactRepository​(org.eclipse.equinox.p2.core.IProvisioningAgent agent,
                                               java.util.List<? extends org.eclipse.equinox.p2.repository.artifact.IArtifactRepository> artifactRepositories)
    • Method Detail

      • query

        public org.eclipse.equinox.p2.query.IQueryResult<org.eclipse.equinox.p2.metadata.IArtifactKey> query​(org.eclipse.equinox.p2.query.IQuery<org.eclipse.equinox.p2.metadata.IArtifactKey> query,
                                                                                                             org.eclipse.core.runtime.IProgressMonitor monitor)
        Specified by:
        query in interface org.eclipse.equinox.p2.query.IQueryable<org.eclipse.equinox.p2.metadata.IArtifactKey>
      • getRawArtifact

        public org.eclipse.core.runtime.IStatus getRawArtifact​(org.eclipse.equinox.p2.repository.artifact.IArtifactDescriptor descriptor,
                                                               java.io.OutputStream destination,
                                                               org.eclipse.core.runtime.IProgressMonitor monitor)
        Specified by:
        getRawArtifact in interface org.eclipse.equinox.p2.repository.artifact.IArtifactRepository
      • descriptorQueryable

        public org.eclipse.equinox.p2.query.IQueryable<org.eclipse.equinox.p2.repository.artifact.IArtifactDescriptor> descriptorQueryable()
        Specified by:
        descriptorQueryable in interface org.eclipse.equinox.p2.repository.artifact.IArtifactRepository
      • addChild

        public void addChild​(java.net.URI child)
        Specified by:
        addChild in interface org.eclipse.equinox.p2.repository.ICompositeRepository<org.eclipse.equinox.p2.metadata.IArtifactKey>
      • getChildren

        public java.util.List<java.net.URI> getChildren()
        Specified by:
        getChildren in interface org.eclipse.equinox.p2.repository.ICompositeRepository<org.eclipse.equinox.p2.metadata.IArtifactKey>
      • removeAllChildren

        public void removeAllChildren()
        Specified by:
        removeAllChildren in interface org.eclipse.equinox.p2.repository.ICompositeRepository<org.eclipse.equinox.p2.metadata.IArtifactKey>
      • removeChild

        public void removeChild​(java.net.URI child)
        Specified by:
        removeChild in interface org.eclipse.equinox.p2.repository.ICompositeRepository<org.eclipse.equinox.p2.metadata.IArtifactKey>
      • contains

        public boolean contains​(org.eclipse.equinox.p2.repository.artifact.IArtifactDescriptor descriptor)
        Specified by:
        contains in interface org.eclipse.equinox.p2.repository.artifact.IArtifactRepository
        Specified by:
        contains in class org.eclipse.equinox.p2.repository.artifact.spi.AbstractArtifactRepository
      • contains

        public boolean contains​(org.eclipse.equinox.p2.metadata.IArtifactKey key)
        Specified by:
        contains in interface org.eclipse.equinox.p2.repository.artifact.IArtifactRepository
        Specified by:
        contains in class org.eclipse.equinox.p2.repository.artifact.spi.AbstractArtifactRepository
      • getArtifact

        public org.eclipse.core.runtime.IStatus getArtifact​(org.eclipse.equinox.p2.repository.artifact.IArtifactDescriptor descriptor,
                                                            java.io.OutputStream destination,
                                                            org.eclipse.core.runtime.IProgressMonitor monitor)
        Specified by:
        getArtifact in interface org.eclipse.equinox.p2.repository.artifact.IArtifactRepository
        Specified by:
        getArtifact in class org.eclipse.equinox.p2.repository.artifact.spi.AbstractArtifactRepository
      • getArtifactDescriptors

        public org.eclipse.equinox.p2.repository.artifact.IArtifactDescriptor[] getArtifactDescriptors​(org.eclipse.equinox.p2.metadata.IArtifactKey key)
        Specified by:
        getArtifactDescriptors in interface org.eclipse.equinox.p2.repository.artifact.IArtifactRepository
        Specified by:
        getArtifactDescriptors in class org.eclipse.equinox.p2.repository.artifact.spi.AbstractArtifactRepository
      • getArtifacts

        public org.eclipse.core.runtime.IStatus getArtifacts​(org.eclipse.equinox.p2.repository.artifact.IArtifactRequest[] requests,
                                                             org.eclipse.core.runtime.IProgressMonitor monitor)
        Specified by:
        getArtifacts in interface org.eclipse.equinox.p2.repository.artifact.IArtifactRepository
        Specified by:
        getArtifacts in class org.eclipse.equinox.p2.repository.artifact.spi.AbstractArtifactRepository
      • getOutputStream

        public java.io.OutputStream getOutputStream​(org.eclipse.equinox.p2.repository.artifact.IArtifactDescriptor descriptor)
                                             throws org.eclipse.equinox.p2.core.ProvisionException
        Specified by:
        getOutputStream in interface org.eclipse.equinox.p2.repository.artifact.IArtifactRepository
        Specified by:
        getOutputStream in class org.eclipse.equinox.p2.repository.artifact.spi.AbstractArtifactRepository
        Throws:
        org.eclipse.equinox.p2.core.ProvisionException
      • getArtifactFile

        public java.io.File getArtifactFile​(org.eclipse.equinox.p2.metadata.IArtifactKey key)
        Specified by:
        getArtifactFile in interface org.eclipse.equinox.p2.repository.artifact.IFileArtifactRepository
      • getArtifactFile

        public java.io.File getArtifactFile​(org.eclipse.equinox.p2.repository.artifact.IArtifactDescriptor descriptor)
        Specified by:
        getArtifactFile in interface org.eclipse.equinox.p2.repository.artifact.IFileArtifactRepository
      • getFileFromRepositories

        private <X> java.io.File getFileFromRepositories​(X id,
                                                         java.util.function.BiPredicate<org.eclipse.equinox.p2.repository.artifact.IFileArtifactRepository,​X> when,
                                                         java.util.function.BiFunction<org.eclipse.equinox.p2.repository.artifact.IFileArtifactRepository,​X,​java.io.File> function)