@@ -12,31 +12,6 @@ import (
1212
1313const splitChangesCollectionName = "SPLIT_CHANGES_COLLECTION"
1414
15- // SplitChangesItem represents an SplitChanges service response
16- type SplitChangesItem struct {
17- ChangeNumber int64 `json:"changeNumber"`
18- Name string `json:"name"`
19- Status string `json:"status"`
20- JSON string
21- }
22-
23- // SplitsChangesItems Sortable list
24- type SplitsChangesItems []SplitChangesItem
25-
26- func (slice SplitsChangesItems ) Len () int {
27- return len (slice )
28- }
29-
30- func (slice SplitsChangesItems ) Less (i , j int ) bool {
31- return slice [i ].ChangeNumber > slice [j ].ChangeNumber
32- }
33-
34- func (slice SplitsChangesItems ) Swap (i , j int ) {
35- slice [i ], slice [j ] = slice [j ], slice [i ]
36- }
37-
38- //----------------------------------------------------
39-
4015// SplitChangesCollection represents a collection of SplitChangesItem
4116type SplitChangesCollection struct {
4217 collection CollectionWrapper
@@ -54,15 +29,14 @@ func NewSplitChangesCollection(db DBWrapper, logger logging.LoggerInterface) *Sp
5429
5530// Update processes a set of feature flag changes items + a changeNumber bump atomically
5631func (c * SplitChangesCollection ) Update (toAdd []dtos.SplitDTO , toRemove []dtos.SplitDTO , cn int64 ) {
57-
58- items := make (SplitsChangesItems , 0 , len (toAdd )+ len (toRemove ))
32+ items := NewChangesItems (len (toAdd ) + len (toRemove ))
5933 process := func (split * dtos.SplitDTO ) {
6034 asJSON , err := json .Marshal (split )
6135 if err != nil {
6236 // This should not happen unless the DTO class is broken
6337 return
6438 }
65- items = append ( items , SplitChangesItem {
39+ items . Append ( ChangesItem {
6640 ChangeNumber : split .ChangeNumber ,
6741 Name : split .Name ,
6842 Status : split .Status ,
@@ -80,8 +54,8 @@ func (c *SplitChangesCollection) Update(toAdd []dtos.SplitDTO, toRemove []dtos.S
8054
8155 c .mutex .Lock ()
8256 defer c .mutex .Unlock ()
83- for idx := range items {
84- err := c .collection .SaveAs ([]byte (items [idx ].Name ), items [idx ])
57+ for idx := range items . items {
58+ err := c .collection .SaveAs ([]byte (items . items [idx ].Name ), items . items [idx ])
8559 if err != nil {
8660 // TODO(mredolatti): log
8761 }
@@ -102,7 +76,7 @@ func (c *SplitChangesCollection) FetchAll() ([]dtos.SplitDTO, error) {
10276
10377 var decodeBuffer bytes.Buffer
10478 for _ , v := range items {
105- var q SplitChangesItem
79+ var q ChangesItem
10680 // resets buffer data
10781 decodeBuffer .Reset ()
10882 decodeBuffer .Write (v )
0 commit comments