Class TrackingEntryManagerImpl
- java.lang.Object
-
- com.atlassian.bamboo.brokenbuildtracker.data.TrackingEntryManagerImpl
-
- All Implemented Interfaces:
TrackingEntryManager
@Component public class TrackingEntryManagerImpl extends Object implements TrackingEntryManager
-
-
Constructor Summary
Constructors Constructor Description TrackingEntryManagerImpl(TrackingEntryDao trackingEntryDao)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addResult(@NotNull TrackingEntry entry, long resultId, int buildNumber)
Add a result to an existing tracking entryvoid
addUser(@NotNull TrackingEntry entry, @NotNull String user, @Nullable String userWhoUpdated)
Add a responsible user to an existing tracking entryvoid
closeTrackingEntry(@NotNull TrackingEntry entry)
Close a tracking entry.@NotNull TrackingEntry
createTrackingEntry(long planId, boolean active)
Create a brand new tracking entry for this plan.@NotNull Collection<TrackingEntry>
getActiveTrackingEntriesForUser(@NotNull String username)
Find any active tracking entries for a given user.List<TrackingEntry>
getActiveTrackingEntriesForUser(@NotNull String username, int start, int limit)
TrackingEntry
getActiveTrackingEntryForPlan(long id)
Returns the currently open tracking entry for plan.TrackingEntry
getTrackingEntryById(int id)
Find tracking entry by database idTrackingEntry
getTrackingEntryByResultId(long resultId)
Find the tracking entry for a given chain result.TrackingEntry
getTrackingEntryWithBuildNumber(long planId, int buildNumber)
Find the tracking entry with given build number.void
removeAllUsers(@NotNull TrackingEntry entry)
Removes all existing responsible users from the existing tracking entry.void
removeTrackingEntry(TrackingEntry trackingEntry)
Remove entire tracking entry.void
removeTrackingForPlan(long idOfDeletedItem)
Remove any tracking information for a given planvoid
removeTrackingForResult(long idOfDeletedItem)
Remove any tracking information for a given resultvoid
removeUser(@NotNull TrackingEntry entry, @NotNull String user)
Remove a responsible user from existing tracking entryvoid
setActiveEntry(TrackingEntry trackingEntry)
Sets tracing entry to active.
-
-
-
Constructor Detail
-
TrackingEntryManagerImpl
@Autowired public TrackingEntryManagerImpl(TrackingEntryDao trackingEntryDao)
-
-
Method Detail
-
getTrackingEntryById
public TrackingEntry getTrackingEntryById(int id)
Description copied from interface:TrackingEntryManager
Find tracking entry by database id- Specified by:
getTrackingEntryById
in interfaceTrackingEntryManager
- Parameters:
id
- of tracking entry to find- Returns:
- tracking entry with given id if found, otherwise null
-
getTrackingEntryByResultId
public TrackingEntry getTrackingEntryByResultId(long resultId)
Description copied from interface:TrackingEntryManager
Find the tracking entry for a given chain result.- Specified by:
getTrackingEntryByResultId
in interfaceTrackingEntryManager
- Parameters:
resultId
- of the result- Returns:
- tracking entry for the given result. null if none exists (e.g if result is green!)
-
getActiveTrackingEntryForPlan
public TrackingEntry getActiveTrackingEntryForPlan(long id)
Description copied from interface:TrackingEntryManager
Returns the currently open tracking entry for plan. Only one tracking entry is allowed open per plan at any one time. If multiple are found. They are all closed and this method will return null. Will also return null if there is no currently active entry (i.e the plan is currently passing)- Specified by:
getActiveTrackingEntryForPlan
in interfaceTrackingEntryManager
- Parameters:
id
- of the plan- Returns:
- currently active tracking entry for the plan if there is one
-
getActiveTrackingEntriesForUser
@NotNull public @NotNull Collection<TrackingEntry> getActiveTrackingEntriesForUser(@NotNull @NotNull String username)
Description copied from interface:TrackingEntryManager
Find any active tracking entries for a given user. This represents the plans they currently are responsible for- Specified by:
getActiveTrackingEntriesForUser
in interfaceTrackingEntryManager
- Parameters:
username
- of the user- Returns:
- any active tracking entries for the given user.
-
getActiveTrackingEntriesForUser
public List<TrackingEntry> getActiveTrackingEntriesForUser(@NotNull @NotNull String username, int start, int limit)
- Specified by:
getActiveTrackingEntriesForUser
in interfaceTrackingEntryManager
-
addResult
public void addResult(@NotNull @NotNull TrackingEntry entry, long resultId, int buildNumber)
Description copied from interface:TrackingEntryManager
Add a result to an existing tracking entry- Specified by:
addResult
in interfaceTrackingEntryManager
- Parameters:
entry
- to add result toresultId
- id of the result to add
-
addUser
public void addUser(@NotNull @NotNull TrackingEntry entry, @NotNull @NotNull String user, @Nullable @Nullable String userWhoUpdated)
Description copied from interface:TrackingEntryManager
Add a responsible user to an existing tracking entry- Specified by:
addUser
in interfaceTrackingEntryManager
- Parameters:
entry
- to add user toouser
- to adduserWhoUpdated
- user who updated the responsibility entry. Null if responsibility has been automatically assigned
-
removeUser
public void removeUser(@NotNull @NotNull TrackingEntry entry, @NotNull @NotNull String user)
Description copied from interface:TrackingEntryManager
Remove a responsible user from existing tracking entry- Specified by:
removeUser
in interfaceTrackingEntryManager
- Parameters:
entry
- to remove user fromuser
- to remove
-
removeAllUsers
public void removeAllUsers(@NotNull @NotNull TrackingEntry entry)
Description copied from interface:TrackingEntryManager
Removes all existing responsible users from the existing tracking entry.- Specified by:
removeAllUsers
in interfaceTrackingEntryManager
- Parameters:
entry
- to remove users from
-
closeTrackingEntry
public void closeTrackingEntry(@NotNull @NotNull TrackingEntry entry)
Description copied from interface:TrackingEntryManager
Close a tracking entry. Essentially you do this when it no longer needs attention. e.g. if the build is now green.- Specified by:
closeTrackingEntry
in interfaceTrackingEntryManager
- Parameters:
entry
- to close
-
createTrackingEntry
@NotNull public @NotNull TrackingEntry createTrackingEntry(long planId, boolean active)
Description copied from interface:TrackingEntryManager
Create a brand new tracking entry for this plan. Will be active by default, ensure there are no other active tracking entries before creating a new one- Specified by:
createTrackingEntry
in interfaceTrackingEntryManager
- Parameters:
planId
- of planactive
- should the new entry be created as active entry- Returns:
- created tracking entry
-
removeTrackingForPlan
public void removeTrackingForPlan(long idOfDeletedItem)
Description copied from interface:TrackingEntryManager
Remove any tracking information for a given plan- Specified by:
removeTrackingForPlan
in interfaceTrackingEntryManager
- Parameters:
idOfDeletedItem
- db id of the plan
-
removeTrackingForResult
public void removeTrackingForResult(long idOfDeletedItem)
Description copied from interface:TrackingEntryManager
Remove any tracking information for a given result- Specified by:
removeTrackingForResult
in interfaceTrackingEntryManager
- Parameters:
idOfDeletedItem
- db if of the result
-
removeTrackingEntry
public void removeTrackingEntry(TrackingEntry trackingEntry)
Description copied from interface:TrackingEntryManager
Remove entire tracking entry.- Specified by:
removeTrackingEntry
in interfaceTrackingEntryManager
-
setActiveEntry
public void setActiveEntry(TrackingEntry trackingEntry)
Description copied from interface:TrackingEntryManager
Sets tracing entry to active. Caller must ensure that there's no other open tracking entry.- Specified by:
setActiveEntry
in interfaceTrackingEntryManager
-
getTrackingEntryWithBuildNumber
public TrackingEntry getTrackingEntryWithBuildNumber(long planId, int buildNumber)
Description copied from interface:TrackingEntryManager
Find the tracking entry with given build number.- Specified by:
getTrackingEntryWithBuildNumber
in interfaceTrackingEntryManager
-
-