@ThreadSafe @References(value={@Reference(referenceInterface=io.fabric8.api.DataStoreRegistrationHandler.class,bind="bindRegistrationHandler",unbind="unbindRegistrationHandler"),@Reference(referenceInterface=org.apache.curator.framework.CuratorFramework.class,bind="bindCurator",unbind="unbindCurator"),@Reference(referenceInterface=GitService.class,bind="bindGitService",unbind="unbindGitService"),@Reference(referenceInterface=io.fabric8.api.RuntimeProperties.class,bind="bindRuntimeProperties",unbind="unbindRuntimeProperties")}) @Service(value=io.fabric8.api.DataStore.class) @Properties(value=@Property(name="type",value="caching-git")) public final class CachingGitDataStore extends GitDataStore
GitDataStore to minimise the use of git operations
and speed things up a littleDataStore.ContainerAttribute| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
TYPE |
AGENT_METADATA_FILE, CONFIGS, CONFIGS_PROFILES, GIT_COMMIT_SHORT_LENGTH, GIT_GC_ON_LOAD, GIT_PULL_PERIOD, GIT_REMOTE_PASSWORD, GIT_REMOTE_URL, GIT_REMOTE_USER, PROFILE_FOLDER_SUFFIX, SUPPORTED_CONFIGURATION, useDirectoriesForProfilesJVM_OPTIONS_PATH, REQUIREMENTS_JSON_PATHATTRIBUTE_PREFIX, DATASTORE_TYPE_PROPERTY, DEFAULT_DATASTORE_TYPE| Constructor and Description |
|---|
CachingGitDataStore() |
| Modifier and Type | Method and Description |
|---|---|
void |
activate(java.util.Map<java.lang.String,?> configuration) |
void |
bindConfigurer(Configurer configurer) |
protected void |
clearCaches() |
java.util.Map<java.lang.String,java.lang.String> |
getConfiguration(java.lang.String version,
java.lang.String profile,
java.lang.String pid) |
java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.lang.String>> |
getConfigurations(java.lang.String version,
java.lang.String profile) |
byte[] |
getFileConfiguration(java.lang.String version,
java.lang.String profile,
java.lang.String fileName) |
java.util.Map<java.lang.String,byte[]> |
getFileConfigurations(java.lang.String version,
java.lang.String profile) |
java.lang.String |
getLastModified(java.lang.String version,
java.lang.String profile) |
java.util.List<java.lang.String> |
getProfiles(java.lang.String version) |
java.lang.String |
getType() |
protected io.fabric8.git.internal.CachingGitDataStore.VersionData |
getVersionData(java.lang.String version) |
boolean |
hasProfile(java.lang.String version,
java.lang.String profile) |
protected void |
pouplateVersionData(org.eclipse.jgit.api.Git git,
java.lang.String branch,
io.fabric8.git.internal.CachingGitDataStore.VersionData data) |
activateInternal, bindGitService, checkoutVersion, convertProfileIdToDirectory, createOrCheckoutVersion, createProfile, createVersion, createVersion, deactivateInternal, deleteProfile, deleteVersion, doAddFiles, doCreateProfile, doGetConfigurations, doGetFileConfigurations, doLoadConfiguration, doLoadFileConfiguration, doPull, doPush, doPush, doRecursiveDeleteAndRemove, doSetConfiguration, doSetConfigurations, doSetFileConfiguration, doSetFileConfigurations, forceGetVersions, getClusterId, getCredentialsProvider, getDefaultJvmOptions, getEnsembleContainers, getFilePattern, getGit, getPidFile, getPidFromFileName, getProfile, getProfileDirectory, getProfilesDirectory, getRemote, getRequirements, getVersionAttributes, getVersions, gitOperation, gitOperation, gitOperation, gitOperation, hasVersion, importFromFileSystem, importFromFileSystem, isProfileDirectory, listFiles, pull, push, recursiveAddLegacyProfileDirectoryFiles, recursiveCopyAndAdd, setConfiguration, setConfigurations, setDefaultJvmOptions, setFileConfiguration, setFileConfigurations, setRemote, setRequirements, setVersionAttributebindCurator, bindRegistrationHandler, bindRuntimeProperties, childEvent, createContainerConfig, createContainerConfig, deleteContainer, doRunCallbacks, fireChangeNotifications, getConfigurationFileNames, getContainerAttribute, getContainerMetadata, getContainerParent, getContainerProfiles, getContainers, getContainerVersion, getCurator, getDataStoreProperties, getDefaultVersion, getProfileAttributes, getRuntimeProperties, getTreeCache, hasContainer, isContainerAlive, protectedActivate, protectedDeactivate, runCallbacks, setContainerAttribute, setContainerMetadata, setContainerProfiles, setContainerVersion, setDefaultVersion, setProfileAttribute, trackConfiguration, unbindCurator, unbindRegistrationHandler, unbindRuntimeProperties, untrackConfigurationactivateComponent, assertValid, deactivateComponent, isValidpublic static final java.lang.String TYPE
@Activate
public void activate(java.util.Map<java.lang.String,?> configuration)
throws java.lang.Exception
java.lang.Exceptionprotected io.fabric8.git.internal.CachingGitDataStore.VersionData getVersionData(java.lang.String version)
protected void pouplateVersionData(org.eclipse.jgit.api.Git git,
java.lang.String branch,
io.fabric8.git.internal.CachingGitDataStore.VersionData data)
throws java.lang.Exception
java.lang.Exceptionpublic java.util.List<java.lang.String> getProfiles(java.lang.String version)
getProfiles in interface DataStoregetProfiles in class GitDataStorepublic boolean hasProfile(java.lang.String version,
java.lang.String profile)
hasProfile in interface DataStorehasProfile in class AbstractDataStore<GitDataStore>public java.lang.String getLastModified(java.lang.String version,
java.lang.String profile)
getLastModified in interface DataStoregetLastModified in class GitDataStorepublic byte[] getFileConfiguration(java.lang.String version,
java.lang.String profile,
java.lang.String fileName)
getFileConfiguration in interface DataStoregetFileConfiguration in class GitDataStorepublic java.util.Map<java.lang.String,byte[]> getFileConfigurations(java.lang.String version,
java.lang.String profile)
getFileConfigurations in interface DataStoregetFileConfigurations in class GitDataStorepublic java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.lang.String>> getConfigurations(java.lang.String version,
java.lang.String profile)
getConfigurations in interface DataStoregetConfigurations in class AbstractDataStore<GitDataStore>public java.util.Map<java.lang.String,java.lang.String> getConfiguration(java.lang.String version,
java.lang.String profile,
java.lang.String pid)
getConfiguration in interface DataStoregetConfiguration in class GitDataStoreprotected void clearCaches()
clearCaches in class AbstractDataStore<GitDataStore>public java.lang.String getType()
getType in interface DataStoregetType in class GitDataStorepublic void bindConfigurer(Configurer configurer)
Copyright © 2015 Red Hat. All Rights Reserved.