commit:     d3a8004768e26095748003e7932ea500b26eaa6a
Author:     Alex Legler <alex <AT> a3li <DOT> li>
AuthorDate: Mon Feb 23 00:05:20 2015 +0000
Commit:     Alex Legler <a3li <AT> gentoo <DOT> org>
CommitDate: Mon Feb 23 00:05:20 2015 +0000
URL:        http://sources.gentoo.org/gitweb/?p=proj/ag.git;a=commit;h=d3a80047

Implement --delete

TODO: Actually delete the message

---
 ag             | 8 +++++++-
 lib/storage.rb | 5 +++++
 2 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/ag b/ag
index 29ee0f2..dbb1584 100755
--- a/ag
+++ b/ag
@@ -142,7 +142,13 @@ def do_incremental
 end
 
 def do_delete
-  abort 'Come back later.'
+  id = Ag::Utils.resolve_id
+
+  begin
+    Ag::Storage.delete($options.name, id)
+  rescue => e
+    $stderr.puts "Cannot delete message: #{e}"
+  end
 end
 
 def do_reindex

diff --git a/lib/storage.rb b/lib/storage.rb
index b4a518e..f255633 100644
--- a/lib/storage.rb
+++ b/lib/storage.rb
@@ -220,6 +220,11 @@ module Ag::Storage
 
     result['hits']['total']
   end
+
+  def delete(list, id)
+    $es.delete(index: 'ml-' + list, type: 'message', id: id)
+  end
+
   def get(list, id)
     result = $es.search(
       index: 'ml-' + list,

Reply via email to