| 179 | } |
| 180 | |
| 181 | func (q *SQLiteQueue) UpdateQueue(tenantId int64, queueName string, properties models.QueueProperties) error { |
| 182 | q.Mu.Lock() |
| 183 | defer q.Mu.Unlock() |
| 184 | |
| 185 | // TODO: validate, trim queue names. ensure length and valid characters. |
| 186 | |
| 187 | queue, err := q.getQueue(tenantId, queueName) |
| 188 | if err != nil { |
| 189 | return err |
| 190 | } |
| 191 | |
| 192 | queue.RateLimit = properties.RateLimit |
| 193 | queue.MaxRetries = properties.MaxRetries |
| 194 | queue.VisibilityTimeout = properties.VisibilityTimeout |
| 195 | |
| 196 | // TODO: should we reset the rate limit table if the queue's rate limit changes? |
| 197 | |
| 198 | res := q.DBG.Save(queue) |
| 199 | |
| 200 | return res.Error |
| 201 | } |
| 202 | |
| 203 | func (q *SQLiteQueue) GetQueue(tenantId int64, queueName string) (models.QueueProperties, error) { |
| 204 | queue := models.QueueProperties{} |