RSE
Release 3.0

org.eclipse.rse.subsystems.processes.core.subsystem.impl
Class RemoteProcessImpl

java.lang.Object
  extended by org.eclipse.rse.subsystems.processes.core.subsystem.impl.RemoteProcessImpl
All Implemented Interfaces:
IAdaptable, IHostProcess, IRemoteProcess

public class RemoteProcessImpl
extends Object
implements IRemoteProcess

Represents a remote process on the client machine. Wrappers an IRemoteServerProcess, with methods for returning information about the underlying process, as well as more client-oriented methods for returning information about the associated subsystem, connection, and filter string.


Field Summary
protected  IRemoteProcessContext _context
           
protected  IRemoteProcess _parentProcess
           
protected  IHostProcess _underlyingProcess
           
static char CONNECTION_DELIMITER
           
 
Constructor Summary
RemoteProcessImpl(IRemoteProcessContext context, IHostProcess process)
          Constructor that takes a context object containing important information.
 
Method Summary
 String getAbsolutePath()
          Get fully qualified name of associated object in /proc filesystem: root plus path plus pid.
 String getAbsolutePathPlusConnection()
          Get fully qualified connection and folder name of associated object in /proc filesystem: profile.connection/path/procfolder.
 Object getAdapter(Class adapter)
           
 String getAllProperties()
          Returns all properties of this process in the same format as given in the dataelement
 IRemoteProcessContext getContext()
          Return the context associated with this remote process
 IHostProcessFilter getFilterString()
          Return the filter string resolved to get this object
 long getGid()
          Get the process owner's group id (gid)
 String getLabel()
          Get the display name for this process.
 String getName()
          Get the name of the executable owning this process
 Object getObject()
          Subclasses must override to return the underlying object, whether that is a DataElement, or an IRemoteServerProcess
 IRemoteProcess getParentRemoteProcess()
          Get the parent remote process of this process
 IRemoteProcessSubSystem getParentRemoteProcessSubSystem()
          Get parent subsystem
 long getPid()
          Get the process id (pid) associated with this process.
 long getPPid()
          Get the parent process id (ppid) associated with this process.
 String getState()
          Get the state of the process
 IHost getSystemConnection()
          Return the connection this remote process is from.
 long getTgid()
          Get the Tgid
 long getTracerPid()
          Get the TracerPid
 long getUid()
          Get the process owner's user id (uid)
 String getUsername()
          Get the process owner's username
 long getVmRSSInKB()
          Returns the virtual memory resident set size of this process (in kB).
 long getVmSizeInKB()
          Returns the virtual memory size of this process (in kB)
 boolean isRoot()
          Returns whether this is the root process or not
 void setFilterString(IHostProcessFilter filterString)
          Set the filter string resolved to get this object
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

CONNECTION_DELIMITER

public static final char CONNECTION_DELIMITER
See Also:
Constant Field Values

_context

protected IRemoteProcessContext _context

_underlyingProcess

protected IHostProcess _underlyingProcess

_parentProcess

protected IRemoteProcess _parentProcess
Constructor Detail

RemoteProcessImpl

public RemoteProcessImpl(IRemoteProcessContext context,
                         IHostProcess process)
Constructor that takes a context object containing important information.

Parameters:
context - An object holding contextual information about this object
See Also:
IRemoteProcessContext
Method Detail

getParentRemoteProcessSubSystem

public IRemoteProcessSubSystem getParentRemoteProcessSubSystem()
Description copied from interface: IRemoteProcess
Get parent subsystem

Specified by:
getParentRemoteProcessSubSystem in interface IRemoteProcess

getSystemConnection

public IHost getSystemConnection()
Description copied from interface: IRemoteProcess
Return the connection this remote process is from.

Specified by:
getSystemConnection in interface IRemoteProcess

getFilterString

public IHostProcessFilter getFilterString()
Description copied from interface: IRemoteProcess
Return the filter string resolved to get this object

Specified by:
getFilterString in interface IRemoteProcess

setFilterString

public void setFilterString(IHostProcessFilter filterString)
Set the filter string resolved to get this object

Specified by:
setFilterString in interface IRemoteProcess

getAbsolutePathPlusConnection

public String getAbsolutePathPlusConnection()
Description copied from interface: IRemoteProcess
Get fully qualified connection and folder name of associated object in /proc filesystem: profile.connection/path/procfolder. Note the separator character between the profile name and the connection name is always '.' Note the separator character between the connection and qualified-folder is always ':'

Specified by:
getAbsolutePathPlusConnection in interface IRemoteProcess

getParentRemoteProcess

public IRemoteProcess getParentRemoteProcess()
Description copied from interface: IRemoteProcess
Get the parent remote process of this process

Specified by:
getParentRemoteProcess in interface IRemoteProcess

getContext

public IRemoteProcessContext getContext()
Return the context associated with this remote process

Specified by:
getContext in interface IRemoteProcess

getAbsolutePath

public String getAbsolutePath()
Description copied from interface: IRemoteProcess
Get fully qualified name of associated object in /proc filesystem: root plus path plus pid. No connection name.

Specified by:
getAbsolutePath in interface IRemoteProcess

getPid

public long getPid()
Description copied from interface: IHostProcess
Get the process id (pid) associated with this process.

Specified by:
getPid in interface IHostProcess

getPPid

public long getPPid()
Description copied from interface: IHostProcess
Get the parent process id (ppid) associated with this process.

Specified by:
getPPid in interface IHostProcess

getName

public String getName()
Description copied from interface: IHostProcess
Get the name of the executable owning this process

Specified by:
getName in interface IHostProcess

getState

public String getState()
Description copied from interface: IHostProcess
Get the state of the process

Specified by:
getState in interface IHostProcess

getTgid

public long getTgid()
Description copied from interface: IHostProcess
Get the Tgid

Specified by:
getTgid in interface IHostProcess

getTracerPid

public long getTracerPid()
Description copied from interface: IHostProcess
Get the TracerPid

Specified by:
getTracerPid in interface IHostProcess

getUid

public long getUid()
Description copied from interface: IHostProcess
Get the process owner's user id (uid)

Specified by:
getUid in interface IHostProcess

getUsername

public String getUsername()
Description copied from interface: IHostProcess
Get the process owner's username

Specified by:
getUsername in interface IHostProcess

getGid

public long getGid()
Description copied from interface: IHostProcess
Get the process owner's group id (gid)

Specified by:
getGid in interface IHostProcess

isRoot

public boolean isRoot()
Description copied from interface: IHostProcess
Returns whether this is the root process or not

Specified by:
isRoot in interface IHostProcess

getAllProperties

public String getAllProperties()
Description copied from interface: IHostProcess
Returns all properties of this process in the same format as given in the dataelement

Specified by:
getAllProperties in interface IHostProcess

getVmSizeInKB

public long getVmSizeInKB()
Description copied from interface: IHostProcess
Returns the virtual memory size of this process (in kB)

Specified by:
getVmSizeInKB in interface IHostProcess

getVmRSSInKB

public long getVmRSSInKB()
Description copied from interface: IHostProcess
Returns the virtual memory resident set size of this process (in kB). This is the actual amount of RAM used by the process.

Specified by:
getVmRSSInKB in interface IHostProcess

getLabel

public String getLabel()
Description copied from interface: IHostProcess
Get the display name for this process.

Specified by:
getLabel in interface IHostProcess

getObject

public Object getObject()
Subclasses must override to return the underlying object, whether that is a DataElement, or an IRemoteServerProcess

Specified by:
getObject in interface IRemoteProcess

getAdapter

public Object getAdapter(Class adapter)
Specified by:
getAdapter in interface IAdaptable

RSE
Release 3.0

Copyright (c) IBM Corporation and others 2000, 2008. All Rights Reserved.