@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=GitProxyService.class,bind="bindGitProxyService",unbind="unbindGitProxyService"),@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 little| Modifier and Type | Field and Description |
|---|---|
static String |
TYPE |
AGENT_METADATA_FILE, CONFIGS, CONFIGS_PROFILES, GIT_COMMIT_SHORT_LENGTH, GIT_PULL_PERIOD, GIT_REMOTE_PASSWORD, GIT_REMOTE_URL, GIT_REMOTE_USER, SUPPORTED_CONFIGURATION| Constructor and Description |
|---|
CachingGitDataStore() |
| Modifier and Type | Method and Description |
|---|---|
void |
activate(Map<String,?> configuration) |
void |
bindConfigurer(io.fabric8.api.scr.Configurer configurer) |
protected void |
clearCaches() |
Map<String,String> |
getConfiguration(String version,
String profile,
String pid) |
Map<String,Map<String,String>> |
getConfigurations(String version,
String profile) |
byte[] |
getFileConfiguration(String version,
String profile,
String fileName) |
Map<String,byte[]> |
getFileConfigurations(String version,
String profile) |
String |
getLastModified(String version,
String profile) |
List<String> |
getProfiles(String version) |
String |
getType() |
protected io.fabric8.git.internal.CachingGitDataStore.VersionData |
getVersionData(String version) |
boolean |
hasProfile(String version,
String profile) |
protected void |
populateVersionData(org.eclipse.jgit.api.Git git,
String branch,
io.fabric8.git.internal.CachingGitDataStore.VersionData data) |
activateInternal, bindGitProxyService, bindGitService, checkoutVersion, convertProfileIdToDirectory, createOrCheckoutVersion, createProfile, createVersion, createVersion, deactivateInternal, deleteProfile, deleteVersion, doAddFiles, doCreateProfile, doExportProfiles, doGetConfigurations, doGetFileConfigurations, doImportProfiles, doLoadConfiguration, doLoadFileConfiguration, doPull, doPush, doPush, doRecursiveDeleteAndRemove, doSetConfiguration, doSetConfigurations, doSetFileConfiguration, doSetFileConfigurations, exportProfiles, forceGetVersions, getClusterId, getCredentialsProvider, getDefaultJvmOptions, getEnsembleContainers, getFilePattern, getGit, getPidFile, getPidFromFileName, getProfile, getProfileDirectory, getProfilesDirectory, getRemote, getRequirements, getVersionAttributes, getVersions, gitOperation, gitOperation, gitOperation, gitOperation, hasVersion, importFromFileSystem, importFromFilesystem, importFromFileSystem, importProfiles, isProfileDirectory, listFiles, pull, push, recursiveAddLegacyProfileDirectoryFiles, recursiveCopyAndAdd, setConfiguration, setConfigurationFile, 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, setContainerAlive, setContainerAttribute, setContainerMetadata, setContainerProfiles, setContainerVersion, setDefaultVersion, setProfileAttribute, trackConfiguration, unbindCurator, unbindRegistrationHandler, unbindRuntimeProperties, untrackConfigurationpublic static final String TYPE
@Activate public void activate(Map<String,?> configuration) throws Exception
Exceptionprotected io.fabric8.git.internal.CachingGitDataStore.VersionData getVersionData(String version)
protected void populateVersionData(org.eclipse.jgit.api.Git git,
String branch,
io.fabric8.git.internal.CachingGitDataStore.VersionData data)
throws Exception
Exceptionpublic List<String> getProfiles(String version)
getProfiles in interface io.fabric8.api.DataStoregetProfiles in class GitDataStorepublic boolean hasProfile(String version, String profile)
hasProfile in interface io.fabric8.api.DataStorehasProfile in class io.fabric8.service.AbstractDataStore<GitDataStore>public String getLastModified(String version, String profile)
getLastModified in interface io.fabric8.api.DataStoregetLastModified in class GitDataStorepublic byte[] getFileConfiguration(String version, String profile, String fileName)
getFileConfiguration in interface io.fabric8.api.DataStoregetFileConfiguration in class GitDataStorepublic Map<String,byte[]> getFileConfigurations(String version, String profile)
getFileConfigurations in interface io.fabric8.api.DataStoregetFileConfigurations in class GitDataStorepublic Map<String,Map<String,String>> getConfigurations(String version, String profile)
getConfigurations in interface io.fabric8.api.DataStoregetConfigurations in class io.fabric8.service.AbstractDataStore<GitDataStore>public Map<String,String> getConfiguration(String version, String profile, String pid)
getConfiguration in interface io.fabric8.api.DataStoregetConfiguration in class GitDataStoreprotected void clearCaches()
clearCaches in class io.fabric8.service.AbstractDataStore<GitDataStore>public String getType()
getType in interface io.fabric8.api.DataStoregetType in class GitDataStorepublic void bindConfigurer(io.fabric8.api.scr.Configurer configurer)
Copyright © 2011–2014 Red Hat. All rights reserved.