Changeset 118
- Timestamp:
- 10/21/06 22:02:08 (7 years ago)
- Files:
-
- 2 modified
Legend:
- Unmodified
- Added
- Removed
-
shepherd
r116 r118 3 3 # "Shepherd" 4 4 5 my $version = '0.2. 19';5 my $version = '0.2.20'; 6 6 7 7 # A wrapper for various Aussie TV guide data grabbers … … 1530 1530 } 1531 1531 1532 # set_order is used to set the order of datafiles that we present to the reconciler. 1533 # typically we want at least one 'preferred' datasource in order to keep programme 1534 # titles consistent even if we are switching grabbers all the time. 1535 # for any grabbers not explicitly listed, we randomly order them while 1536 # taking into account the 'quality' of the data they offer 1537 1532 1538 sub set_order 1533 1539 { … … 1540 1546 } 1541 1547 1542 # and now set order 1548 # and now set order by whatever we have been instructed 1543 1549 my $order_num = 1; 1544 1550 if ($pref_order) { … … 1552 1558 1553 1559 # set order of any grabbers not specified in a random manner 1560 # set randomly while obeying data 'quality' field - so we always put higher quality 1561 # grabbers before lower-quality ones 1554 1562 foreach my $proggy (query_grabbers()) { 1555 1563 if ((!defined $components->{$proggy}->{order}) || ($components->{$proggy}->{order} == 0)) { 1556 $components->{$proggy}->{order} = $order_num+int(rand(1000)); 1564 my $dq = query_config($proggy, 'quality'); # quality is a value 1-3. higher=better 1565 $components->{$proggy}->{order} = $order_num+((4-$dq)*1000)+int(rand(1000)); 1557 1566 } 1558 1567 } … … 1590 1599 sub query_grabbers 1591 1600 { 1592 return query_component_type('grabber'); 1601 my ($conf, $val) = @_; 1602 return query_component_type('grabber',$conf,$val); 1593 1603 } 1594 1604 … … 1605 1615 sub query_component_type 1606 1616 { 1607 my $progtype = shift;1617 my ($progtype,$conf,$val) = @_; 1608 1618 1609 1619 my @ret = (); 1610 1620 foreach (keys %$components) 1611 1621 { 1612 push (@ret, $_) if ($components->{$_}->{type} eq $progtype); 1622 if ($components->{$_}->{type} eq $progtype) { 1623 if (defined $conf) { 1624 push (@ret, $_) if (query_config($_,$conf) eq $val); 1625 } else { 1626 push (@ret, $_); 1627 } 1628 } 1613 1629 } 1614 1630 return @ret; … … 1872 1888 "Were you using one of the following data sources previously?\n". 1873 1889 "If so, list it (or them) in order of preference.\n\n". 1874 "Choose from: "; 1875 print join(", ",query_grabbers()); 1890 "Choose from:\n"; 1891 printf " %s (100%% accurate or very close to it)\n", 1892 join(", ",query_grabbers('quality',3)); 1893 printf " %s (occasionally or sometimes inaccurate)\n", 1894 join(", ",query_grabbers('quality',2)); 1895 printf " %s (often inaccurate)\n", 1896 join(", ",query_grabbers('quality',1)); 1897 1876 1898 print "\nProvide a comma-seperated list (in preference order) or leave blank\n". 1877 1899 "if you have no order preference.\n"; -
status
r117 r118 1 shepherd:0.2. 19:shepherd1 shepherd:0.2.20:shepherd 2 2 grabber:rex:3.3.5 3 3 grabber:oztivo:0.8
