Package com.zfabrik.impl.hubcr
Class ComponentRepositoryImpl
- java.lang.Object
-
- com.zfabrik.components.provider.util.AbstractExtComponentRepository<com.zfabrik.components.provider.util.FSCRDBComponent,DB>
-
- com.zfabrik.components.provider.util.AbstractComponentRepository<com.zfabrik.hubcr.RemoteComponentRepositoryDB>
-
- com.zfabrik.impl.hubcr.ComponentRepositoryImpl
-
- All Implemented Interfaces:
com.zfabrik.components.provider.IComponentsRepository,com.zfabrik.util.sync.ISynchronizer
public class ComponentRepositoryImpl extends com.zfabrik.components.provider.util.AbstractComponentRepository<com.zfabrik.hubcr.RemoteComponentRepositoryDB>A remote repository hub component repository. This repository connects to a Z2 hosted remote repository that provides optimized repository content in the sense that no local compilation is required anymore and that no source code will be transmitted over the wire. Typically the hub repository is the only one used aside from the local pre-built core repository. Component properties that have a meaning:
In addition there is a system propertyhubcr.urlThe URL to the source repo. Typically this is of the form http://<server>:<port>/z_hubcr hubcr.timeoutConnection timeout in ms for connecting to the providing side (defaults to 10000) hubcr.userThe remote user to use (optional but required by default) hubcr.passwordThe remote user's password hubcr.priorityThe priority of the repository (defaults to 500) com.zfabrik.hubcr.modethat if set torelaxed(as opposed to the default ofstrict) supports relaxed behavior if remote database updates do not succeed. If relaxed, the repository will continue with the latest known database. Assuming component resources have been fetched previously, this allows to survive short outages gracefully.- Author:
- hb
-
-
Constructor Summary
Constructors Constructor Description ComponentRepositoryImpl(java.lang.String name, java.util.Properties properties)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voiddownload(com.zfabrik.components.provider.util.FSCRDBComponent component, java.io.File folder)Download resources of a single component into the given foldercom.zfabrik.hubcr.RemoteComponentRepositoryDBscan(com.zfabrik.hubcr.RemoteComponentRepositoryDB current)Provide an updated DB.java.lang.StringtoString()-
Methods inherited from class com.zfabrik.components.provider.util.AbstractExtComponentRepository
as, checkOfflineMode, complete, configure, configure, configure, findComponents, getCacheRoot, getComponent, getContext, getDB, getExpectedConfiguration, getModules, getName, getRevision, getRevision, getURL, has, isRelaxedMode, preInvalidation, preInvalidation, retrieve, setEvictionDelay, start, stop, test_setContext, test_setDb, test_setInited
-
-
-
-
Method Detail
-
download
public void download(com.zfabrik.components.provider.util.FSCRDBComponent component, java.io.File folder)Description copied from class:com.zfabrik.components.provider.util.AbstractExtComponentRepositoryDownload resources of a single component into the given folder- Specified by:
downloadin classcom.zfabrik.components.provider.util.AbstractExtComponentRepository<com.zfabrik.components.provider.util.FSCRDBComponent,com.zfabrik.hubcr.RemoteComponentRepositoryDB>
-
scan
public com.zfabrik.hubcr.RemoteComponentRepositoryDB scan(com.zfabrik.hubcr.RemoteComponentRepositoryDB current)
Description copied from class:com.zfabrik.components.provider.util.AbstractExtComponentRepositoryProvide an updated DB. This DB will be used to compute invalidations on synchronization and it will be used to serve component meta-data. If the repository implementation needs to attach additional meta-data to the DB, it should overwrite the DB class to do so, as the result of a scan potentially will be discarded.- Specified by:
scanin classcom.zfabrik.components.provider.util.AbstractExtComponentRepository<com.zfabrik.components.provider.util.FSCRDBComponent,com.zfabrik.hubcr.RemoteComponentRepositoryDB>
-
toString
public java.lang.String toString()
- Overrides:
toStringin classcom.zfabrik.components.provider.util.AbstractExtComponentRepository<com.zfabrik.components.provider.util.FSCRDBComponent,com.zfabrik.hubcr.RemoteComponentRepositoryDB>
-
-