Changeset 12373
- Timestamp:
- 2006-08-02T13:19:10+12:00 (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/gsdl/bin/script/lucene_query.pl
r12364 r12373 31 31 die "GSDLOS not set\n" unless defined $ENV{'GSDLOS'}; 32 32 unshift (@INC, "$ENV{'GSDLHOME'}/perllib"); 33 unshift (@INC, "$ENV{'GSDLHOME'}/perllib/cpan");34 unshift (@INC, "$ENV{'GSDLHOME'}/perllib/plugins");35 unshift (@INC, "$ENV{'GSDLHOME'}/perllib/classify");36 33 } 37 34 35 use strict; 38 36 use util; 39 37 40 sub full_indexdir41 {42 my ($col_name,$indexdir) = @_;43 38 44 my $full_indexdir 45 = &util::filename_cat($ENV{'GSDLHOME'},"collect",$col_name,"index", 46 $indexdir); 47 48 return $full_indexdir; 49 } 39 my $PROGNAME = $0; 40 $PROGNAME =~ s/^.*\/(.*)$/$1/; 50 41 51 42 … … 53 44 { 54 45 my $full_indexdir = shift(@_); 55 my $sort_field = 0; 56 my $dco = 0; 57 my $out_file = 0; 58 for ($i = 0; $i < scalar(@_); $i++) 59 { 60 if ($_[$i] eq "-sort") 61 { 62 $i++; 63 $sort_field = $_[$i]; 64 } 65 elsif ($_[$i] eq "-dco") 66 { 67 $i++; 68 $dco = $_[$i]; 69 } 70 else 71 { 72 $out_file = $_[$i]; 73 } 74 } 46 my $fuzzy = shift(@_); 47 my $sort_field = shift(@_); 48 my $dco = shift(@_); 49 my $out_file = shift(@_); 75 50 51 my $classpath = &util::filename_cat($ENV{'GSDLHOME'}, "bin", "java", "LuceneWrap.jar"); 52 my $java_lucene = "java -classpath \"$classpath\" org.nzdl.gsdl.LuceneWrap.GS2LuceneQuery"; 76 53 77 my $bin_java = &util::filename_cat($ENV{'GSDLHOME'},"bin","java"); 78 my $classpath = &util::filename_cat($bin_java,"LuceneWrap.jar"); 79 80 my $java_lucene = "java -classpath \"$classpath\" org.nzdl.gsdl.LuceneWrap.GS2LuceneQuery"; 81 my $java_cmd = "$java_lucene"; 82 54 my $cmd = "| " . $java_lucene . " \"" . $full_indexdir . "\""; 55 if (defined($fuzzy)) { 56 $cmd .= " -fuzzy"; 57 } 58 if (defined($sort_field)) { 59 $cmd .= " -sort " . $sort_field; 60 } 61 if (defined($dco)) { 62 $cmd .= " -dco " . $dco; 63 } 83 64 if (defined($out_file)) { 84 $out_file = " > \"".$out_file. "\""; 85 } else { 86 $out_file = ""; 65 $cmd .= " > \"" . $out_file . "\""; 87 66 } 88 89 my $cmd = "| " . $java_cmd . " \"" . $full_indexdir . "\""; 90 if ($sort_field) 91 { 92 $cmd .= " -sort " . $sort_field; 93 } 94 if ($dco) 95 { 96 $cmd .= " -dco " . $dco; 97 } 98 99 print STDERR $cmd . "\n"; 67 # print STDERR $cmd . "\n"; 100 68 101 69 if (!open (PIPEOUT, $cmd)) { 102 die "$PROGNAME - couldn't run $ java_cmd\n";70 die "$PROGNAME - couldn't run $cmd\n"; 103 71 } 104 72 } … … 113 81 my (@argv) = @_; 114 82 my $argc = scalar(@argv); 115 116 my $full_indexdir;117 my $query = undef;118 my $sort_field = undef;119 my $out_file = undef;120 83 if ($argc == 0) { 121 print STDERR "Usage: $PROGNAME full-index-dir [query] [ sort_field] [outfile]\n";84 print STDERR "Usage: $PROGNAME full-index-dir [query] [-fuzzy] [-sort sort_field] [-dco AND|OR] [-out out_file]\n"; 122 85 exit 1; 123 86 } 124 if ($argc >= 1) { 125 $full_indexdir = $argv[0]; 87 88 my $full_indexdir = shift(@argv); 89 my $query = undef; 90 my $fuzzy = undef; 91 my $sort_field = undef; 92 my $dco = undef; 93 my $out_file = undef; 94 for (my $i = 0; $i < scalar(@argv); $i++) 95 { 96 if ($argv[$i] eq "-fuzzy") { 97 $fuzzy = 1; 98 } 99 elsif ($argv[$i] eq "-sort") { 100 $i++; 101 $sort_field = $argv[$i]; 102 } 103 elsif ($argv[$i] eq "-dco") { 104 $i++; 105 $dco = $argv[$i]; 106 } 107 elsif ($argv[$i] eq "-out") { 108 $i++; 109 $out_file = $argv[$i]; 110 } 111 else { 112 $query = $argv[$i]; 113 } 126 114 } 127 if ($argc >= 2) { 128 $query = $argv[1]; 129 } 130 if ($argc >= 3) { 131 $sort_field = $argv[2]; 132 } 133 if ($argc >= 4) { 134 $out_file = $argv[3]; 135 } 136 open_java_lucene($full_indexdir, $sort_field, $out_file); 115 116 open_java_lucene($full_indexdir, $fuzzy, $sort_field, $dco, $out_file); 137 117 138 118 if (defined $query) { … … 148 128 } 149 129 150 $PROGNAME = $0;151 $PROGNAME =~ s/^.*\/(.*)$/$1/;152 153 130 &main(@ARGV); 154
Note:
See TracChangeset
for help on using the changeset viewer.