]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
Notice_inbox no longer used (and should've already been migrated for anyone using...
authorMikael Nordfeldth <mmn@hethane.se>
Sat, 9 Nov 2013 00:10:47 +0000 (01:10 +0100)
committerMikael Nordfeldth <mmn@hethane.se>
Sat, 9 Nov 2013 00:10:47 +0000 (01:10 +0100)
classes/Inbox.php
classes/Notice_inbox.php [deleted file]
db/core.php

index 630ed3ac41aa084791427ffba809c30af7279529..e584e9e82b6e7abefc65707001b55e91aa323fff 100644 (file)
  * @link      http://status.net/
  */
 
-require_once INSTALLDIR.'/classes/Memcached_DataObject.php';
-
-class Inbox extends Managed_DataObject
-{
+class Inbox extends Managed_DataObject {
     const BOXCAR = 128;
     const MAX_NOTICES = 1024;
 
@@ -58,55 +55,6 @@ class Inbox extends Managed_DataObject
         );
     }
 
-    /**
-     * Create a new inbox from existing Notice_inbox stuff
-     */
-    static function initialize($user_id)
-    {
-        $inbox = Inbox::fromNoticeInbox($user_id);
-
-        unset($inbox->fake);
-
-        $result = $inbox->insert();
-
-        if (!$result) {
-            common_log_db_error($inbox, 'INSERT', __FILE__);
-            return null;
-        }
-
-        return $inbox;
-    }
-
-    static function fromNoticeInbox($user_id)
-    {
-        $ids = array();
-
-        $ni = new Notice_inbox();
-
-        $ni->user_id = $user_id;
-        $ni->selectAdd();
-        $ni->selectAdd('notice_id');
-        $ni->orderBy('notice_id DESC');
-        $ni->limit(0, self::MAX_NOTICES);
-
-        if ($ni->find()) {
-            while($ni->fetch()) {
-                $ids[] = $ni->notice_id;
-            }
-        }
-
-        $ni->free();
-        unset($ni);
-
-        $inbox = new Inbox();
-
-        $inbox->user_id = $user_id;
-        $inbox->pack($ids);
-        $inbox->fake = true;
-
-        return $inbox;
-    }
-
     /**
      * Append the given notice to the given user's inbox.
      * Caching updates are managed for the inbox itself.
@@ -125,9 +73,7 @@ class Inbox extends Managed_DataObject
         // which is unsafe to use directly (in-process caching causes
         // memory leaks, which accumulate in queue processes).
         $inbox = new Inbox();
-        if (!$inbox->get('user_id', $user_id)) {
-            $inbox = Inbox::initialize($user_id);
-        }
+        $inbox->get('user_id', $user_id);
 
         if (empty($inbox)) {
             return false;
@@ -141,14 +87,14 @@ class Inbox extends Managed_DataObject
         }
 
         $result = $inbox->query(sprintf('UPDATE inbox '.
-                                        'set notice_ids = concat(cast(0x%08x as binary(4)), '.
-                                        'substr(notice_ids, 1, %d)) '.
+                                        'SET notice_ids = concat(cast(0x%08x as binary(4)), '.
+                                        'SUBSTR(notice_ids, 1, %d)) '.
                                         'WHERE user_id = %d',
                                         $notice_id,
                                         4 * (self::MAX_NOTICES - 1),
                                         $user_id));
 
-        if ($result) {
+        if ($result !== false) {
             self::blow('inbox:user_id:%d', $user_id);
         }
 
@@ -159,7 +105,7 @@ class Inbox extends Managed_DataObject
     {
         foreach ($user_ids as $user_id)
         {
-            Inbox::insertNotice($user_id, $notice_id);
+            self::insertNotice($user_id, $notice_id);
         }
     }
 
diff --git a/classes/Notice_inbox.php b/classes/Notice_inbox.php
deleted file mode 100644 (file)
index 2dc7595..0000000
+++ /dev/null
@@ -1,93 +0,0 @@
-<?php
-/*
- * StatusNet - the distributed open-source microblogging tool
- * Copyright (C) 2008-2010, StatusNet, Inc.
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-
-if (!defined('STATUSNET')) {
-    exit(1);
-}
-
-require_once INSTALLDIR.'/classes/Memcached_DataObject.php';
-
-// We keep 5 pages of inbox notices in memcache, +1 for pagination check
-
-define('INBOX_CACHE_WINDOW', 101);
-define('NOTICE_INBOX_GC_BOXCAR', 128);
-define('NOTICE_INBOX_GC_MAX', 12800);
-define('NOTICE_INBOX_LIMIT', 1000);
-define('NOTICE_INBOX_SOFT_LIMIT', 1000);
-
-class Notice_inbox extends Managed_DataObject
-{
-    ###START_AUTOCODE
-    /* the code below is auto generated do not remove the above tag */
-
-    public $__table = 'notice_inbox';                    // table name
-    public $user_id;                         // int(4)  primary_key not_null
-    public $notice_id;                       // int(4)  primary_key not_null
-    public $created;                         // datetime()   not_null
-    public $source;                          // tinyint(1)   default_1
-
-    /* the code above is auto generated do not remove the tag below */
-    ###END_AUTOCODE
-
-    public static function schemaDef()
-    {
-        return array(
-            'description' => 'Obsolete; old entries here are converted to packed entries in the inbox table since 0.9',
-            'fields' => array(
-                'user_id' => array('type' => 'int', 'not null' => true, 'description' => 'user receiving the message'),
-                'notice_id' => array('type' => 'int', 'not null' => true, 'description' => 'notice received'),
-                'created' => array('type' => 'datetime', 'not null' => true, 'description' => 'date the notice was created'),
-                'source' => array('type' => 'int', 'size' => 'tiny', 'default' => 1, 'description' => 'reason it is in the inbox, 1=subscription'),
-            ),
-            'primary key' => array('user_id', 'notice_id'),
-            'foreign keys' => array(
-                'notice_inbox_user_id_fkey' => array('user', array('user_id' => 'id')),
-                'notice_inbox_notice_id_fkey' => array('notice', array('notice_id' => 'id')),
-            ),
-            'indexes' => array(
-                'notice_inbox_notice_id_idx' => array('notice_id'),
-            ),
-        );
-    }
-
-    function stream($user_id, $offset, $limit, $since_id, $max_id, $own=false)
-    {
-        throw new Exception('Notice_inbox no longer used; use Inbox');
-    }
-
-    function _streamDirect($user_id, $own, $offset, $limit, $since_id, $max_id)
-    {
-        throw new Exception('Notice_inbox no longer used; use Inbox');
-    }
-
-    static function gc($user_id)
-    {
-        throw new Exception('Notice_inbox no longer used; use Inbox');
-    }
-
-    static function deleteMatching($user_id, $notices)
-    {
-        throw new Exception('Notice_inbox no longer used; use Inbox');
-    }
-
-    static function bulkInsert($notice_id, $created, $ni)
-    {
-        throw new Exception('Notice_inbox no longer used; use Inbox');
-    }
-}
index db0c9371faf9c168d44cada6e7add8d332d326b2..b820b3971ea6271068b60a1055e4036955eed5d2 100644 (file)
@@ -57,7 +57,6 @@ $classes = array('Schema_version',
                  'Foreign_subscription',
                  'Invitation',
                  'Message',
-                 // 'Notice_inbox',
                  'Profile_prefs',
                  'Profile_tag',
                  'Profile_list',