Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 24
On-line CPU(s) list: 0-23
Vendor ID: GenuineIntel
CPU family: 6
Model: 45
Model name: Intel(R) Xeon(R) CPU E5-2640 0 @ 2.50GHz
Stepping: 7
CPU MHz: 2499.711
BogoMIPS: 5000.02
Virtualization: VT-x
####
total used free shared buffers cached
Mem: 96455 65478 30976 0 4752 53994
-/+ buffers/cache: 6730 89724
Swap: 949 0 949
####
sub get_udx_media_relations {
my $SupplierID = shift;
my $SupplierPID = shift;
my $return;
my $query = qq|SELECT
ProviderID,
SourceID,
Folder,
Filename,
Extension,
Purpose,
Rank,
Priority,
Width,
Height
FROM CT_Media_Relations
WHERE SupplierID = '$SupplierID'
AND SupplierPID = '$SupplierPID'
AND isDeleted != 'Yes'
GROUP BY Filename, Extension
ORDER BY Priority DESC, Rank ASC|;
my $sth = $DB->table('CT_Media_Relations')->prepare ($query)
|| die $GX::SQL::error;
$sth->execute ();
my ($prev_priority);
while ($_ = $sth->fetchrow_hashref) {
if ($prev_priority->{$_->{Purpose}} > $_->{Priority}) {
next unless $_->{Purpose} eq 'PDB';
}
#get rid of mds when manufacturer is present (4 vs 5)
if ($_->{Purpose} eq 'AAB'
or $_->{Purpose} eq 'EBD'
or $_->{Purpose} eq 'PBS'
or $_->{Purpose} eq 'PRI') {
if ($prev_priority->{IMG} > $_->{Priority}) {
next;
}
else {
$prev_priority->{IMG} = $_->{Priority};
}
}
$prev_priority->{$_->{Purpose}} = $_->{Priority};
if ($_->{Purpose} eq 'PRI' && !$return->{Primary}->{path}) {
$return->{Primary} = $_;
$return->{Primary}->{path} = '/dx/' . $_->{ProviderID}
. "/" . $_->{SourceID};
$return->{Primary}->{filename} = $_->{Filename}
. '.' . $_->{Extension};
$return->{Primary}->{filename} = $_->{Folder} . '/'
. $return->{Primary}->{filename} if $_->{Folder};
}
my $media = $_;
$media->{path} = '/dx/' . $_->{ProviderID}
. "/" . $_->{SourceID};
$media->{filename} = $_->{Filename}
. '.' . $_->{Extension};
$media->{filename} = $_->{Folder}
. '/' . $media->{filename} if $_->{Folder};
push(@{$return->{$_->{Purpose}}}, $media);
}
push(@{$return->{IMG}}, @{$return->{EBD}})
if defined(@{$return->{EBD}});
if ( not defined(@{$return->{IMG}})
and defined (@{$return->{PBS}}) ) {
push(@{$return->{IMG}}, @{$return->{PBS}});
}
push(@{$return->{IMG}}, @{$return->{AAB}})
if defined(@{$return->{AAB}});
if (defined @{$return->{IMG}} &&
(!$return->{Primary} ||
$return->{Primary}->{Priority} <
$return->{IMG}[0]->{Priority})) {
$return->{Primary} = shift @{$return->{IMG}};
}
push(@{$return->{IMG}}, @{$return->{PAB}})
if defined(@{$return->{PAB}});
push(@{$return->{IMG}}, @{$return->{DET}})
if defined(@{$return->{DET}});
return $return;
}