Package com.tnsai.coordination.groups
Class DefaultAgentGroup
java.lang.Object
com.tnsai.coordination.groups.DefaultAgentGroup
- All Implemented Interfaces:
com.tnsai.agents.groups.AgentGroup
- Direct Known Subclasses:
DefaultCoalition,DefaultHierarchy,DefaultHubSpoke,DefaultMatrixOrg,DefaultNetworkMesh,DefaultPipelineOrg,DefaultSwarm,DefaultTeam
Default implementation of AgentGroup.
Provides thread-safe group management with:
- Dynamic membership with policy enforcement
- Intra-group event bus for communication
- Scatter/gather coordination using existing ScatterGather
- Leader election with pluggable strategies
- Health monitoring via MembershipManager
-
Constructor Summary
ConstructorsConstructorDescriptionDefaultAgentGroup(String id, String name, String description, com.tnsai.agents.groups.GroupPolicy policy) Creates a new DefaultAgentGroup. -
Method Summary
Modifier and TypeMethodDescriptionvoidaddLifecycleListener(com.tnsai.agents.groups.GroupLifecycleListener listener) booleanaddMember(com.tnsai.agents.Agent agent) voidaddMembershipListener(com.tnsai.agents.groups.MembershipListener listener) Optional<com.tnsai.agents.Agent> assignTask(com.tnsai.agents.groups.GroupTask task) voidbroadcast(com.tnsai.communication.AgentMessage message) voiddissolve()Optional<com.tnsai.agents.Agent> Optional<com.tnsai.agents.Agent> electLeader(com.tnsai.agents.groups.LeaderElectionStrategy strategy) List<com.tnsai.agents.Agent> findMembers(Predicate<com.tnsai.agents.Agent> predicate) com.tnsai.agents.groups.GroupEventBusgetId()Optional<com.tnsai.agents.Agent> com.tnsai.agents.groups.GroupLifecycleOptional<com.tnsai.agents.Agent> List<com.tnsai.agents.Agent> com.tnsai.agents.groups.MembershipManagercom.tnsai.agents.groups.GroupMetricsgetName()com.tnsai.agents.groups.GroupPolicybooleanvoidnotifyTaskComplete(String agentId) Notifies that a task has been completed by an agent.voidnotifyTaskFailed(String agentId) Notifies that a task has failed for an agent.voidremoveLifecycleListener(com.tnsai.agents.groups.GroupLifecycleListener listener) booleanremoveMember(String agentId) voidremoveMembershipListener(com.tnsai.agents.groups.MembershipListener listener) scatterAsync(String prompt) voidsetPolicy(com.tnsai.agents.groups.GroupPolicy newPolicy) voidstart()voidstop()voidstopNow()toString()Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.tnsai.agents.groups.AgentGroup
broadcast, getMemberCount, isActive, isDissolved
-
Constructor Details
-
Method Details
-
getId
- Specified by:
getIdin interfacecom.tnsai.agents.groups.AgentGroup
-
getName
- Specified by:
getNamein interfacecom.tnsai.agents.groups.AgentGroup
-
getDescription
- Specified by:
getDescriptionin interfacecom.tnsai.agents.groups.AgentGroup
-
getPolicy
public com.tnsai.agents.groups.GroupPolicy getPolicy()- Specified by:
getPolicyin interfacecom.tnsai.agents.groups.AgentGroup
-
setPolicy
public void setPolicy(com.tnsai.agents.groups.GroupPolicy newPolicy) - Specified by:
setPolicyin interfacecom.tnsai.agents.groups.AgentGroup
-
getMembers
- Specified by:
getMembersin interfacecom.tnsai.agents.groups.AgentGroup
-
addMember
public boolean addMember(com.tnsai.agents.Agent agent) - Specified by:
addMemberin interfacecom.tnsai.agents.groups.AgentGroup
-
removeMember
- Specified by:
removeMemberin interfacecom.tnsai.agents.groups.AgentGroup
-
hasMember
- Specified by:
hasMemberin interfacecom.tnsai.agents.groups.AgentGroup
-
getMember
- Specified by:
getMemberin interfacecom.tnsai.agents.groups.AgentGroup
-
findMembers
- Specified by:
findMembersin interfacecom.tnsai.agents.groups.AgentGroup
-
getLifecycle
public com.tnsai.agents.groups.GroupLifecycle getLifecycle()- Specified by:
getLifecyclein interfacecom.tnsai.agents.groups.AgentGroup
-
start
public void start()- Specified by:
startin interfacecom.tnsai.agents.groups.AgentGroup
-
stop
public void stop()- Specified by:
stopin interfacecom.tnsai.agents.groups.AgentGroup
-
stopNow
public void stopNow()- Specified by:
stopNowin interfacecom.tnsai.agents.groups.AgentGroup
-
dissolve
public void dissolve()- Specified by:
dissolvein interfacecom.tnsai.agents.groups.AgentGroup
-
getEventBus
public com.tnsai.agents.groups.GroupEventBus getEventBus()- Specified by:
getEventBusin interfacecom.tnsai.agents.groups.AgentGroup
-
broadcast
public void broadcast(com.tnsai.communication.AgentMessage message) - Specified by:
broadcastin interfacecom.tnsai.agents.groups.AgentGroup
-
scatter
- Specified by:
scatterin interfacecom.tnsai.agents.groups.AgentGroup
-
scatter
- Specified by:
scatterin interfacecom.tnsai.agents.groups.AgentGroup
-
scatterAsync
- Specified by:
scatterAsyncin interfacecom.tnsai.agents.groups.AgentGroup
-
getMembershipManager
public com.tnsai.agents.groups.MembershipManager getMembershipManager()- Specified by:
getMembershipManagerin interfacecom.tnsai.agents.groups.AgentGroup
-
electLeader
- Specified by:
electLeaderin interfacecom.tnsai.agents.groups.AgentGroup
-
electLeader
public Optional<com.tnsai.agents.Agent> electLeader(com.tnsai.agents.groups.LeaderElectionStrategy strategy) - Specified by:
electLeaderin interfacecom.tnsai.agents.groups.AgentGroup
-
getLeader
- Specified by:
getLeaderin interfacecom.tnsai.agents.groups.AgentGroup
-
assignTask
- Specified by:
assignTaskin interfacecom.tnsai.agents.groups.AgentGroup
-
notifyTaskComplete
Notifies that a task has been completed by an agent. Decrements the agent's active task count.- Parameters:
agentId- the agent who completed the task
-
notifyTaskFailed
Notifies that a task has failed for an agent. Decrements the agent's active task count and increments failure counter.- Parameters:
agentId- the agent whose task failed
-
getMetrics
public com.tnsai.agents.groups.GroupMetrics getMetrics()- Specified by:
getMetricsin interfacecom.tnsai.agents.groups.AgentGroup
-
addLifecycleListener
public void addLifecycleListener(com.tnsai.agents.groups.GroupLifecycleListener listener) - Specified by:
addLifecycleListenerin interfacecom.tnsai.agents.groups.AgentGroup
-
removeLifecycleListener
public void removeLifecycleListener(com.tnsai.agents.groups.GroupLifecycleListener listener) - Specified by:
removeLifecycleListenerin interfacecom.tnsai.agents.groups.AgentGroup
-
addMembershipListener
public void addMembershipListener(com.tnsai.agents.groups.MembershipListener listener) - Specified by:
addMembershipListenerin interfacecom.tnsai.agents.groups.AgentGroup
-
removeMembershipListener
public void removeMembershipListener(com.tnsai.agents.groups.MembershipListener listener) - Specified by:
removeMembershipListenerin interfacecom.tnsai.agents.groups.AgentGroup
-
toString
-