bdi4jade.core

## Class MultipleCapabilityAgent

- java.lang.Object
- - jade.core.Agent
  - - bdi4jade.core.AbstractBDIAgent
    - - bdi4jade.core.MultipleCapabilityAgent

- All Implemented Interfaces:
    BDIAgent, jade.core.TimerListener, java.io.Serializable, java.lang.Runnable

      public class MultipleCapabilityAgent
      extends AbstractBDIAgent

  This class is a BDIAgent that has multiple aggregated capabilities.
  Author:
    Ingrid Nunes
  See Also:
    Serialized Form

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class jade.core.Agent

      `jade.core.Agent.Interrupted`

  - ### Field Summary

    - ### Fields inherited from class bdi4jade.core.AbstractBDIAgent

      `goalListeners`

    - ### Fields inherited from class jade.core.Agent

      `AP_ACTIVE, AP_DELETED, AP_IDLE, AP_INITIATED, AP_MAX, AP_MIN, AP_SUSPENDED, AP_WAITING, D_ACTIVE, D_MAX, D_MIN, D_RETIRED, D_SUSPENDED, D_UNKNOWN, MSG_QUEUE_CLASS`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `MultipleCapabilityAgent()` Default constructor.
    `MultipleCapabilityAgent(Capability capability)` Creates a new BDIAgent with a single capability.
    `MultipleCapabilityAgent(Capability[] capabilities)` Creates a new BDIAgent with a set of capabilities.
    `MultipleCapabilityAgent(java.util.Collection<Capability> capabilities)` Creates a new BDIAgent with a set of capabilities.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addCapability(Capability capability)` Adds a capability to this agent.
    `boolean` | `removeCapability(Capability capability)` Removes a capability from this agent.

    - ### Methods inherited from class bdi4jade.core.AbstractBDIAgent

      `addGoal, addGoal, addGoal, addGoal, addGoalListener, addSoftgoal, canHandle, dropGoal, dropSoftoal, getAllCapabilities, getBeliefRevisionStrategy, getBeliefs, getCapabilities, getDeliberationFunction, getGoalListeners, getGoalOwner, getGoals, getIntentions, getOptionGenerationFunction, getPlanSelectionStrategy, getSoftgoals, hasGoal, init, removeGoalListener, restart, setBeliefRevisionStrategy, setDeliberationFunction, setOptionGenerationFunction, setPlanSelectionStrategy, setup, takeDown`

    - ### Methods inherited from class jade.core.Agent

      `addBehaviour, afterClone, afterMove, beforeClone, beforeMove, blockingReceive, blockingReceive, blockingReceive, blockingReceive, changeStateTo, clean, createMessageQueue, doActivate, doClone, doDelete, doMove, doSuspend, doTimeOut, doWait, doWait, doWake, getAgentState, getAID, getAMS, getArguments, getBootProperties, getContainerController, getContentManager, getCurQueueSize, getDefaultDF, getHap, getHelper, getLocalName, getName, getO2AInterface, getO2AObject, getProperty, getQueueSize, getState, here, isRestarting, join, notifyChangeBehaviourState, notifyRestarted, postMessage, putBack, putO2AObject, receive, receive, registerO2AInterface, removeBehaviour, removeTimer, restartLater, restore, restoreBufferedState, run, send, setArguments, setEnabledO2ACommunication, setGenerateBehaviourEvents, setO2AManager, setQueueSize, waitUntilStarted, write`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface bdi4jade.core.BDIAgent

      `blockingReceive, blockingReceive, blockingReceive, blockingReceive, doActivate, doClone, doDelete, doMove, doSuspend, doTimeOut, doWait, doWait, doWake, getAgentState, getAID, getAMS, getContainerController, getContentManager, getCurQueueSize, getHap, getHelper, getLocalName, getName, getQueueSize, here, putBack, receive, receive, send, setQueueSize`

- - ### Constructor Detail

    - #### MultipleCapabilityAgent

          public MultipleCapabilityAgent()

      Default constructor.

    - #### MultipleCapabilityAgent

          public MultipleCapabilityAgent(Capability capability)

      Creates a new BDIAgent with a single capability.
      Parameters:
        `capability` - the capability to be added to the agent.

    - #### MultipleCapabilityAgent

          public MultipleCapabilityAgent(Capability[] capabilities)

      Creates a new BDIAgent with a set of capabilities.
      Parameters:
        `capabilities` - the capabilities to be added to the agent.

    - #### MultipleCapabilityAgent

          public MultipleCapabilityAgent(java.util.Collection<Capability> capabilities)

      Creates a new BDIAgent with a set of capabilities.
      Parameters:
        `capabilities` - the capabilities to be added to the agent.

  - ### Method Detail

    - #### addCapability

          public final void addCapability(Capability capability)

      Description copied from class: `AbstractBDIAgent`
      Adds a capability to this agent.
      Parameters:
        `capability` - capability to be added.
      See Also:
        `AbstractBDIAgent.addCapability(bdi4jade.core.Capability)`

    - #### removeCapability

          public final boolean removeCapability(Capability capability)

      Description copied from class: `AbstractBDIAgent`
      Removes a capability from this agent.
      Parameters:
        `capability` - capability to be removed.
      Returns:
        true if the capability exists and was removed, false otherwise.
      See Also:
        `AbstractBDIAgent.removeCapability(bdi4jade.core.Capability)`