Interface TrackingEntryManager
- All Known Implementing Classes:
TrackingEntryManagerImpl
public interface TrackingEntryManager
For managing all things tracking related!
-
Method Summary
Modifier and TypeMethodDescriptionvoid
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.getActiveTrackingEntriesForUser
(@NotNull String username, int start, int limit) @Nullable TrackingEntry
getActiveTrackingEntryForPlan
(long id) Returns the currently open tracking entry for plan.@Nullable TrackingEntry
getTrackingEntryById
(int id) Find tracking entry by database id@Nullable TrackingEntry
getTrackingEntryByResultId
(long resultId) Find the tracking entry for a given chain result.@Nullable 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 idOfDeletedPlan) Remove any tracking information for a given planvoid
removeTrackingForResult
(long idOfDeletedResult) 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.
-
Method Details
-
getTrackingEntryById
Find tracking entry by database id- Parameters:
id
- of tracking entry to find- Returns:
- tracking entry with given id if found, otherwise null
-
getTrackingEntryByResultId
Find the tracking entry for a given chain result.- Parameters:
resultId
- of the result- Returns:
- tracking entry for the given result. null if none exists (e.g if result is green!)
-
getActiveTrackingEntryForPlan
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)- Parameters:
id
- of the plan- Returns:
- currently active tracking entry for the plan if there is one
-
addResult
Add a result to an existing tracking entry- Parameters:
entry
- to add result toresultId
- id of the result to addbuildNumber
-
-
addUser
void addUser(@NotNull @NotNull TrackingEntry entry, @NotNull @NotNull String user, @Nullable @Nullable String userWhoUpdated) Add a responsible user to an existing tracking entry- Parameters:
entry
- to add user toouser
- to adduserWhoUpdated
- user who updated the responsibility entry. Null if responsibility has been automatically assigned
-
removeUser
Remove a responsible user from existing tracking entry- Parameters:
entry
- to remove user fromuser
- to remove
-
removeAllUsers
Removes all existing responsible users from the existing tracking entry.- Parameters:
entry
- to remove users from
-
closeTrackingEntry
Close a tracking entry. Essentially you do this when it no longer needs attention. e.g. if the build is now green.- Parameters:
entry
- to close
-
createTrackingEntry
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- Parameters:
planId
- of planactive
- should the new entry be created as active entry- Returns:
- created tracking entry
-
getActiveTrackingEntriesForUser
@NotNull @NotNull Collection<TrackingEntry> getActiveTrackingEntriesForUser(@NotNull @NotNull String username) Find any active tracking entries for a given user. This represents the plans they currently are responsible for- Parameters:
username
- of the user- Returns:
- any active tracking entries for the given user.
-
getActiveTrackingEntriesForUser
List<TrackingEntry> getActiveTrackingEntriesForUser(@NotNull @NotNull String username, int start, int limit) -
removeTrackingForPlan
void removeTrackingForPlan(long idOfDeletedPlan) Remove any tracking information for a given plan- Parameters:
idOfDeletedPlan
- db id of the plan
-
removeTrackingForResult
void removeTrackingForResult(long idOfDeletedResult) Remove any tracking information for a given result- Parameters:
idOfDeletedResult
- db if of the result
-
removeTrackingEntry
Remove entire tracking entry.- Parameters:
trackingEntry
-
-
setActiveEntry
Sets tracing entry to active. Caller must ensure that there's no other open tracking entry.- Parameters:
trackingEntry
-
-
getTrackingEntryWithBuildNumber
Find the tracking entry with given build number.- Parameters:
planId
-buildNumber
-
-