Class TeamRole
- java.lang.Object
-
- ch.colabproject.colab.api.model.team.TeamRole
-
- All Implemented Interfaces:
ColabEntity,WithDeletionStatus,WithPermission,WithTrackingData,WithWebsocketChannels,WithId,WithJsonDiscriminator,Serializable
@Entity public class TeamRole extends Object implements ColabEntity, WithWebsocketChannels
A role within the development team. A role is used to group several member sharing same skills or objective within the project.- Author:
- maxence
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description TeamRole()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(Object obj)List<Assignment>getAssignments()Get the list of assignmentsChannelsBuilders.ChannelsBuildergetChannelsBuilder()Get the channels this entity shall be sent through.DeletionStatusgetDeletionStatus()Get the deletion status :LonggetId()List<TeamMember>getMembers()Get membersStringgetName()Get role nameProjectgetProject()LonggetProjectId()get the project id.Conditions.ConditiongetReadCondition()Get the condition required to read this entityTrackinggetTrackingData()Get the tracking dataConditions.ConditiongetUpdateCondition()Get the condition required to update this entityinthashCode()voidmergeToUpdate(ColabEntity other)Update this object according to values provided by other.voidsetAssignments(List<Assignment> assignments)Set the list of assignmentsvoidsetDeletionStatus(DeletionStatus status)Set the deletion status :voidsetId(Long id)Set idvoidsetMembers(List<TeamMember> members)Set the list of membersvoidsetName(String name)Set the namevoidsetProject(Project project)voidsetProjectId(Long id)set the project id.voidsetTrackingData(Tracking trackingData)Set tracking dataStringtoString()-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface ch.colabproject.colab.api.model.ColabEntity
mergeToDuplicate
-
Methods inherited from interface ch.colabproject.colab.generator.model.interfaces.WithJsonDiscriminator
getJsonDiscriminator
-
Methods inherited from interface ch.colabproject.colab.api.model.WithPermission
getCreateCondition, getDeleteCondition
-
Methods inherited from interface ch.colabproject.colab.api.model.WithTrackingData
initErasureTrackingData, resetErasureTrackingData, touch
-
Methods inherited from interface ch.colabproject.colab.api.model.WithWebsocketChannels
getIndexEntryPayload
-
-
-
-
Method Detail
-
setId
public void setId(Long id)
Set id- Parameters:
id- id
-
getTrackingData
public Tracking getTrackingData()
Get the tracking data- Specified by:
getTrackingDatain interfaceWithTrackingData- Returns:
- tracking data
-
setTrackingData
public void setTrackingData(Tracking trackingData)
Set tracking data- Specified by:
setTrackingDatain interfaceWithTrackingData- Parameters:
trackingData- new tracking data
-
getDeletionStatus
public DeletionStatus getDeletionStatus()
Description copied from interface:WithDeletionStatusGet the deletion status :Is it in a bin or ready to be definitely deleted.
Null means active.
- Specified by:
getDeletionStatusin interfaceWithDeletionStatus- Returns:
- null or a deletion status
-
setDeletionStatus
public void setDeletionStatus(DeletionStatus status)
Description copied from interface:WithDeletionStatusSet the deletion status :Is it in a bin or ready to be definitely deleted.
Null means active.
- Specified by:
setDeletionStatusin interfaceWithDeletionStatus- Parameters:
status- null or a deletion status
-
getName
public String getName()
Get role name- Returns:
- the name
-
setName
public void setName(String name)
Set the name- Parameters:
name- new role name
-
getProject
public Project getProject()
- Returns:
- the project
-
setProject
public void setProject(Project project)
- Parameters:
project- the project
-
getProjectId
public Long getProjectId()
get the project id. To be sent to client- Returns:
- id of the project or null
-
setProjectId
public void setProjectId(Long id)
set the project id. For serialization only- Parameters:
id- the id of the project
-
getMembers
public List<TeamMember> getMembers()
Get members- Returns:
- members
-
setMembers
public void setMembers(List<TeamMember> members)
Set the list of members- Parameters:
members- list of members
-
getAssignments
public List<Assignment> getAssignments()
Get the list of assignments- Returns:
- assignments list
-
setAssignments
public void setAssignments(List<Assignment> assignments)
Set the list of assignments- Parameters:
assignments- new list of assignments
-
mergeToUpdate
public void mergeToUpdate(ColabEntity other) throws ColabMergeException
Description copied from interface:ColabEntityUpdate this object according to values provided by other.This is used when an object is prepared to be updated in database.
- Specified by:
mergeToUpdatein interfaceColabEntity- Parameters:
other- object to take new values from- Throws:
ColabMergeException- if merging is not possible
-
getChannelsBuilder
public ChannelsBuilders.ChannelsBuilder getChannelsBuilder()
Description copied from interface:WithWebsocketChannelsGet the channels this entity shall be sent through.- Specified by:
getChannelsBuilderin interfaceWithWebsocketChannels- Returns:
- list of channels
-
getReadCondition
public Conditions.Condition getReadCondition()
Description copied from interface:WithPermissionGet the condition required to read this entity- Specified by:
getReadConditionin interfaceWithPermission- Returns:
- the condition
-
getUpdateCondition
public Conditions.Condition getUpdateCondition()
Description copied from interface:WithPermissionGet the condition required to update this entity- Specified by:
getUpdateConditionin interfaceWithPermission- Returns:
- the condition
-
-