diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/main/java/com/gitblit/instance/GitblitInstance.java | 54 | ||||
-rw-r--r-- | src/main/java/com/gitblit/servlet/GitblitContext.java | 7 |
2 files changed, 61 insertions, 0 deletions
diff --git a/src/main/java/com/gitblit/instance/GitblitInstance.java b/src/main/java/com/gitblit/instance/GitblitInstance.java new file mode 100644 index 00000000..c1de69ff --- /dev/null +++ b/src/main/java/com/gitblit/instance/GitblitInstance.java @@ -0,0 +1,54 @@ +package com.gitblit.instance; + +import com.gitblit.manager.IRuntimeManager; + +public class GitblitInstance +{ + + private IRuntimeManager runtimeManager; + + private String instanceId; + + private GitblitInstanceReport report; + + + + /** + * Initialize the Gitblit instance reporting system. + * + * This will gather the static and dynamic statistics about the running + * instance, so that they can be reported. + * + * @param runtimeManager + * The runtime manager is used to determine the type of instance + * as well as for some other settings and data. + */ + public void init(IRuntimeManager runtimeManager) { + this.runtimeManager = runtimeManager; + + // Initialize ID + GitblitInstanceId instanceId = new GitblitInstanceId(runtimeManager.getBaseFolder()); + this.instanceId = instanceId.getId().toString(); + + GitblitInstanceStat instanceStat; + + if (runtimeManager.getSettings().hasSettings("container.dockerfileVersion")) { + instanceStat = new GitblitInstanceStat(GitblitInstanceStat.GitblitInstanceType.DOCKER); + } + else if (runtimeManager.getStatus().isGO){ + instanceStat = new GitblitInstanceStat(GitblitInstanceStat.GitblitInstanceType.GO); + } + else { + instanceStat = new GitblitInstanceStat(GitblitInstanceStat.GitblitInstanceType.WAR); + } + + instanceStat.init(runtimeManager.getStatus()); + + this.report = new GitblitInstanceReport(this.instanceId, instanceStat); + } + + + public void start() + { + } +} diff --git a/src/main/java/com/gitblit/servlet/GitblitContext.java b/src/main/java/com/gitblit/servlet/GitblitContext.java index cd8615a8..dd4e9176 100644 --- a/src/main/java/com/gitblit/servlet/GitblitContext.java +++ b/src/main/java/com/gitblit/servlet/GitblitContext.java @@ -32,6 +32,7 @@ import javax.naming.NamingException; import javax.servlet.ServletContext; import javax.servlet.ServletContextEvent; +import com.gitblit.instance.GitblitInstance; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -87,6 +88,8 @@ public class GitblitContext extends GuiceServletContextListener { private final File goBaseFolder; + private final GitblitInstance instance = new GitblitInstance(); + /** * Construct a Gitblit WAR/Express context. */ @@ -224,6 +227,10 @@ public class GitblitContext extends GuiceServletContextListener { logger.error(null, t); } } + + instance.init(runtime); + // The instance is up and running. Make it count. + instance.start(); } private String lookupBaseFolderFromJndi() { |