summaryrefslogtreecommitdiffstats
path: root/Bugzilla/Search
diff options
context:
space:
mode:
authorUpasana <upasana-me@users.noreply.github.com>2018-03-05 00:58:41 +0100
committerDylan William Hardison <dylan@hardison.net>2018-03-05 00:58:41 +0100
commited53ecda0546d6c639fa3d227a59ace4d57b81a5 (patch)
treee716548b5b3b6129396bb559ab2acb32fcfad09d /Bugzilla/Search
parent456dd5df6dfc799d72d446541ce5da147917db6e (diff)
downloadbugzilla-ed53ecda0546d6c639fa3d227a59ace4d57b81a5.tar.gz
bugzilla-ed53ecda0546d6c639fa3d227a59ace4d57b81a5.tar.xz
Bug 1273381 - Improve bugzilla object performance by using Class::XSAccessor for object accessors
Diffstat (limited to 'Bugzilla/Search')
-rw-r--r--Bugzilla/Search/Recent.pm11
-rw-r--r--Bugzilla/Search/Saved.pm7
2 files changed, 17 insertions, 1 deletions
diff --git a/Bugzilla/Search/Recent.pm b/Bugzilla/Search/Recent.pm
index a5d9e2417..f99cda84f 100644
--- a/Bugzilla/Search/Recent.pm
+++ b/Bugzilla/Search/Recent.pm
@@ -27,6 +27,8 @@ use constant LIST_ORDER => 'id DESC';
use constant AUDIT_CREATES => 0;
use constant AUDIT_UPDATES => 0;
use constant AUDIT_REMOVES => 0;
+use constant USER_ID_FIELD => 'user_id';
+use constant ID_FIELD => 'id';
use constant DB_COLUMNS => qw(
id
@@ -115,9 +117,16 @@ sub new_from_cookie {
# Simple Accessors #
####################
+use Class::XSAccessor {
+ accessors => {
+ user_id => __PACKAGE__->USER_ID_FIELD,
+ id => __PACKAGE__->ID_FIELD,
+ name => __PACKAGE__->NAME_FIELD,
+ },
+};
+
sub bug_list { return [split(',', $_[0]->{'bug_list'})]; }
sub list_order { return $_[0]->{'list_order'}; }
-sub user_id { return $_[0]->{'user_id'}; }
############
# Mutators #
diff --git a/Bugzilla/Search/Saved.pm b/Bugzilla/Search/Saved.pm
index 1511cd87b..d57dfa35b 100644
--- a/Bugzilla/Search/Saved.pm
+++ b/Bugzilla/Search/Saved.pm
@@ -287,6 +287,13 @@ sub shared_with_users {
# Simple Accessors #
####################
+use Class::XSAccessor {
+ accessors => {
+ id => __PACKAGE__->ID_FIELD,
+ name => __PACKAGE__->NAME_FIELD,
+ },
+};
+
sub url { return $_[0]->{'query'}; }
sub user {