blob: a111299b432e2a4dcdc4eeb5b41e463c16233863 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="keywords" content="SMILA/Documentation/AgentController" />
<link rel="shortcut icon" href="http://wiki.eclipse.org/SMILA/Documentation/favicon.ico" />
<link rel="search" type="application/opensearchdescription+xml" href="http://wiki.eclipse.org/opensearch_desc.php" title="Eclipsepedia (English)" />
<link rel="alternate" type="application/rss+xml" title="Eclipsepedia RSS Feed" href="http://wiki.eclipse.org/index.php?title=Special:Recentchanges&amp;feed=rss" />
<link rel="alternate" type="application/atom+xml" title="Eclipsepedia Atom Feed" href="http://wiki.eclipse.org/index.php?title=Special:Recentchanges&amp;feed=atom" />
<title>SMILA/Documentation/AgentController - Eclipsepedia</title>
<style type="text/css" media="screen,projection">/*<![CDATA[*/ @import "/skins/eclipsenova/novaWide.css?116"; /*]]>*/</style>
<link rel="stylesheet" type="text/css" media="print" href="http://wiki.eclipse.org/skins/eclipsenova/eclipsenovaPrint.css?116" />
<link rel="stylesheet" type="text/css" media="handheld" href="http://wiki.eclipse.org/skins/eclipsenova/handheld.css?116" />
<link rel="stylesheet" type="text/css" href="http://wiki.eclipse.org/skins/eclipsenova/Nova/css/header.css" media="screen" />
<link rel="stylesheet" type="text/css" href="http://wiki.eclipse.org/skins/eclipsenova/tabs.css" media="screen" />
<link rel="stylesheet" type="text/css" href="http://wiki.eclipse.org/skins/eclipsenova/Nova/css/visual.css" media="screen" />
<link rel="stylesheet" type="text/css" href="http://wiki.eclipse.org/skins/eclipsenova/Nova/css/layout.css" media="screen" />
<link rel="stylesheet" type="text/css" href="http://wiki.eclipse.org/skins/eclipsenova/Nova/css/footer.css" media="screen" />
<!--[if IE]><link rel="stylesheet" type="text/css" href="/skins/eclipsenova/IEpngfix.css" media="screen" /><![endif]-->
<!--[if lt IE 5.5000]><style type="text/css">@import "/skins/eclipsenova/IE50Fixes.css?116";</style> <![endif]-->
<!--[if IE 5.5000]><style type="text/css">@import "/skins/eclipsenova/IE55Fixes.css?116";</style><![endif]-->
<!--[if IE 6]><style type="text/css">@import "/skins/eclipsenova/IE60Fixes.css?116";</style><![endif]-->
<!--[if IE 7]><style type="text/css">@import "/skins/eclipsenova/IE70Fixes.css?116";</style><![endif]-->
<!--[if lt IE 7]><script type="text/javascript" src="/skins/common/IEFixes.js?116"></script>
<meta http-equiv="imagetoolbar" content="no" /><![endif]-->
<script type= "text/javascript">/*<![CDATA[*/
var skin = "eclipsenova";
var stylepath = "/skins";
var wgArticlePath = "/$1";
var wgScriptPath = "";
var wgScript = "/index.php";
var wgServer = "http://wiki.eclipse.org";
var wgCanonicalNamespace = "";
var wgCanonicalSpecialPageName = false;
var wgNamespaceNumber = 0;
var wgPageName = "SMILA/Documentation/AgentController";
var wgTitle = "SMILA/Documentation/AgentController";
var wgAction = "view";
var wgRestrictionEdit = [];
var wgRestrictionMove = [];
var wgArticleId = "19391";
var wgIsArticle = true;
var wgUserName = null;
var wgUserGroups = null;
var wgUserLanguage = "en";
var wgContentLanguage = "en";
var wgBreakFrames = false;
var wgCurRevisionId = "167842";
var wgVersion = "1.12.0";
var wgEnableAPI = true;
var wgEnableWriteAPI = false;
/*]]>*/</script>
<script type="text/javascript" src="http://wiki.eclipse.org/skins/common/wikibits.js?116"><!-- wikibits js --></script>
<!-- Performance mods similar to those for bug 166401 -->
<script type="text/javascript" src="http://wiki.eclipse.org/index.php?title=-&amp;action=raw&amp;gen=js&amp;useskin=eclipsenova"><!-- site js --></script>
<!-- Head Scripts -->
<script type="text/javascript" src="http://wiki.eclipse.org/skins/common/ajax.js?116"></script>
<style type="text/css">/*<![CDATA[*/
.source-java {line-height: normal; font-size: medium;}
.source-java li {line-height: normal;}
/**
* GeSHi Dynamically Generated Stylesheet
* --------------------------------------
* Dynamically generated stylesheet for java
* CSS class: source-java, CSS id:
* GeSHi (C) 2004 - 2007 Nigel McNie (http://qbnz.com/highlighter)
*/
.source-java .de1, .source-java .de2 {font-family: 'Courier New', Courier, monospace; font-weight: normal;}
.source-java {}
.source-java .head {}
.source-java .foot {}
.source-java .imp {font-weight: bold; color: red;}
.source-java .ln-xtra {color: #cc0; background-color: #ffc;}
.source-java li {font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;}
.source-java li.li2 {font-weight: bold;}
.source-java .kw1 {color: #7F0055; font-weight: bold;}
.source-java .kw2 {color: #7F0055; font-weight: bold;}
.source-java .kw3 {color: #000000; font-weight: normal}
.source-java .kw4 {color: #7F0055; font-weight: bold;}
.source-java .co1 {color: #3F7F5F; font-style: italic;}
.source-java .co2 {color: #3F7F5F;}
.source-java .co3 {color: #3F7F5F; font-style: italic; font-weight: bold;}
.source-java .coMULTI {color: #3F5FBF; font-style: italic;}
.source-java .es0 {color: #000000;}
.source-java .br0 {color: #000000;}
.source-java .st0 {color: #2A00ff;}
.source-java .nu0 {color: #000000;}
.source-java .me1 {color: #000000;}
.source-java .me2 {color: #000000;}
/*]]>*/
</style>
<style type="text/css">/*<![CDATA[*/
@import "/index.php?title=MediaWiki:Geshi.css&usemsgcache=yes&action=raw&ctype=text/css&smaxage=18000";
/*]]>*/
</style><link rel="stylesheet" type="text/css" href="AgentController.html" /> </head>
<body class="mediawiki ns-0 ltr page-SMILA_Documentation_AgentController">
<div id="globalWrapper">
<div id="column-one">
<!-- Eclipse Additions for the Top Nav start here M. Ward-->
<div id="header">
<div id="header-graphic">
<img src="http://wiki.eclipse.org/skins/eclipsenova/eclipse.png" alt="Eclipse Wiki">
</div>
<!-- Pulled 101409 Mward -->
<div class="portlet" id="p-personal">
<div class="pBody">
<ul>
<li id="pt-login"><a href="http://wiki.eclipse.org/index.php?title=Special:Userlogin&amp;returnto=SMILA/Documentation/AgentController">Log in</a></li>
</ul>
</div>
</div>
<div id="header-icons">
<div id="sites">
<ul id="sitesUL">
<li><a href="http://www.eclipse.org"><img src="http://dev.eclipse.org/custom_icons/eclipseIcon.png" width="28" height="28" alt="Eclipse Foundation" title="Eclipse Foundation" /><div>Eclipse Foundation</div></a></li>
<li><a href="http://marketplace.eclipse.org"><img src="http://dev.eclipse.org/custom_icons/marketplace.png" width="28" height="28" alt="Eclipse Marketplace" title="Eclipse Marketplace" /><div>Eclipse Marketplace</div></a></li>
<li><a href="https://bugs.eclipse.org/bugs"><img src="http://dev.eclipse.org/custom_icons/system-search-bw.png" width="28" height="28" alt="Bugzilla" title="Bugzilla" /><div>Bugzilla</div></a></li>
<li><a href="http://live.eclipse.org"><img src="http://dev.eclipse.org/custom_icons/audio-input-microphone-bw.png" width="28" height="28" alt="Live" title="Live" /><div>Eclipse Live</div></a></li>
<li><a href="http://planeteclipse.org"><img src="http://dev.eclipse.org/large_icons/devices/audio-card.png" width="28" height="28" alt="PlanetEclipse" title="Planet" /><div>Planet Eclipse</div></a></li>
<li><a href="http://portal.eclipse.org"><img src="http://dev.eclipse.org/custom_icons/preferences-system-network-proxy-bw.png" width="28" height="28" alt="Portal" title="Portal" /><div>My Foundation Portal</div></a></li>
</ul>
</div>
</div>
</div>
<!-- NEW HEADER STUFF HERE -->
<div id="header-menu">
<div id="header-nav">
<ul> <li><a class="first_one" href="http://wiki.eclipse.org/" target="_self">Home</a></li> <li><a href="http://www.eclipse.org/downloads/" target="_self">Downloads</a></li>
<li><a href="http://www.eclipse.org/users/" target="_self">Users</a></li>
<li><a href="http://www.eclipse.org/membership/" target="_self">Members</a></li>
<li><a href="http://wiki.eclipse.org/index.php/Development_Resources" target="_self">Committers</a></li>
<li><a href="http://www.eclipse.org/resources/" target="_self">Resources</a></li>
<li><a href="http://www.eclipse.org/projects/" target="_self">Projects</a></li>
<li><a href="http://www.eclipse.org/org/" target="_self">About Us</a></li>
</ul>
</div>
<div id="header-utils">
<!-- moved the search window here -->
<form action="http://wiki.eclipse.org/Special:Search" >
<input class="input" name="search" type="text" accesskey="f" value="" />
<input type='submit' onclick="this.submit();" name="go" id="searchGoButton" class="button" title="Go to a page with this exact name if one exists" value="Go" />&nbsp;
<input type='submit' onclick="this.submit();" name="fulltext" class="button" id="mw-searchButton" title="Search Eclipsepedia for this text" value="Search" />
</form>
</div>
</div>
<!-- Eclipse Additions for the Header stop here -->
<!-- Additions and mods for leftside nav Start here -->
<!--Started nav rip here-->
<!-- these are the nav controls main page, changes etc -->
<div id="novaContent" class="faux">
<div id="leftcol">
<ul id="leftnav">
<!-- these are the page controls, edit history etc -->
<li class="separator"><a class="separator">Navigation &#160;&#160;</li>
<li id="n-mainpage"><a href="http://wiki.eclipse.org/Main_Page">Main Page</a></li>
<li id="n-portal"><a href="http://wiki.eclipse.org/Eclipsepedia:Community_Portal">Community portal</a></li>
<li id="n-currentevents"><a href="http://wiki.eclipse.org/Eclipsepedia:Current_events">Current events</a></li>
<li id="n-recentchanges"><a href="http://wiki.eclipse.org/Special:Recentchanges">Recent changes</a></li>
<li id="n-randompage"><a href="http://wiki.eclipse.org/Special:Random">Random page</a></li>
<li id="n-help"><a href="http://wiki.eclipse.org/Help:Contents">Help</a></li>
<li class="separator"><a class="separator">Toolbox &#160;&#160;</a></li>
<li id="t-whatlinkshere"><a href="http://wiki.eclipse.org/Special:Whatlinkshere/SMILA/Documentation/AgentController">What links here</a></li>
<li id="t-recentchangeslinked"><a href="http://wiki.eclipse.org/Special:Recentchangeslinked/SMILA/Documentation/AgentController">Related changes</a></li>
<!-- This is the toolbox section -->
<li id="t-upload"><a href="http://wiki.eclipse.org/Special:Upload">Upload file</a></li>
<li id="t-specialpages"><a href="http://wiki.eclipse.org/Special:Specialpages">Special pages</a></li>
<li id="t-print"><a href="http://wiki.eclipse.org/index.php?title=SMILA/Documentation/AgentController&amp;printable=yes">Printable version</a></li> <li id="t-permalink"><a href="http://wiki.eclipse.org/index.php?title=SMILA/Documentation/AgentController&amp;oldid=167842">Permanent link</a></li> </ul>
</div>
<!-- Additions and mods for leftside nav End here -->
<div id="column-content">
<div id="content">
<a name="top" id="top"></a>
<div id="tabs">
<ul class="primary">
<li class="active"><a href="AgentController.html"><span class="tab">Page</span></a></li>
<li><a href="http://wiki.eclipse.org/index.php?title=Talk:SMILA/Documentation/AgentController&amp;action=edit"><span class="tab">Discussion</span></a></li>
<li><a href="http://wiki.eclipse.org/index.php?title=SMILA/Documentation/AgentController&amp;action=edit"><span class="tab">View source</span></a></li>
<li><a href="http://wiki.eclipse.org/index.php?title=SMILA/Documentation/AgentController&amp;action=history"><span class="tab">History</span></a></li>
<li><a href="http://wiki.eclipse.org/index.php?title=Special:Userlogin&amp;returnto=SMILA/Documentation/AgentController"><span class="tab">Edit</span></a></li>
</ul>
</div>
<script type="text/javascript"> if (window.isMSIE55) fixalpha(); </script>
<h1 class="firstHeading">SMILA/Documentation/AgentController</h1>
<div id="bodyContent">
<h3 id="siteSub">From Eclipsepedia</h3>
<div id="contentSub"><span class="subpages">&lt; <a href="../../SMILA.html" title="SMILA">SMILA</a> | <a href="../Documentation.html" title="SMILA/Documentation">Documentation</a></span></div>
<div id="jump-to-nav">Jump to: <a href="AgentController.html#column-one">navigation</a>, <a href="AgentController.html#searchInput">search</a></div> <!-- start content -->
<table id="toc" class="toc" summary="Contents"><tr><td><div id="toctitle"><h2>Contents</h2></div>
<ul>
<li class="toclevel-1"><a href="AgentController.html#Overview"><span class="tocnumber">1</span> <span class="toctext">Overview</span></a></li>
<li class="toclevel-1"><a href="AgentController.html#API"><span class="tocnumber">2</span> <span class="toctext">API</span></a></li>
<li class="toclevel-1"><a href="AgentController.html#Implementations"><span class="tocnumber">3</span> <span class="toctext">Implementations</span></a>
<ul>
<li class="toclevel-2"><a href="AgentController.html#org.eclipse.smila.connectivity.framework.impl"><span class="tocnumber">3.1</span> <span class="toctext">org.eclipse.smila.connectivity.framework.impl</span></a></li>
<li class="toclevel-2"><a href="AgentController.html#Configuration"><span class="tocnumber">3.2</span> <span class="toctext">Configuration</span></a></li>
<li class="toclevel-2"><a href="AgentController.html#JMX_interface"><span class="tocnumber">3.3</span> <span class="toctext">JMX interface</span></a></li>
</ul>
</li>
</ul>
</td></tr></table><script type="text/javascript"> if (window.showTocToggle) { var tocShowText = "show"; var tocHideText = "hide"; showTocToggle(); } </script>
<a name="Overview"></a><h2> <span class="mw-headline"> Overview </span></h2>
<p>The AgentController is a component that manages and monitors Agents. Whenever a new agent task is triggered (via <tt>startAgent()</tt>) a new instance of the used Agent is created and the agent object hash value is used a an id (called jobId) to identify records created by this agent instance. This jobid is set as an annotation on all records and will also visible on the agent instance in the JMX console.
</p>
<a name="API"></a><h2> <span class="mw-headline"> API </span></h2>
<p>AgentController provides two interfaces, one is used by management clients to start/stop agent instances, the other is used by Agents to execute callback methods on the AgentController itself, executing the ccommon processing logic.
</p>
<div dir="ltr" style="text-align: left;"><pre class="source-java"><span class="coMULTI">/**
* Management interface for the AgentController.
*/</span>
<span class="kw1">public</span> <span class="kw1">interface</span> AgentController <span class="br0">&#123;</span>
&nbsp;
<span class="coMULTI">/**
* Starts an Agent using the given dataSourceId. This method creates a new Thread. If it is called for a dataSourceId
* that is currently used by another agent a ConnectivityException is thrown. Returns the hashCode of the agent
* instance used for performance counter.
*
* @param dataSourceId
* the ID of the data source
* @return - the hashcode of the agent instance as int value
* @throws ConnectivityException
* if any error occurs
*/</span>
<span class="kw4">int</span> startAgent<span class="br0">&#40;</span><span class="kw3">String</span> dataSourceId<span class="br0">&#41;</span> <span class="kw1">throws</span> ConnectivityException;
&nbsp;
<span class="coMULTI">/**
* Stops an active agent using the given dataSourceId.
*
* @param dataSourceId
* the ID of the data source
* @throws ConnectivityException
* if any error occurs
*/</span>
<span class="kw4">void</span> stopAgent<span class="br0">&#40;</span><span class="kw3">String</span> dataSourceId<span class="br0">&#41;</span> <span class="kw1">throws</span> ConnectivityException;
&nbsp;
<span class="coMULTI">/**
* Checks if there are any active agents.
*
* @return true if there are active agents, false otherwise
* @throws ConnectivityException
* if any error occurs
*/</span>
<span class="kw4">boolean</span> hasActiveAgents<span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="kw1">throws</span> ConnectivityException;
&nbsp;
<span class="coMULTI">/**
* Returns a Collection of Strings containing the dataSourceIds of the currently active agents.
*
* @return a Collection of Strings containing the dataSourceIds
* @throws ConnectivityException
* if any error occurs
*/</span>
Collection&lt;String&gt; getActiveAgents<span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="kw1">throws</span> ConnectivityException;
&nbsp;
<span class="coMULTI">/**
* returns the AgentController known Agents.
*
* @return Collection with Strings
*/</span>
Collection&lt;String&gt; getAvailableAgents<span class="br0">&#40;</span><span class="br0">&#41;</span>;
<span class="br0">&#125;</span></pre></div>
<div dir="ltr" style="text-align: left;"><pre class="source-java"><span class="coMULTI">/**
* Interface for callbacks on the AgentController. This interface is used by Agents to send add and delete requests and
* to unregister an agent if a critical error occurred.
*/</span>
<span class="kw1">public</span> <span class="kw1">interface</span> AgentControllerCallback <span class="kw1">extends</span> ControllerCallback <span class="br0">&#123;</span>
&nbsp;
<span class="coMULTI">/**
* Add the given record.
*
* @param sessionId
* the delta indexing session Id
* @param deltaIndexingType
* the DeltaIndexingType
* @param record
* the record to add
* @param hash
* the hash value used for delta indexing
*/</span>
<span class="kw4">void</span> add<span class="br0">&#40;</span><span class="kw1">final</span> <span class="kw3">String</span> sessionId, <span class="kw1">final</span> DeltaIndexingType deltaIndexingType, <span class="kw1">final</span> Record record, <span class="kw1">final</span> <span class="kw3">String</span> hash<span class="br0">&#41;</span>;
&nbsp;
<span class="coMULTI">/**
* Delete the given id.
*
* @param sessionId
* the delta indexing session Id
* @param deltaIndexingType
* the DeltaIndexingType
* @param id
* the id of the record to delete
*/</span>
<span class="kw4">void</span> delete<span class="br0">&#40;</span><span class="kw1">final</span> <span class="kw3">String</span> sessionId, <span class="kw1">final</span> DeltaIndexingType deltaIndexingType, <span class="kw1">final</span> Id id<span class="br0">&#41;</span>;
&nbsp;
<span class="coMULTI">/**
* Removes the Agent using the given DataSourceId from the list of active Agents.
*
* @param sessionId
* the delta indexing session Id
* @param deltaIndexingType
* the DeltaIndexingType
* @param dataSourceId
* the ID of the data source used by the crawl
*/</span>
<span class="kw4">void</span> unregister<span class="br0">&#40;</span><span class="kw1">final</span> <span class="kw3">String</span> sessionId, <span class="kw1">final</span> DeltaIndexingType deltaIndexingType, <span class="kw1">final</span> <span class="kw3">String</span> dataSourceId<span class="br0">&#41;</span>;
<span class="br0">&#125;</span></pre></div>
<a name="Implementations"></a><h2> <span class="mw-headline"> Implementations </span></h2>
<p>It is possible to provide different implementations for the AgentController interface. At the moment there is one implementation available.
</p>
<a name="org.eclipse.smila.connectivity.framework.impl"></a><h3> <span class="mw-headline">org.eclipse.smila.connectivity.framework.impl</span></h3>
<p>This bundle contains the default implementation of the AgentController interface.
</p><p>The AgentController implements the general processing logic common for all types of Agents. Its interface is a pure management interface that can be accessed by its Java interface or its wrapping JMX interface. It has references to the following OSGi services:
</p>
<ul><li> ConnectivityManager
</li><li> Agent ComponentFactory
</li><li> ConfigurationManagement (t.b.d.)
</li><li> CompoundManagement (t.b.d.)
</li></ul>
<p>Agent Factories register themselves at the AgentController. Each time an agent is started with a datasource for a specific type of agent, a new instance of that Agent type is created via the Agent ComponentFactory. This allows parallel watching of datasources with the same type (e.g. several rss feeds). Note that it is not possible to start muptiple agents on the same data source concurrently!
</p><p><br />
This chart shows the current AgentController processing logic for one agent run:
<a href="http://wiki.eclipse.org/Image:AgentControllerProcessingLogic.png" class="image" title="Image:AgentControllerProcessingLogic.png"><img alt="Image:AgentControllerProcessingLogic.png" src="http://wiki.eclipse.org/images/b/bd/AgentControllerProcessingLogic.png" width="960" height="720" border="0" /></a>
</p>
<ul><li> the Agent is started, initializes DeltaIndexing for the data source by calling <tt>DeltaIndexingManager:init(String)</tt> and waits for events in a separate thread. One of the following events can occur:
<ul><li> ADD: a new or updated object on the datasource was detected. A record object is created. It is checked if the record was updated by calling <tt>DeltaIndexingManager:checkForUpdate(Id, String)</tt>
<ul><li> YES: the record is added to the Queue by calling <tt>ConnectivityManager:add(Record[])</tt> and updated in the DeltaIndexingManager by calling <tt>DeltaIndexingManager:visit(Id, String, boolean)</tt>
</li><li> NO: no actions are taken
</li></ul>
</li><li> DELETE: an object on the datasource was deleted. An Id object is created for the deleted object. This Id is deleted from both ConnectivityManager and DeltaIndexingManager by calling <tt>ConnectivityManager:delete(Id[])</tt>and <tt>DeltaIndexingManager:delete(Id[])</tt>.
</li><li> STOP: the agent is stopped either via an external command or because some fatal errors occured
<ul><li> it finishes DeltaIndexing by calling <tt>DeltaIndexingManager:finish(String)</tt> and ends the thread
</li></ul>
</li></ul>
</li></ul>
<p>The processing logic will be enhanced when CompoundManagement is integrated.
</p>
<dl><dt>Note
</dt></dl>
<p>The exact logic depends on the settings of DeltaIndexing in the data source configuration. Depending on the configured value, delta indexing logic is executed fully, partially or not at all.
</p><p><br />
</p>
<a name="Configuration"></a><h3> <span class="mw-headline"> Configuration </span></h3>
<p>There are no configuration options available for this bundle.
</p>
<a name="JMX_interface"></a><h3> <span class="mw-headline"> JMX interface </span></h3>
<div dir="ltr" style="text-align: left;"><pre class="source-java"><span class="coMULTI">/**
* The Interface AgentControllerAgent.
*/</span>
<span class="kw1">public</span> <span class="kw1">interface</span> AgentControllerAgent <span class="br0">&#123;</span>
&nbsp;
<span class="coMULTI">/**
* Start agent.
*
* @param dataSourceId
* the data source id
*
* @return the string
*/</span>
<span class="kw3">String</span> startAgent<span class="br0">&#40;</span><span class="kw1">final</span> <span class="kw3">String</span> dataSourceId<span class="br0">&#41;</span>;
&nbsp;
<span class="coMULTI">/**
* Stop agent.
*
* @param dataSourceId
* the data source id
*
* @return the string
*/</span>
<span class="kw3">String</span> stopAgent<span class="br0">&#40;</span><span class="kw1">final</span> <span class="kw3">String</span> dataSourceId<span class="br0">&#41;</span>;
&nbsp;
<span class="coMULTI">/**
* Gets the active agents status.
*
* @return the active agents status
*/</span>
<span class="kw3">String</span> getActiveAgentTaskStatus<span class="br0">&#40;</span><span class="br0">&#41;</span>;
&nbsp;
<span class="coMULTI">/**
* Gets the active agents.
*
* @return the active agents
*/</span>
<span class="kw3">String</span><span class="br0">&#91;</span><span class="br0">&#93;</span> getActiveAgentTasks<span class="br0">&#40;</span><span class="br0">&#41;</span>;
&nbsp;
<span class="coMULTI">/**
* returns all Agents that have connected to the AgentController.
*
* @return List with Strings of all available Agents
*/</span>
<span class="kw3">String</span><span class="br0">&#91;</span><span class="br0">&#93;</span> getAvailableAgents<span class="br0">&#40;</span><span class="br0">&#41;</span>;
&nbsp;
<span class="br0">&#125;</span></pre></div>
<p><br />
Here is a screenshot of the AgentController in the JMX Console:
</p><p><a href="http://wiki.eclipse.org/Image:AgentControllerJMX.png" class="image" title="Image:AgentControllerJMX.png"><img alt="Image:AgentControllerJMX.png" src="http://wiki.eclipse.org/images/0/06/AgentControllerJMX.png" width="583" height="448" border="0" /></a>
</p>
<!--
NewPP limit report
Preprocessor node count: 24/1000000
Post-expand include size: 0/2097152 bytes
Template argument size: 0/2097152 bytes
#ifexist count: 0/100
-->
<!-- Saved in parser cache with key wikidb:pcache:idhash:19391-0!1!0!!en!2!edit=0 and timestamp 20110329141306 -->
<div class="printfooter">
Retrieved from "<a href="AgentController.html">http://wiki.eclipse.org/SMILA/Documentation/AgentController</a>"</div>
<!-- end content -->
<div class="visualClear"></div>
</div>
</div>
</div>
<!-- Yoink of toolbox for phoenix moved up -->
</div>
</div>
<div id="clearFooter"/>
<div id="footer" >
<ul id="footernav">
<li class="first"><a href="http://www.eclipse.org/">Home</a></li>
<li><a href="http://www.eclipse.org/legal/privacy.php">Privacy Policy</a></li>
<li><a href="http://www.eclipse.org/legal/termsofuse.php">Terms of Use</a></li>
<li><a href="http://www.eclipse.org/legal/copyright.php">Copyright Agent</a></li>
<li><a href="http://www.eclipse.org/org/foundation/contact.php">Contact</a></li>
<li><a href="http://wiki.eclipse.org/Eclipsepedia:About" title="Eclipsepedia:About">About Eclipsepedia</a></li>
</ul>
<span id="copyright">Copyright &copy; 2011 The Eclipse Foundation. All Rights Reserved</span>
<p id="footercredit">This page was last modified 09:11, 14 August 2009 by <a href="http://wiki.eclipse.org/User:Daniel.stucky.empolis.com" title="User:Daniel.stucky.empolis.com">Daniel Stucky</a>. </p>
<p id="footerviews">This page has been accessed 1,475 times.</p>
</div>
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
var pageTracker = _gat._getTracker("UA-910670-4");
pageTracker._trackPageview();
</script>
<!-- <div class="visualClear"></div> -->
<script type="text/javascript">if (window.runOnloadHook) runOnloadHook();</script>
</div>
<!-- Served in 0.057 secs. --></body></html>