]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - classes/Consumer.php
Merge branch 'testing' of git@gitorious.org:statusnet/mainline into 0.9.x
[quix0rs-gnu-social.git] / classes / Consumer.php
index ad64a8491be38f16378a6a9be918da1c6ae7d0ef..ce399f2783f7e965b59ecc85effe0078f696193c 100644 (file)
@@ -36,4 +36,34 @@ class Consumer extends Memcached_DataObject
         return $cons;
     }
 
+    /**
+     * Delete a Consumer and related tokens and nonces
+     *
+     * XXX: Should this happen in an OAuthDataStore instead?
+     *
+     */
+    function delete()
+    {
+        // XXX: Is there any reason NOT to do this kind of cleanup?
+
+        $this->_deleteTokens();
+        $this->_deleteNonces();
+
+        parent::delete();
+    }
+
+    function _deleteTokens()
+    {
+        $token = new Token();
+        $token->consumer_key = $this->consumer_key;
+        $token->delete();
+    }
+
+    function _deleteNonces()
+    {
+        $nonce = new Nonce();
+        $nonce->consumer_key = $this->consumer_key;
+        $nonce->delete();
+    }
+
 }