File tree Expand file tree Collapse file tree 1 file changed +19
-1
lines changed Expand file tree Collapse file tree 1 file changed +19
-1
lines changed Original file line number Diff line number Diff line change 3
3
namespace Illuminate \Queue ;
4
4
5
5
use Aws \Sqs \SqsClient ;
6
+ use Illuminate \Contracts \Queue \ClearableQueue ;
6
7
use Illuminate \Contracts \Queue \Queue as QueueContract ;
7
8
use Illuminate \Queue \Jobs \SqsJob ;
8
9
use Illuminate \Support \Str ;
9
10
10
- class SqsQueue extends Queue implements QueueContract
11
+ class SqsQueue extends Queue implements QueueContract, ClearableQueue
11
12
{
12
13
/**
13
14
* The Amazon SQS instance.
@@ -139,6 +140,23 @@ public function pop($queue = null)
139
140
}
140
141
}
141
142
143
+ /**
144
+ * Delete all of the jobs from the queue.
145
+ *
146
+ * @param string $queue
147
+ * @return int
148
+ */
149
+ public function clear ($ queue )
150
+ {
151
+ $ size = $ this ->size ($ queue );
152
+
153
+ $ this ->sqs ->purgeQueue ([
154
+ 'QueueUrl ' => $ this ->getQueue ($ queue ),
155
+ ]);
156
+
157
+ return $ size ;
158
+ }
159
+
142
160
/**
143
161
* Get the queue or return the default.
144
162
*
You can’t perform that action at this time.
0 commit comments