Class TeamService


  • @Service
    public class TeamService
    extends java.lang.Object
    • Constructor Summary

      Constructors 
      Constructor Description
      TeamService​(com.xebialabs.xlrelease.repository.TeamRepository teamRepository, com.xebialabs.xlrelease.repository.ReleaseRepository releaseRepository, com.xebialabs.xlrelease.service.ArchivingService archivingService, com.xebialabs.xlrelease.repository.SecuredCis securedCis, XLReleaseEventBus eventBus, com.xebialabs.xlrelease.service.CiIdService ciIdService)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      com.xebialabs.xlrelease.domain.Team addTeam​(com.xebialabs.xlrelease.domain.Release release, com.xebialabs.xlrelease.domain.Team team)  
      com.xebialabs.xlrelease.domain.Team addTeam​(java.lang.String containerId, com.xebialabs.xlrelease.domain.Team team)  
      void decorateWithEffectiveTeams​(com.xebialabs.xlrelease.domain.Release release)  
      void decorateWithEffectiveTeams​(com.xebialabs.xlrelease.domain.Release release, com.xebialabs.xlrelease.api.internal.DecoratorsCache cache)  
      void decorateWithStoredTeams​(com.xebialabs.xlrelease.domain.Release release)  
      void deleteTeam​(com.xebialabs.xlrelease.domain.Release release, java.lang.String teamId)  
      void deleteTeam​(java.lang.String containerId, java.lang.String teamId)  
      void deleteTeamsFromPlatform​(java.lang.String containerId)  
      java.util.Optional<com.xebialabs.xlrelease.domain.Team> findTeamByName​(java.lang.String containerId, java.lang.String teamName)  
      java.util.stream.Stream<com.xebialabs.xlrelease.domain.Team> findTeamsByNames​(java.lang.String containerId, java.util.Collection<java.lang.String> teamNames)  
      java.util.stream.Stream<com.xebialabs.xlrelease.domain.Team> findTeamsByNames​(java.lang.String containerId, java.util.Collection<java.lang.String> teamNames, com.xebialabs.xlrelease.api.internal.DecoratorsCache cache)  
      void generateIdIfNecessary​(com.xebialabs.deployit.engine.api.security.Role role)  
      void generateIdIfNecessary​(java.lang.String containerId, com.xebialabs.xlrelease.domain.Team team)  
      java.util.List<com.xebialabs.xlrelease.domain.Team> getEffectiveTeams​(com.xebialabs.xlrelease.domain.folder.Folder folder)  
      java.util.List<com.xebialabs.xlrelease.domain.Team> getEffectiveTeams​(com.xebialabs.xlrelease.domain.Release release)  
      java.util.List<com.xebialabs.xlrelease.domain.Team> getEffectiveTeams​(com.xebialabs.xlrelease.domain.Release release, com.xebialabs.xlrelease.api.internal.DecoratorsCache cache)  
      java.util.List<com.xebialabs.xlrelease.domain.Team> getEffectiveTeams​(java.lang.String containerId)  
      java.util.List<com.xebialabs.xlrelease.domain.Team> getEffectiveTeams​(java.lang.String containerId, com.xebialabs.xlrelease.api.internal.DecoratorsCache cache)  
      java.util.List<com.xebialabs.xlrelease.domain.Team> getStoredTeams​(com.xebialabs.xlrelease.domain.Release release)  
      java.util.List<com.xebialabs.xlrelease.domain.Team> getStoredTeams​(java.lang.String containerId)  
      java.util.List<com.xebialabs.xlrelease.domain.Team> saveTeamsToPlatform​(com.xebialabs.xlrelease.domain.Release release)  
      java.util.List<com.xebialabs.xlrelease.domain.Team> saveTeamsToPlatform​(java.lang.String containerId, java.util.List<com.xebialabs.xlrelease.domain.Team> teams)  
      scala.Tuple2<java.util.List<com.xebialabs.xlrelease.domain.Team>,​java.util.List<com.xebialabs.xlrelease.domain.events.XLReleaseEvent>> saveTeamsToPlatformWithoutPublishing​(java.lang.String containerId, java.util.List<com.xebialabs.xlrelease.domain.Team> teams, boolean buildEvents)  
      com.xebialabs.xlrelease.domain.Team updateTeam​(java.lang.String teamId, com.xebialabs.xlrelease.domain.Team newTeam)  
      java.util.List<com.xebialabs.xlrelease.domain.Team> updateTeams​(java.lang.String releaseId, java.util.List<com.xebialabs.xlrelease.domain.Team> updatedTeams)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • GLOBAL_ROLES_ROOT

        public static final java.lang.String GLOBAL_ROLES_ROOT
      • CACHE_KEY_SECURED_CI_FOR_CONTAINER_ID

        public static final java.lang.String CACHE_KEY_SECURED_CI_FOR_CONTAINER_ID
        See Also:
        Constant Field Values
      • CACHE_KEY_TEAMS_FOR_SECURED_CI

        public static final java.lang.String CACHE_KEY_TEAMS_FOR_SECURED_CI
        See Also:
        Constant Field Values
    • Constructor Detail

      • TeamService

        @Autowired
        public TeamService​(com.xebialabs.xlrelease.repository.TeamRepository teamRepository,
                           com.xebialabs.xlrelease.repository.ReleaseRepository releaseRepository,
                           com.xebialabs.xlrelease.service.ArchivingService archivingService,
                           com.xebialabs.xlrelease.repository.SecuredCis securedCis,
                           XLReleaseEventBus eventBus,
                           com.xebialabs.xlrelease.service.CiIdService ciIdService)
    • Method Detail

      • addTeam

        @Timed
        public com.xebialabs.xlrelease.domain.Team addTeam​(com.xebialabs.xlrelease.domain.Release release,
                                                           com.xebialabs.xlrelease.domain.Team team)
      • addTeam

        @Timed
        public com.xebialabs.xlrelease.domain.Team addTeam​(java.lang.String containerId,
                                                           com.xebialabs.xlrelease.domain.Team team)
      • updateTeam

        @Timed
        public com.xebialabs.xlrelease.domain.Team updateTeam​(java.lang.String teamId,
                                                              com.xebialabs.xlrelease.domain.Team newTeam)
      • updateTeams

        @Timed
        public java.util.List<com.xebialabs.xlrelease.domain.Team> updateTeams​(java.lang.String releaseId,
                                                                               java.util.List<com.xebialabs.xlrelease.domain.Team> updatedTeams)
      • deleteTeam

        @Timed
        public void deleteTeam​(com.xebialabs.xlrelease.domain.Release release,
                               java.lang.String teamId)
      • deleteTeam

        @Timed
        public void deleteTeam​(java.lang.String containerId,
                               java.lang.String teamId)
      • saveTeamsToPlatform

        public java.util.List<com.xebialabs.xlrelease.domain.Team> saveTeamsToPlatform​(com.xebialabs.xlrelease.domain.Release release)
      • saveTeamsToPlatform

        public java.util.List<com.xebialabs.xlrelease.domain.Team> saveTeamsToPlatform​(java.lang.String containerId,
                                                                                       java.util.List<com.xebialabs.xlrelease.domain.Team> teams)
      • saveTeamsToPlatformWithoutPublishing

        public scala.Tuple2<java.util.List<com.xebialabs.xlrelease.domain.Team>,​java.util.List<com.xebialabs.xlrelease.domain.events.XLReleaseEvent>> saveTeamsToPlatformWithoutPublishing​(java.lang.String containerId,
                                                                                                                                                                                                 java.util.List<com.xebialabs.xlrelease.domain.Team> teams,
                                                                                                                                                                                                 boolean buildEvents)
      • deleteTeamsFromPlatform

        public void deleteTeamsFromPlatform​(java.lang.String containerId)
      • findTeamByName

        public java.util.Optional<com.xebialabs.xlrelease.domain.Team> findTeamByName​(java.lang.String containerId,
                                                                                      java.lang.String teamName)
      • findTeamsByNames

        public java.util.stream.Stream<com.xebialabs.xlrelease.domain.Team> findTeamsByNames​(java.lang.String containerId,
                                                                                             java.util.Collection<java.lang.String> teamNames,
                                                                                             com.xebialabs.xlrelease.api.internal.DecoratorsCache cache)
      • findTeamsByNames

        public java.util.stream.Stream<com.xebialabs.xlrelease.domain.Team> findTeamsByNames​(java.lang.String containerId,
                                                                                             java.util.Collection<java.lang.String> teamNames)
      • decorateWithEffectiveTeams

        public void decorateWithEffectiveTeams​(com.xebialabs.xlrelease.domain.Release release)
      • decorateWithEffectiveTeams

        public void decorateWithEffectiveTeams​(com.xebialabs.xlrelease.domain.Release release,
                                               com.xebialabs.xlrelease.api.internal.DecoratorsCache cache)
      • getEffectiveTeams

        public java.util.List<com.xebialabs.xlrelease.domain.Team> getEffectiveTeams​(com.xebialabs.xlrelease.domain.Release release)
      • getEffectiveTeams

        public java.util.List<com.xebialabs.xlrelease.domain.Team> getEffectiveTeams​(com.xebialabs.xlrelease.domain.Release release,
                                                                                     com.xebialabs.xlrelease.api.internal.DecoratorsCache cache)
      • getEffectiveTeams

        public java.util.List<com.xebialabs.xlrelease.domain.Team> getEffectiveTeams​(com.xebialabs.xlrelease.domain.folder.Folder folder)
      • getEffectiveTeams

        public java.util.List<com.xebialabs.xlrelease.domain.Team> getEffectiveTeams​(java.lang.String containerId)
      • getEffectiveTeams

        public java.util.List<com.xebialabs.xlrelease.domain.Team> getEffectiveTeams​(java.lang.String containerId,
                                                                                     com.xebialabs.xlrelease.api.internal.DecoratorsCache cache)
      • decorateWithStoredTeams

        public void decorateWithStoredTeams​(com.xebialabs.xlrelease.domain.Release release)
      • getStoredTeams

        public java.util.List<com.xebialabs.xlrelease.domain.Team> getStoredTeams​(com.xebialabs.xlrelease.domain.Release release)
      • getStoredTeams

        public java.util.List<com.xebialabs.xlrelease.domain.Team> getStoredTeams​(java.lang.String containerId)
      • generateIdIfNecessary

        public void generateIdIfNecessary​(java.lang.String containerId,
                                          com.xebialabs.xlrelease.domain.Team team)
      • generateIdIfNecessary

        public void generateIdIfNecessary​(com.xebialabs.deployit.engine.api.security.Role role)