public class CapsuleContainer extends java.lang.Object implements CapsuleContainerMBean
| Modifier and Type | Class and Description |
|---|---|
protected static class |
CapsuleContainer.ProcessInfo |
| Constructor and Description |
|---|
CapsuleContainer(java.nio.file.Path cacheDir) |
| Modifier and Type | Method and Description |
|---|---|
protected java.lang.ProcessBuilder |
configureCapsuleProcess(java.lang.ProcessBuilder pb)
May be overriden to pipe app IO streams.
|
protected javax.management.NotificationBroadcasterSupport |
createEmitter() |
protected java.lang.String |
createProcessId(java.lang.String appId,
java.lang.Process p) |
protected java.lang.Class<?> |
getMBeanInterface() |
java.lang.Process |
getProcess(java.lang.String id) |
java.util.Set<java.lang.String> |
getProcesses() |
java.util.Map<java.lang.String,java.lang.Process> |
getProcessInfo() |
protected CapsuleContainer.ProcessInfo |
getProcessInfo(java.lang.String id) |
void |
killProcess(java.lang.String id) |
java.lang.String |
launchCapsule(java.nio.file.Path capsulePath,
java.util.List<java.lang.String> cmdLine,
java.util.List<java.lang.String> args) |
protected CapsuleContainer.ProcessInfo |
mountProcess(java.lang.Process p,
java.lang.String id) |
protected void |
onProcessDeath(java.lang.String id,
CapsuleContainer.ProcessInfo pi,
int exitValue) |
protected void |
onProcessLaunch(java.lang.String id,
CapsuleContainer.ProcessInfo pi) |
protected void |
processDied(java.lang.String id,
java.lang.Process p,
int exitValue) |
protected java.lang.Class<?> getMBeanInterface()
protected javax.management.NotificationBroadcasterSupport createEmitter()
public java.lang.String launchCapsule(java.nio.file.Path capsulePath,
java.util.List<java.lang.String> cmdLine,
java.util.List<java.lang.String> args)
throws java.io.IOException
java.io.IOExceptionprotected CapsuleContainer.ProcessInfo mountProcess(java.lang.Process p, java.lang.String id) throws java.io.IOException, javax.management.InstanceAlreadyExistsException
java.io.IOExceptionjavax.management.InstanceAlreadyExistsExceptionprotected java.lang.ProcessBuilder configureCapsuleProcess(java.lang.ProcessBuilder pb)
throws java.io.IOException
pb - The capsule's ProcessBuilder.pbjava.io.IOExceptionprotected void processDied(java.lang.String id,
java.lang.Process p,
int exitValue)
protected void onProcessLaunch(java.lang.String id,
CapsuleContainer.ProcessInfo pi)
protected void onProcessDeath(java.lang.String id,
CapsuleContainer.ProcessInfo pi,
int exitValue)
protected java.lang.String createProcessId(java.lang.String appId,
java.lang.Process p)
public final java.util.Map<java.lang.String,java.lang.Process> getProcessInfo()
protected CapsuleContainer.ProcessInfo getProcessInfo(java.lang.String id)
public final java.lang.Process getProcess(java.lang.String id)
public java.util.Set<java.lang.String> getProcesses()
getProcesses in interface CapsuleContainerMBeanpublic void killProcess(java.lang.String id)
killProcess in interface CapsuleContainerMBean