Class DefaultTeam

java.lang.Object
com.tnsai.coordination.groups.DefaultAgentGroup
com.tnsai.coordination.groups.team.DefaultTeam
All Implemented Interfaces:
com.tnsai.agents.groups.AgentGroup, Team

public class DefaultTeam extends DefaultAgentGroup implements Team
Default implementation of Team.

Provides mission-oriented group execution with:

  • Role-based member coordination
  • Multiple formation patterns
  • Mission progress tracking
  • Automatic result aggregation
  • Constructor Details

    • DefaultTeam

      public DefaultTeam(String id, String name, String description, String mission, Duration timeout, TeamFormation formation, com.tnsai.agents.groups.GroupPolicy policy, Map<String,TeamRole> initialRoles)
      Creates a new DefaultTeam.
      Parameters:
      id - team ID
      name - team name
      description - team description
      mission - mission description
      timeout - mission timeout
      formation - execution formation
      policy - group policy
      initialRoles - initial role assignments
  • Method Details

    • getMission

      public String getMission()
      Description copied from interface: Team
      Returns the mission description.
      Specified by:
      getMission in interface Team
      Returns:
      mission description
    • getTimeout

      public Duration getTimeout()
      Description copied from interface: Team
      Returns the mission timeout.
      Specified by:
      getTimeout in interface Team
      Returns:
      timeout duration
    • getFormation

      public TeamFormation getFormation()
      Description copied from interface: Team
      Returns the team formation pattern.
      Specified by:
      getFormation in interface Team
      Returns:
      formation
    • getMissionTracker

      public MissionTracker getMissionTracker()
      Description copied from interface: Team
      Returns the mission tracker for progress monitoring.
      Specified by:
      getMissionTracker in interface Team
      Returns:
      mission tracker
    • assignRole

      public void assignRole(String agentId, TeamRole role)
      Description copied from interface: Team
      Assigns a role to a team member.
      Specified by:
      assignRole in interface Team
      Parameters:
      agentId - agent ID
      role - role to assign
    • getRole

      public Optional<TeamRole> getRole(String agentId)
      Description copied from interface: Team
      Gets the role of a team member.
      Specified by:
      getRole in interface Team
      Parameters:
      agentId - agent ID
      Returns:
      role, or empty if not a member
    • getMembersWithRole

      public List<com.tnsai.agents.Agent> getMembersWithRole(TeamRole role)
      Description copied from interface: Team
      Gets all members with a specific role.
      Specified by:
      getMembersWithRole in interface Team
      Parameters:
      role - role to find
      Returns:
      members with that role
    • execute

      public TeamResult execute(String task)
      Description copied from interface: Team
      Executes a task using the team's formation pattern.
      Specified by:
      execute in interface Team
      Parameters:
      task - task to execute
      Returns:
      execution result
    • execute

      public TeamResult execute(String task, Map<String,Object> context)
      Description copied from interface: Team
      Executes a task with custom context.
      Specified by:
      execute in interface Team
      Parameters:
      task - task to execute
      context - additional context
      Returns:
      execution result
    • executeAsync

      public CompletableFuture<TeamResult> executeAsync(String task)
      Description copied from interface: Team
      Executes a task asynchronously.
      Specified by:
      executeAsync in interface Team
      Parameters:
      task - task to execute
      Returns:
      future with result
    • executeAsync

      public CompletableFuture<TeamResult> executeAsync(String task, Map<String,Object> context)
      Description copied from interface: Team
      Executes a task asynchronously with context.
      Specified by:
      executeAsync in interface Team
      Parameters:
      task - task to execute
      context - additional context
      Returns:
      future with result
    • disband

      public void disband()
      Description copied from interface: Team
      Disbands the team after mission completion. All members are removed and the team is dissolved.
      Specified by:
      disband in interface Team
    • isMissionComplete

      public boolean isMissionComplete()
      Description copied from interface: Team
      Checks if the team has completed its mission.
      Specified by:
      isMissionComplete in interface Team
      Returns:
      true if mission complete
    • isDisbanded

      public boolean isDisbanded()
      Description copied from interface: Team
      Checks if the team is disbanded.
      Specified by:
      isDisbanded in interface Team
      Returns:
      true if disbanded
    • toString

      public String toString()
      Overrides:
      toString in class DefaultAgentGroup