Class Witness
java.lang.Object
org.episteme.social.sociology.Role
org.episteme.social.law.Witness
- All Implemented Interfaces:
Serializable, Commented, ComprehensiveIdentification, Identified<Identification>, Named, Temporal<TimeCoordinate>
Represents a witness in a lawsuit, who provides testimony based on what they observed.
A witness can be associated with specific parties (plaintiffs or defendants) they are assisting.
- Since:
- 1.0
- Author:
- Silvere Martin-Michiellot, Gemini AI (Google DeepMind)
- See Also:
-
Field Summary
Fields inherited from class Role
CLIENT, OBSERVER, SERVER, SUPERVISOR -
Constructor Summary
ConstructorsConstructorDescriptionWitness(Individual individual, LawSuitSituation lawSuitSituation) Creates a new Witness role for an individual. -
Method Summary
Modifier and TypeMethodDescriptionReturns the set of parties (Plaintiffs or Defendants) that this witness is testifying for.voidsetClients(Set<Role> parties) Sets the parties that this witness is testifying for.Methods inherited from class Role
equals, getId, getIndividual, getKind, getSituation, getTraits, getWhen, hashCode, setKind, setTimestamp, toStringMethods inherited from interface Commented
getComments, getTrait, setCommentsMethods inherited from interface ComprehensiveIdentification
getName, getTrait, setName, setTrait
-
Constructor Details
-
Witness
Creates a new Witness role for an individual.- Parameters:
individual- the individual taking on the rolelawSuitSituation- the lawsuit context
-
-
Method Details
-
getClients
-
setClients
Sets the parties that this witness is testifying for.- Parameters:
parties- a set of Roll objects representing the parties- Throws:
IllegalArgumentException- if parties is null or contains unauthorized roles
-