summaryrefslogtreecommitdiffstats
path: root/Bugzilla/WebService/Product.pm
diff options
context:
space:
mode:
authorDavid Lawrence <dkl@mozilla.com>2014-04-28 16:19:54 +0200
committerDavid Lawrence <dkl@mozilla.com>2014-04-28 16:19:54 +0200
commit96ff287433595d8fed8791af1ed0f6e382b3f4a9 (patch)
tree241ae7bb6b46f188821fb9b9beb549e2a377394e /Bugzilla/WebService/Product.pm
parent40d80bae28d53965a0abc38ca465c8c986ad0aa3 (diff)
downloadbugzilla-96ff287433595d8fed8791af1ed0f6e382b3f4a9.tar.gz
bugzilla-96ff287433595d8fed8791af1ed0f6e382b3f4a9.tar.xz
Bug 1000913 - Backport upstream bug 540818 to bmo/4.2 to improve include_fields and exclude_fields to accept _default, _all and _custom keywords
r=glob
Diffstat (limited to 'Bugzilla/WebService/Product.pm')
-rw-r--r--Bugzilla/WebService/Product.pm24
1 files changed, 12 insertions, 12 deletions
diff --git a/Bugzilla/WebService/Product.pm b/Bugzilla/WebService/Product.pm
index ca22e6418..3be46bd6d 100644
--- a/Bugzilla/WebService/Product.pm
+++ b/Bugzilla/WebService/Product.pm
@@ -199,7 +199,7 @@ sub _product_to_hash {
sub _component_to_hash {
my ($self, $component, $params) = @_;
- my $field_data = {
+ my $field_data = filter $params, {
id =>
$self->type('int', $component->id),
name =>
@@ -214,8 +214,9 @@ sub _component_to_hash {
0,
is_active =>
$self->type('boolean', $component->is_active),
- };
- if (filter_wants($params, 'flag_types', 'components')) {
+ }, undef, 'components';
+
+ if (filter_wants($params, 'flag_types', undef, 'components')) {
$field_data->{flag_types} = {
bug =>
[map {
@@ -227,12 +228,13 @@ sub _component_to_hash {
} @{$component->flag_types->{'attachment'}}],
};
}
- return filter($params, $field_data, 'components');
+
+ return $field_data;
}
sub _flag_type_to_hash {
my ($self, $flag_type, $params) = @_;
- return {
+ return filter $params, {
id =>
$self->type('int', $flag_type->id),
name =>
@@ -255,12 +257,12 @@ sub _flag_type_to_hash {
$self->type('int', $flag_type->grant_group_id),
request_group =>
$self->type('int', $flag_type->request_group_id),
- };
+ }, undef, 'flag_types';
}
sub _version_to_hash {
my ($self, $version, $params) = @_;
- my $field_data = {
+ return filter $params, {
id =>
$self->type('int', $version->id),
name =>
@@ -269,13 +271,12 @@ sub _version_to_hash {
0,
is_active =>
$self->type('boolean', $version->is_active),
- };
- return filter($params, $field_data, 'versions');
+ }, undef, 'versions';
}
sub _milestone_to_hash {
my ($self, $milestone, $params) = @_;
- my $field_data = {
+ return filter $params, {
id =>
$self->type('int', $milestone->id),
name =>
@@ -284,8 +285,7 @@ sub _milestone_to_hash {
$self->type('int', $milestone->sortkey),
is_active =>
$self->type('boolean', $milestone->is_active),
- };
- return filter($params, $field_data, 'milestones');
+ }, undef, 'milestones';
}
1;