Get rid of old ToJSON code path
[?]
Oct 24, 2013, 8:17 PM
4OG3W43VYXB3SMGGFGYAJVGN2QFBWP2DQ3AFV2ASW3C2SOCS647QCDependencies
- [2]
4VYSDP4IAdd eager fetching of relations and enable that for jobset->jobsetinputs - [3]
LZVO64YGMerge in the first bits of the API work - [4]
SYLVCTT6Start api cleanup with the User model - [5]
HKKVG34HToJSON is automatically called recursively
Change contents
- replacement in src/lib/Hydra/Component/ToJSON.pm at line 12
if ($self->can("json_hint")) {my $hint = $self->json_hint;my $hint = $self->json_hint; - replacement in src/lib/Hydra/Component/ToJSON.pm at line 14
my %json = ();my %json = (); - replacement in src/lib/Hydra/Component/ToJSON.pm at line 16
foreach my $column (@{$hint->{columns}}) {$json{$column} = $self->get_column($column);}foreach my $column (@{$hint->{columns}}) {$json{$column} = $self->get_column($column);} - replacement in src/lib/Hydra/Component/ToJSON.pm at line 20
foreach my $relname (keys %{$hint->{relations}}) {my $key = $hint->{relations}->{$relname};$json{$relname} = [ map { $_->$key } $self->$relname ];}foreach my $relname (keys %{$hint->{relations}}) {my $key = $hint->{relations}->{$relname};$json{$relname} = [ map { $_->$key } $self->$relname ];} - replacement in src/lib/Hydra/Component/ToJSON.pm at line 25
foreach my $relname (keys %{$hint->{eager_relations}}) {my $key = $hint->{eager_relations}->{$relname};$json{$relname} = { map { $_->$key => $_ } $self->$relname };}foreach my $relname (keys %{$hint->{eager_relations}}) {my $key = $hint->{eager_relations}->{$relname};$json{$relname} = { map { $_->$key => $_ } $self->$relname };} - replacement in src/lib/Hydra/Component/ToJSON.pm at line 30[2.210]→[3.409:1746](∅→∅),[3.409]→[3.409:1746](∅→∅),[3.1746]→[3.3464:3486](∅→∅),[3.3464]→[3.3464:3486](∅→∅),[3.169]→[3.3842:3884](∅→∅),[3.3842]→[3.3842:3884](∅→∅),[3.3884]→[3.1747:1769](∅→∅),[3.1769]→[3.3884:3890](∅→∅),[3.3884]→[3.3884:3890](∅→∅)
return \%json;} else {my $json = { $self->get_columns };my $rs = $self->result_source;my @relnames = $rs->relationships;RELLOOP: foreach my $relname (@relnames) {my $relinfo = $rs->relationship_info($relname);next unless defined $relinfo->{attrs}->{accessor};my $accessor = $relinfo->{attrs}->{accessor};if ($accessor eq "single" and exists $self->{_relationship_data}{$relname}) {$json->{$relname} = $self->$relname;} else {unless (defined $self->{related_resultsets}{$relname}) {my $cond = $relinfo->{cond};if (ref $cond eq 'HASH') {foreach my $k (keys %{$cond}) {my $v = $cond->{$k};$v =~ s/^self\.//;next RELLOOP unless $self->has_column_loaded($v);}} #!!! TODO: Handle ARRAY conditions}if (defined $self->related_resultset($relname)->get_cache) {if ($accessor eq "multi") {$json->{$relname} = [ $self->$relname ];} else {$json->{$relname} = $self->$relname;}}}}return $json;}return \%json;