Class AgentClassServerImpl
- java.lang.Object
-
- com.atlassian.bamboo.agent.classserver.AgentClassServerImpl
-
- All Implemented Interfaces:
AgentClassServer
,org.springframework.beans.factory.Aware
,org.springframework.web.context.ServletContextAware
public class AgentClassServerImpl extends Object implements AgentClassServer, org.springframework.web.context.ServletContextAware
-
-
Constructor Summary
Constructors Constructor Description AgentClassServerImpl(AgentPluginResolver agentPluginResolver, ClasspathDiscoverer classpathDiscoverer, FrameworkBundlesResolver frameworkBundlesResolver)
-
Method Summary
-
-
-
Constructor Detail
-
AgentClassServerImpl
public AgentClassServerImpl(AgentPluginResolver agentPluginResolver, ClasspathDiscoverer classpathDiscoverer, FrameworkBundlesResolver frameworkBundlesResolver)
-
-
Method Detail
-
getSystemClasspath
@NotNull public @NotNull ClassServerManifest getSystemClasspath()
- Specified by:
getSystemClasspath
in interfaceAgentClassServer
- Returns:
- manifest of all the jars used to bootstrap a remote agent. Includes Plugins installed in WEB-INF/lib.
-
getJarsOnSystemClasspath
@NotNull public @NotNull Map<String,JarDescriptor> getJarsOnSystemClasspath()
- Specified by:
getJarsOnSystemClasspath
in interfaceAgentClassServer
- Returns:
- jars on system classpath (including P1 plugins).
-
getJarsOfUserInstalledPlugins
@NotNull public @NotNull Map<String,JarDescriptor> getJarsOfUserInstalledPlugins()
- Specified by:
getJarsOfUserInstalledPlugins
in interfaceAgentClassServer
- Returns:
- jarDescriptors for all the user installed and enabled plugins that are able to run on remote agents
-
getJarsOfSystemProvidedPlugins
@NotNull public @NotNull Map<String,JarDescriptor> getJarsOfSystemProvidedPlugins()
- Specified by:
getJarsOfSystemProvidedPlugins
in interfaceAgentClassServer
- Returns:
- jars on enabled system provided P2 plugins.
-
getJarsOfFrameworkBundle
@NotNull public @NotNull Map<String,JarDescriptor> getJarsOfFrameworkBundle()
- Specified by:
getJarsOfFrameworkBundle
in interfaceAgentClassServer
- Returns:
- jars comprising framework bundle.
-
getSystemClasspath
@NotNull public @NotNull ClassServerManifest getSystemClasspath(@NotNull @NotNull Set<FileHashDescriptor> fileHashDescriptorsFromAgent)
- Specified by:
getSystemClasspath
in interfaceAgentClassServer
- Parameters:
fileHashDescriptorsFromAgent
- of the jars that the agent already has locally- Returns:
- manifest of all the jars used to bootstrap a remote agent. Includes Plugins 1 plugins installed in WEB-INF/lib.
-
getUserInstalledPlugins
@NotNull public @NotNull ClassServerManifest getUserInstalledPlugins(@NotNull @NotNull Set<FileHashDescriptor> fileHashDescriptors)
- Specified by:
getUserInstalledPlugins
in interfaceAgentClassServer
- Parameters:
fileHashDescriptors
- of the jars that the agent already has locally- Returns:
- jarDescriptors for all the user installed plugins that are able to run on remote agents
-
getSystemProvidedPlugins
@NotNull public @NotNull ClassServerManifest getSystemProvidedPlugins(@NotNull @NotNull Set<FileHashDescriptor> fileHashDescriptors)
- Specified by:
getSystemProvidedPlugins
in interfaceAgentClassServer
- Parameters:
fileHashDescriptors
- of the jars that the agent already has locally- Returns:
- jarDescriptors for all the system provided plugins that are able to run on remote agents
-
getPluginFrameworkBundles
public ClassServerManifest getPluginFrameworkBundles(@NotNull @NotNull Set<FileHashDescriptor> fileHashDescriptors)
- Specified by:
getPluginFrameworkBundles
in interfaceAgentClassServer
- Parameters:
fileHashDescriptors
- of the jars that the agent already has locally- Returns:
- jarDescriptors for all the plugin framework bundles
-
getPluginsAvailableForRemoteAgents
@NotNull public @NotNull Iterable<com.atlassian.plugin.Plugin> getPluginsAvailableForRemoteAgents()
- Specified by:
getPluginsAvailableForRemoteAgents
in interfaceAgentClassServer
- Returns:
- plugins available for remote agents
-
getPluginsEnabledForRemoteAgents
@NotNull public @NotNull Iterable<com.atlassian.plugin.Plugin> getPluginsEnabledForRemoteAgents()
- Specified by:
getPluginsEnabledForRemoteAgents
in interfaceAgentClassServer
- Returns:
- plugins enabled for remote agents
-
getSystemClasspathZip
@NotNull public @NotNull com.google.common.io.ByteSource getSystemClasspathZip()
- Specified by:
getSystemClasspathZip
in interfaceAgentClassServer
- Returns:
InputStream
to a zip file containing the complete agent classpath
-
setServletContext
public void setServletContext(javax.servlet.ServletContext servletContext)
- Specified by:
setServletContext
in interfaceorg.springframework.web.context.ServletContextAware
-
-