<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_20) on Mon Sep 22 13:06:34 BRT 2014 -->
<title>DefaultPlan</title>
<meta name="date" content="2014-09-22">
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="DefaultPlan";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/DefaultPlan.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../index-files/index-1.html">Index</a></li>
<li><a href="../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../bdi4jade/plan/AbstractPlan.html" title="class in bdi4jade.plan"><span class="typeNameLink">Prev Class</span></a></li>
<li><a href="../../bdi4jade/plan/Plan.html" title="interface in bdi4jade.plan"><span class="typeNameLink">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../index.html?bdi4jade/plan/DefaultPlan.html" target="_top">Frames</a></li>
<li><a href="DefaultPlan.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary: </li>
<li>Nested | </li>
<li><a href="#field.summary">Field</a> | </li>
<li><a href="#constructor.summary">Constr</a> | </li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail: </li>
<li><a href="#field.detail">Field</a> | </li>
<li><a href="#constructor.detail">Constr</a> | </li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">bdi4jade.plan</div>
<h2 title="Class DefaultPlan" class="title">Class DefaultPlan</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li><a href="../../bdi4jade/core/MetadataElementImpl.html" title="class in bdi4jade.core">bdi4jade.core.MetadataElementImpl</a></li>
<li>
<ul class="inheritance">
<li><a href="../../bdi4jade/plan/AbstractPlan.html" title="class in bdi4jade.plan">bdi4jade.plan.AbstractPlan</a></li>
<li>
<ul class="inheritance">
<li>bdi4jade.plan.DefaultPlan</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="../../bdi4jade/core/MetadataElement.html" title="interface in bdi4jade.core">MetadataElement</a>, <a href="../../bdi4jade/plan/Plan.html" title="interface in bdi4jade.plan">Plan</a></dd>
</dl>
<hr>
<br>
<pre>public class <span class="typeNameLabel">DefaultPlan</span>
extends <a href="../../bdi4jade/plan/AbstractPlan.html" title="class in bdi4jade.plan">AbstractPlan</a></pre>
<div class="block">This class represents a plan whose plan body is a class that can be
instantiated by invoking the <code>Class.newInstance()</code> method. A class that
has the <code>Behaviour</code> class as superclass is provides and it is
instantiates in the <a href="../../bdi4jade/plan/DefaultPlan.html#createPlanBody--"><code>createPlanBody()</code></a> method.</div>
<dl>
<dt><span class="simpleTagLabel">Author:</span></dt>
<dd>Ingrid Nunes</dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested.class.summary">
<!-- -->
</a>
<h3>Nested Class Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="nested.classes.inherited.from.class.bdi4jade.plan.Plan">
<!-- -->
</a>
<h3>Nested classes/interfaces inherited from interface bdi4jade.plan.<a href="../../bdi4jade/plan/Plan.html" title="interface in bdi4jade.plan">Plan</a></h3>
<code><a href="../../bdi4jade/plan/Plan.EndState.html" title="enum in bdi4jade.plan">Plan.EndState</a></code></li>
</ul>
</li>
</ul>
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd"> </span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected java.lang.Class<? extends <a href="../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a>></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../bdi4jade/plan/DefaultPlan.html#planBodyClass">planBodyClass</a></span></code> </td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.bdi4jade.core.MetadataElementImpl">
<!-- -->
</a>
<h3>Fields inherited from class bdi4jade.core.<a href="../../bdi4jade/core/MetadataElementImpl.html" title="class in bdi4jade.core">MetadataElementImpl</a></h3>
<code><a href="../../bdi4jade/core/MetadataElementImpl.html#metadata">metadata</a></code></li>
</ul>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd"> </span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../bdi4jade/plan/DefaultPlan.html#DefaultPlan-java.lang.Class-java.lang.Class-">DefaultPlan</a></span>(java.lang.Class<? extends <a href="../../bdi4jade/goal/Goal.html" title="interface in bdi4jade.goal">Goal</a>> goalClass,
java.lang.Class<? extends <a href="../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a>> planBodyClass)</code>
<div class="block">Creates a new simple plan, which is able to achieve goals of the given
goal class, and its body should be instances of the provided plan body
class.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../bdi4jade/plan/DefaultPlan.html#DefaultPlan-java.lang.Class-">DefaultPlan</a></span>(java.lang.Class<? extends <a href="../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a>> planBodyClass)</code>
<div class="block">Creates a new simple plan.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../bdi4jade/plan/DefaultPlan.html#DefaultPlan-bdi4jade.goal.GoalTemplate-java.lang.Class-">DefaultPlan</a></span>(<a href="../../bdi4jade/goal/GoalTemplate.html" title="interface in bdi4jade.goal">GoalTemplate</a> goalTemplate,
java.lang.Class<? extends <a href="../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a>> planBodyClass)</code>
<div class="block">Creates a new simple plan, which is able to achieve goals that match the
provided template.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../bdi4jade/plan/DefaultPlan.html#DefaultPlan-bdi4jade.goal.GoalTemplate-jade.lang.acl.MessageTemplate-java.lang.Class-">DefaultPlan</a></span>(<a href="../../bdi4jade/goal/GoalTemplate.html" title="interface in bdi4jade.goal">GoalTemplate</a> goalTemplate,
jade.lang.acl.MessageTemplate messageTemplate,
java.lang.Class<? extends <a href="../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a>> planBodyClass)</code>
<div class="block">Creates a new simple plan, which is able to achieve goals that match the
provided goal template and process messages that match the provided
message template.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../bdi4jade/plan/DefaultPlan.html#DefaultPlan-jade.lang.acl.MessageTemplate-java.lang.Class-">DefaultPlan</a></span>(jade.lang.acl.MessageTemplate messageTemplate,
java.lang.Class<? extends <a href="../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a>> planBodyClass)</code>
<div class="block">Creates a new simple plan, which is able to process messages that match
the provided message template.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../bdi4jade/plan/DefaultPlan.html#DefaultPlan-java.lang.String-java.lang.Class-">DefaultPlan</a></span>(java.lang.String id,
java.lang.Class<? extends <a href="../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a>> planBodyClass)</code>
<div class="block">Creates a new simple plan.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../bdi4jade/plan/DefaultPlan.html#DefaultPlan-java.lang.String-bdi4jade.goal.GoalTemplate-java.lang.Class-">DefaultPlan</a></span>(java.lang.String id,
<a href="../../bdi4jade/goal/GoalTemplate.html" title="interface in bdi4jade.goal">GoalTemplate</a> goalTemplate,
java.lang.Class<? extends <a href="../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a>> planBodyClass)</code>
<div class="block">Creates a new simple plan, which is able to achieve goals that match the
provided template.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../bdi4jade/plan/DefaultPlan.html#DefaultPlan-java.lang.String-bdi4jade.goal.GoalTemplate-jade.lang.acl.MessageTemplate-java.lang.Class-">DefaultPlan</a></span>(java.lang.String id,
<a href="../../bdi4jade/goal/GoalTemplate.html" title="interface in bdi4jade.goal">GoalTemplate</a> goalTemplate,
jade.lang.acl.MessageTemplate messageTemplate,
java.lang.Class<? extends <a href="../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a>> planBodyClass)</code>
<div class="block">Creates a new simple plan, which is able to achieve goals that match the
provided goal template and process messages that match the provided
message template.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../bdi4jade/plan/DefaultPlan.html#DefaultPlan-java.lang.String-jade.lang.acl.MessageTemplate-java.lang.Class-">DefaultPlan</a></span>(java.lang.String id,
jade.lang.acl.MessageTemplate messageTemplate,
java.lang.Class<? extends <a href="../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a>> planBodyClass)</code>
<div class="block">Creates a new simple plan, which is able to process messages that match
the provided message template.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd"> </span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code><a href="../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../bdi4jade/plan/DefaultPlan.html#createPlanBody--">createPlanBody</a></span>()</code>
<div class="block">Creates a new instance of the plan body.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>java.lang.Class<? extends <a href="../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a>></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../bdi4jade/plan/DefaultPlan.html#getPlanBodyClass--">getPlanBodyClass</a></span>()</code>
<div class="block">Returns the class of plan body of this plan, to be instantiated and
executed.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.bdi4jade.plan.AbstractPlan">
<!-- -->
</a>
<h3>Methods inherited from class bdi4jade.plan.<a href="../../bdi4jade/plan/AbstractPlan.html" title="class in bdi4jade.plan">AbstractPlan</a></h3>
<code><a href="../../bdi4jade/plan/AbstractPlan.html#addGoalTemplate-bdi4jade.goal.GoalTemplate-">addGoalTemplate</a>, <a href="../../bdi4jade/plan/AbstractPlan.html#addMessageTemplate-jade.lang.acl.MessageTemplate-">addMessageTemplate</a>, <a href="../../bdi4jade/plan/AbstractPlan.html#canAchieve-bdi4jade.goal.Goal-">canAchieve</a>, <a href="../../bdi4jade/plan/AbstractPlan.html#canProcess-jade.lang.acl.ACLMessage-">canProcess</a>, <a href="../../bdi4jade/plan/AbstractPlan.html#equals-java.lang.Object-">equals</a>, <a href="../../bdi4jade/plan/AbstractPlan.html#getGoalTemplates--">getGoalTemplates</a>, <a href="../../bdi4jade/plan/AbstractPlan.html#getId--">getId</a>, <a href="../../bdi4jade/plan/AbstractPlan.html#getMessageTemplates--">getMessageTemplates</a>, <a href="../../bdi4jade/plan/AbstractPlan.html#getPlanLibrary--">getPlanLibrary</a>, <a href="../../bdi4jade/plan/AbstractPlan.html#hashCode--">hashCode</a>, <a href="../../bdi4jade/plan/AbstractPlan.html#initGoalTemplates--">initGoalTemplates</a>, <a href="../../bdi4jade/plan/AbstractPlan.html#initMessageTemplates--">initMessageTemplates</a>, <a href="../../bdi4jade/plan/AbstractPlan.html#isContextApplicable-bdi4jade.goal.Goal-">isContextApplicable</a>, <a href="../../bdi4jade/plan/AbstractPlan.html#setPlanLibrary-bdi4jade.plan.PlanLibrary-">setPlanLibrary</a>, <a href="../../bdi4jade/plan/AbstractPlan.html#toString--">toString</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.bdi4jade.core.MetadataElementImpl">
<!-- -->
</a>
<h3>Methods inherited from class bdi4jade.core.<a href="../../bdi4jade/core/MetadataElementImpl.html" title="class in bdi4jade.core">MetadataElementImpl</a></h3>
<code><a href="../../bdi4jade/core/MetadataElementImpl.html#getMetadata--">getMetadata</a>, <a href="../../bdi4jade/core/MetadataElementImpl.html#getMetadata-java.lang.Object-">getMetadata</a>, <a href="../../bdi4jade/core/MetadataElementImpl.html#hasMetadata-java.lang.Object-">hasMetadata</a>, <a href="../../bdi4jade/core/MetadataElementImpl.html#putMetadata-java.lang.Object-java.lang.Object-">putMetadata</a>, <a href="../../bdi4jade/core/MetadataElementImpl.html#removeMetadata-java.lang.Object-">removeMetadata</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class java.lang.Object</h3>
<code>clone, finalize, getClass, notify, notifyAll, wait, wait, wait</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.bdi4jade.core.MetadataElement">
<!-- -->
</a>
<h3>Methods inherited from interface bdi4jade.core.<a href="../../bdi4jade/core/MetadataElement.html" title="interface in bdi4jade.core">MetadataElement</a></h3>
<code><a href="../../bdi4jade/core/MetadataElement.html#getMetadata--">getMetadata</a>, <a href="../../bdi4jade/core/MetadataElement.html#getMetadata-java.lang.Object-">getMetadata</a>, <a href="../../bdi4jade/core/MetadataElement.html#hasMetadata-java.lang.Object-">hasMetadata</a>, <a href="../../bdi4jade/core/MetadataElement.html#putMetadata-java.lang.Object-java.lang.Object-">putMetadata</a>, <a href="../../bdi4jade/core/MetadataElement.html#removeMetadata-java.lang.Object-">removeMetadata</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a name="planBodyClass">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>planBodyClass</h4>
<pre>protected final java.lang.Class<? extends <a href="../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a>> planBodyClass</pre>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="DefaultPlan-java.lang.Class-java.lang.Class-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DefaultPlan</h4>
<pre>public DefaultPlan(java.lang.Class<? extends <a href="../../bdi4jade/goal/Goal.html" title="interface in bdi4jade.goal">Goal</a>> goalClass,
java.lang.Class<? extends <a href="../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a>> planBodyClass)</pre>
<div class="block">Creates a new simple plan, which is able to achieve goals of the given
goal class, and its body should be instances of the provided plan body
class. Its identifier is set of the class name of the plan body class.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>goalClass</code> - the class of goals that this plan is able to achieve.</dd>
<dd><code>planBodyClass</code> - the class of this plan body.</dd>
</dl>
</li>
</ul>
<a name="DefaultPlan-java.lang.Class-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DefaultPlan</h4>
<pre>public DefaultPlan(java.lang.Class<? extends <a href="../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a>> planBodyClass)</pre>
<div class="block">Creates a new simple plan. Its body should be instances of the provided
plan body class. Its identifier is set of the class name of the plan body
class.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>planBodyClass</code> - the class of this plan body.</dd>
</dl>
</li>
</ul>
<a name="DefaultPlan-bdi4jade.goal.GoalTemplate-java.lang.Class-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DefaultPlan</h4>
<pre>public DefaultPlan(<a href="../../bdi4jade/goal/GoalTemplate.html" title="interface in bdi4jade.goal">GoalTemplate</a> goalTemplate,
java.lang.Class<? extends <a href="../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a>> planBodyClass)</pre>
<div class="block">Creates a new simple plan, which is able to achieve goals that match the
provided template. It is a plan whose body is the specified class and its
id is the plan body class name. It sets that this plan can achieve goals
of the specified goal template, but more goal templates can be specified
by overriding the <a href="../../bdi4jade/plan/AbstractPlan.html#initGoalTemplates--"><code>AbstractPlan.initGoalTemplates()</code></a> method or invoking the
<a href="../../bdi4jade/plan/AbstractPlan.html#addGoalTemplate-bdi4jade.goal.GoalTemplate-"><code>AbstractPlan.addGoalTemplate(GoalTemplate)</code></a> method.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>goalTemplate</code> - the template of goals that this plan can achieve.</dd>
<dd><code>planBodyClass</code> - the class of this plan body.</dd>
</dl>
</li>
</ul>
<a name="DefaultPlan-bdi4jade.goal.GoalTemplate-jade.lang.acl.MessageTemplate-java.lang.Class-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DefaultPlan</h4>
<pre>public DefaultPlan(<a href="../../bdi4jade/goal/GoalTemplate.html" title="interface in bdi4jade.goal">GoalTemplate</a> goalTemplate,
jade.lang.acl.MessageTemplate messageTemplate,
java.lang.Class<? extends <a href="../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a>> planBodyClass)</pre>
<div class="block">Creates a new simple plan, which is able to achieve goals that match the
provided goal template and process messages that match the provided
message template. It is a plan whose body is the specified class and its
id is the plan body class name. It sets that this plan can achieve goals
of the specified goal template, but more goal templates can be specified
by overriding the <a href="../../bdi4jade/plan/AbstractPlan.html#initGoalTemplates--"><code>AbstractPlan.initGoalTemplates()</code></a> method or invoking the
<a href="../../bdi4jade/plan/AbstractPlan.html#addGoalTemplate-bdi4jade.goal.GoalTemplate-"><code>AbstractPlan.addGoalTemplate(GoalTemplate)</code></a> method, while more message
templates can be specified by overriding the
<a href="../../bdi4jade/plan/AbstractPlan.html#initMessageTemplates--"><code>AbstractPlan.initMessageTemplates()</code></a> method or invoking the
<a href="../../bdi4jade/plan/AbstractPlan.html#addMessageTemplate-jade.lang.acl.MessageTemplate-"><code>AbstractPlan.addMessageTemplate(MessageTemplate)</code></a> method.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>goalTemplate</code> - the template of goals that this plan can achieve.</dd>
<dd><code>messageTemplate</code> - the template of messages that this plan can process.</dd>
<dd><code>planBodyClass</code> - the class of this plan body.</dd>
</dl>
</li>
</ul>
<a name="DefaultPlan-jade.lang.acl.MessageTemplate-java.lang.Class-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DefaultPlan</h4>
<pre>public DefaultPlan(jade.lang.acl.MessageTemplate messageTemplate,
java.lang.Class<? extends <a href="../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a>> planBodyClass)</pre>
<div class="block">Creates a new simple plan, which is able to process messages that match
the provided message template. It is a plan whose body is the specified
class and its id is the plan body class name. It sets that this plan can
process messages of the specified message template, but more message
templates can be specified by overriding the
<a href="../../bdi4jade/plan/AbstractPlan.html#initMessageTemplates--"><code>AbstractPlan.initMessageTemplates()</code></a> method or invoking the
<a href="../../bdi4jade/plan/AbstractPlan.html#addMessageTemplate-jade.lang.acl.MessageTemplate-"><code>AbstractPlan.addMessageTemplate(MessageTemplate)</code></a> method.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>messageTemplate</code> - the template of messages that this plan can process.</dd>
<dd><code>planBodyClass</code> - the class of this plan body.</dd>
</dl>
</li>
</ul>
<a name="DefaultPlan-java.lang.String-java.lang.Class-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DefaultPlan</h4>
<pre>public DefaultPlan(java.lang.String id,
java.lang.Class<? extends <a href="../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a>> planBodyClass)</pre>
<div class="block">Creates a new simple plan. It is a plan whose body is the specified class
and its id is the given id. Goal templates can be specified by overriding
the <a href="../../bdi4jade/plan/AbstractPlan.html#initGoalTemplates--"><code>AbstractPlan.initGoalTemplates()</code></a> method or invoking the
<a href="../../bdi4jade/plan/AbstractPlan.html#addGoalTemplate-bdi4jade.goal.GoalTemplate-"><code>AbstractPlan.addGoalTemplate(GoalTemplate)</code></a> method, while more message
templates can be specified by overriding the
<a href="../../bdi4jade/plan/AbstractPlan.html#initMessageTemplates--"><code>AbstractPlan.initMessageTemplates()</code></a> method or invoking the
<a href="../../bdi4jade/plan/AbstractPlan.html#addMessageTemplate-jade.lang.acl.MessageTemplate-"><code>AbstractPlan.addMessageTemplate(MessageTemplate)</code></a> method.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>id</code> - the plan id.</dd>
<dd><code>planBodyClass</code> - the class of this plan body.</dd>
</dl>
</li>
</ul>
<a name="DefaultPlan-java.lang.String-bdi4jade.goal.GoalTemplate-java.lang.Class-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DefaultPlan</h4>
<pre>public DefaultPlan(java.lang.String id,
<a href="../../bdi4jade/goal/GoalTemplate.html" title="interface in bdi4jade.goal">GoalTemplate</a> goalTemplate,
java.lang.Class<? extends <a href="../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a>> planBodyClass)</pre>
<div class="block">Creates a new simple plan, which is able to achieve goals that match the
provided template. It is a plan whose body is the specified class and its
id is the given id. It sets that this plan can achieve goals of the
specified goal template, but more goal templates can be specified by
overriding the <a href="../../bdi4jade/plan/AbstractPlan.html#initGoalTemplates--"><code>AbstractPlan.initGoalTemplates()</code></a> method or invoking the
<a href="../../bdi4jade/plan/AbstractPlan.html#addGoalTemplate-bdi4jade.goal.GoalTemplate-"><code>AbstractPlan.addGoalTemplate(GoalTemplate)</code></a> method.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>id</code> - the plan id.</dd>
<dd><code>goalTemplate</code> - the template of goals that this plan can achieve.</dd>
<dd><code>planBodyClass</code> - the class of this plan body.</dd>
</dl>
</li>
</ul>
<a name="DefaultPlan-java.lang.String-bdi4jade.goal.GoalTemplate-jade.lang.acl.MessageTemplate-java.lang.Class-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DefaultPlan</h4>
<pre>public DefaultPlan(java.lang.String id,
<a href="../../bdi4jade/goal/GoalTemplate.html" title="interface in bdi4jade.goal">GoalTemplate</a> goalTemplate,
jade.lang.acl.MessageTemplate messageTemplate,
java.lang.Class<? extends <a href="../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a>> planBodyClass)</pre>
<div class="block">Creates a new simple plan, which is able to achieve goals that match the
provided goal template and process messages that match the provided
message template. It is a plan whose body is the specified class and its
id is the given id. It sets that this plan can achieve goals of the
specified goal template, but more goal templates can be specified by
overriding the <a href="../../bdi4jade/plan/AbstractPlan.html#initGoalTemplates--"><code>AbstractPlan.initGoalTemplates()</code></a> method or invoking the
<a href="../../bdi4jade/plan/AbstractPlan.html#addGoalTemplate-bdi4jade.goal.GoalTemplate-"><code>AbstractPlan.addGoalTemplate(GoalTemplate)</code></a> method, while more message
templates can be specified by overriding the
<a href="../../bdi4jade/plan/AbstractPlan.html#initMessageTemplates--"><code>AbstractPlan.initMessageTemplates()</code></a> method or invoking the
<a href="../../bdi4jade/plan/AbstractPlan.html#addMessageTemplate-jade.lang.acl.MessageTemplate-"><code>AbstractPlan.addMessageTemplate(MessageTemplate)</code></a> method.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>id</code> - the plan id.</dd>
<dd><code>goalTemplate</code> - the template of goals that this plan can achieve.</dd>
<dd><code>messageTemplate</code> - the template of messages that this plan can process.</dd>
<dd><code>planBodyClass</code> - the class of this plan body.</dd>
</dl>
</li>
</ul>
<a name="DefaultPlan-java.lang.String-jade.lang.acl.MessageTemplate-java.lang.Class-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>DefaultPlan</h4>
<pre>public DefaultPlan(java.lang.String id,
jade.lang.acl.MessageTemplate messageTemplate,
java.lang.Class<? extends <a href="../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a>> planBodyClass)</pre>
<div class="block">Creates a new simple plan, which is able to process messages that match
the provided message template. It is a plan whose body is the specified
class and its id is the given id. It sets that this plan can process
messages of the specified message template, but more message templates
can be specified by overriding the <a href="../../bdi4jade/plan/AbstractPlan.html#initMessageTemplates--"><code>AbstractPlan.initMessageTemplates()</code></a> method
or invoking the <a href="../../bdi4jade/plan/AbstractPlan.html#addMessageTemplate-jade.lang.acl.MessageTemplate-"><code>AbstractPlan.addMessageTemplate(MessageTemplate)</code></a> method.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>id</code> - the plan id.</dd>
<dd><code>messageTemplate</code> - the template of messages that this plan can process.</dd>
<dd><code>planBodyClass</code> - the class of this plan body.</dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="createPlanBody--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createPlanBody</h4>
<pre>public <a href="../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a> createPlanBody()
throws <a href="../../bdi4jade/exception/PlanInstantiationException.html" title="class in bdi4jade.exception">PlanInstantiationException</a></pre>
<div class="block">Creates a new instance of the plan body. It invokes the method
newInstance() from the plan body class.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the instantiated plan body.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../bdi4jade/exception/PlanInstantiationException.html" title="class in bdi4jade.exception">PlanInstantiationException</a></code> - if an error occurred during the instantiation process.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../bdi4jade/plan/Plan.html#createPlanBody--"><code>Plan.createPlanBody()</code></a></dd>
</dl>
</li>
</ul>
<a name="getPlanBodyClass--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getPlanBodyClass</h4>
<pre>public java.lang.Class<? extends <a href="../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a>> getPlanBodyClass()</pre>
<div class="block">Returns the class of plan body of this plan, to be instantiated and
executed.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the planBodyClass</dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/DefaultPlan.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../index-files/index-1.html">Index</a></li>
<li><a href="../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../bdi4jade/plan/AbstractPlan.html" title="class in bdi4jade.plan"><span class="typeNameLink">Prev Class</span></a></li>
<li><a href="../../bdi4jade/plan/Plan.html" title="interface in bdi4jade.plan"><span class="typeNameLink">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../index.html?bdi4jade/plan/DefaultPlan.html" target="_top">Frames</a></li>
<li><a href="DefaultPlan.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary: </li>
<li>Nested | </li>
<li><a href="#field.summary">Field</a> | </li>
<li><a href="#constructor.summary">Constr</a> | </li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail: </li>
<li><a href="#field.detail">Field</a> | </li>
<li><a href="#constructor.detail">Constr</a> | </li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>